diff --git a/test/PredisClientFeatures.php b/test/PredisClientFeatures.php index 4c254649..96c1f020 100644 --- a/test/PredisClientFeatures.php +++ b/test/PredisClientFeatures.php @@ -20,5 +20,47 @@ class RedisCommandTestSuite extends PHPUnit_Framework_TestCase { RC::resetConnection(); parent::onNotSuccessfulTest($exception); } + + + /* ConnectionParameters */ + + function testConnectionParametersDefaultValues() { + $params = new Predis\ConnectionParameters(); + + $this->assertEquals(Predis\ConnectionParameters::DEFAULT_HOST, $params->host); + $this->assertEquals(Predis\ConnectionParameters::DEFAULT_PORT, $params->port); + $this->assertEquals(Predis\ConnectionParameters::DEFAULT_TIMEOUT, $params->connection_timeout); + $this->assertNull($params->read_write_timeout); + $this->assertNull($params->database); + $this->assertNull($params->password); + $this->assertNull($params->alias); + } + + function testConnectionParametersSetupValuesArray() { + $paramsArray = RC::getConnectionParametersArgumentsArray(); + $params = new Predis\ConnectionParameters($paramsArray); + + $this->assertEquals($paramsArray['host'], $params->host); + $this->assertEquals($paramsArray['port'], $params->port); + $this->assertEquals($paramsArray['connection_timeout'], $params->connection_timeout); + $this->assertEquals($paramsArray['read_write_timeout'], $params->read_write_timeout); + $this->assertEquals($paramsArray['database'], $params->database); + $this->assertEquals($paramsArray['password'], $params->password); + $this->assertEquals($paramsArray['alias'], $params->alias); + } + + function testConnectionParametersSetupValuesString() { + $paramsArray = RC::getConnectionParametersArgumentsArray(); + $paramsString = RC::getConnectionParametersArgumentsString($paramsArray); + $params = new Predis\ConnectionParameters($paramsArray); + + $this->assertEquals($paramsArray['host'], $params->host); + $this->assertEquals($paramsArray['port'], $params->port); + $this->assertEquals($paramsArray['connection_timeout'], $params->connection_timeout); + $this->assertEquals($paramsArray['read_write_timeout'], $params->read_write_timeout); + $this->assertEquals($paramsArray['database'], $params->database); + $this->assertEquals($paramsArray['password'], $params->password); + $this->assertEquals($paramsArray['alias'], $params->alias); + } } ?> \ No newline at end of file diff --git a/test/PredisShared.php b/test/PredisShared.php index 2eb2bbe9..621d1f6c 100644 --- a/test/PredisShared.php +++ b/test/PredisShared.php @@ -138,5 +138,21 @@ class RC { } return $values; } + + public static function getConnectionParametersArgumentsArray() { + return array( + 'host' => '10.0.0.1', 'port' => 6380, 'connection_timeout' => 10, 'read_write_timeout' => 30, + 'database' => 5, 'password' => 'dbpassword', 'alias' => 'connection_alias' + ); + } + + public static function getConnectionParametersArgumentsString($arguments = null) { + // TODO: must be improved + $args = $arguments ?: RC::getConnectionParametersArgumentsArray(); + $paramsString = "redis://{$args['host']}:{$args['port']}/"; + $paramsString .= "?connection_timeout={$args['connection_timeout']}&read_write_timeout={$args['read_write_timeout']}"; + $paramsString .= "&database={$args['database']}&password={$args['password']}&alias={$args['alias']}"; + return $paramsString; + } } ?>