/** * @group disconnected */ public function testConnectPicksRandomConnection() { $connect1 = false; $connect2 = false; $connection1 = $this->getMockConnection('tcp://127.0.0.1:6379'); $connection1->expects($this->any())->method('connect')->will($this->returnCallback(function () use(&$connect1) { $connect1 = true; })); $connection1->expects($this->any())->method('isConnected')->will($this->returnCallback(function () use(&$connect1) { return $connect1; })); $connection2 = $this->getMockConnection('tcp://127.0.0.1:6380'); $connection2->expects($this->any())->method('connect')->will($this->returnCallback(function () use(&$connect2) { $connect2 = true; })); $connection2->expects($this->any())->method('isConnected')->will($this->returnCallback(function () use(&$connect2) { return $connect2; })); $cluster = new RedisCluster(); $cluster->add($connection1); $cluster->add($connection2); $cluster->connect(); $this->assertTrue($cluster->isConnected()); if ($connect1) { $this->assertTrue($connect1); $this->assertFalse($connect2); } else { $this->assertFalse($connect1); $this->assertTrue($connect2); } }
/** * @group disconnected */ public function testConnectForcesAllConnectionsToConnect() { $connection1 = $this->getMockConnection('tcp://127.0.0.1:6379'); $connection1->expects($this->once())->method('connect'); $connection2 = $this->getMockConnection('tcp://127.0.0.1:6380'); $connection2->expects($this->once())->method('connect'); $cluster = new RedisCluster(); $cluster->add($connection1); $cluster->add($connection2); $cluster->connect(); }