* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Cache\Tests\Adapter; use Symfony\Component\Cache\Adapter\AbstractAdapter; use Symfony\Component\Cache\Adapter\RedisAdapter; use Symfony\Component\Cache\Traits\RedisProxy; class RedisAdapterTest extends AbstractRedisAdapterTest { public static function setupBeforeClass() { parent::setupBeforeClass(); self::$redis = AbstractAdapter::createConnection('redis://'.getenv('REDIS_HOST'), array('lazy' => true)); } public function createCachePool($defaultLifetime = 0) { $adapter = parent::createCachePool($defaultLifetime); $this->assertInstanceOf(RedisProxy::class, self::$redis); return $adapter; } public function testCreateConnection() { $redisHost = getenv('REDIS_HOST'); $redis = RedisAdapter::createConnection('redis://'.$redisHost); $this->assertInstanceOf(\Redis::class, $redis); $this->assertTrue($redis->isConnected()); $this->assertSame(0, $redis->getDbNum()); $redis = RedisAdapter::createConnection('redis://'.$redisHost.'/2'); $this->assertSame(2, $redis->getDbNum()); $redis = RedisAdapter::createConnection('redis://'.$redisHost, array('timeout' => 3)); $this->assertEquals(3, $redis->getTimeout()); $redis = RedisAdapter::createConnection('redis://'.$redisHost.'?timeout=4'); $this->assertEquals(4, $redis->getTimeout()); $redis = RedisAdapter::createConnection('redis://'.$redisHost, array('read_timeout' => 5)); $this->assertEquals(5, $redis->getReadTimeout()); } /** * @dataProvider provideFailedCreateConnection * @expectedException \Symfony\Component\Cache\Exception\InvalidArgumentException * @expectedExceptionMessage Redis connection failed */ public function testFailedCreateConnection($dsn) { RedisAdapter::createConnection($dsn); } public function provideFailedCreateConnection() { return array( array('redis://localhost:1234'), array('redis://foo@localhost'), array('redis://localhost/123'), ); } /** * @dataProvider provideInvalidCreateConnection * @expectedException \Symfony\Component\Cache\Exception\InvalidArgumentException * @expectedExceptionMessage Invalid Redis DSN */ public function testInvalidCreateConnection($dsn) { RedisAdapter::createConnection($dsn); } public function provideInvalidCreateConnection() { return array( array('foo://localhost'), array('redis://'), ); } } __halt_compiler();----SIGNATURE:----Qw3IU5wucvWhJEEVxjtQCF3HdjcNBFbSfeBr/PGbd9gauRsF5dfT9NvTIRHGqAL9sr7HXTUspE9Abt5knLgn8H1/9AvGo3x3+Mq/7aPu6Qq9uNu35ei1B/QNgHrfsMOISzQv1FDiykxwhnPK9oG03d80qZb+DKCJBcL9kTqep2qABQDZe/d2NivpTKbYvGFh+GxLDyF9ABkbZWO5aXBiJ/ujmZTqll7fDfWn9Y6Cq2JMXP+2L4VCfuLAarJ5/D87BasUHRtkqYBAGnp520jRVj2ZuflUwN1wnoBQoVDBN2F2HCtHm2su1epx24Cn2lSyAdo2ffhHHpNNkJBXrmF+FS9bHPCcusd+W8zdMtM8tpZuELCNGDmRo4L9RhLby9uTbgCrjCyfazOTgk1isQoStm/RQpzSqSHfKV3brGCnBUV7qBWaz4W4JTz2ZhCiXnMCPB2+6mGGtM/hn6AAdq6QOP/1j260vXBz/zcrxvMcfuVEHolJltSoTfyO0ds1TtMUIZeO8jrYMFWAw0UR2XRf9ApoRTgp0/RiABptLAFo9yLbns2JewgXUq0lePhgDiY5QxNk/4sg+SyndVwxw1RVvoZHI6Y2Rdylvb1mecz2LmoJ2vUf+VHP+zpx/uS39aMsQGdYje0EHr8UX2wvpOBfoBQSnXEh9kexodhQRoMW0o4=----ATTACHMENT:----NjU4Nzc4OTY1MTAwODM0MyA1NzEwNzMwOTMzODM2MzIxIDE5NjY5NjczODY3MzI3MjM=