getConnection(false); $db->open(); $this->assertTrue($db->ping()); $db->set('YIITESTKEY', 'YIITESTVALUE'); $db->close(); $db = $this->getConnection(false); $db->database = 0; $db->open(); $this->assertEquals('YIITESTVALUE', $db->get('YIITESTKEY')); $db->close(); $db = $this->getConnection(false); $db->database = 1; $db->open(); $this->assertNull($db->get('YIITESTKEY')); $db->close(); } public function keyValueData() { return [ [123], [-123], [0], ['test'], ["test\r\ntest"], [''], ]; } /** * @dataProvider keyValueData */ public function testStoreGet($data) { $db = $this->getConnection(true); $db->set('hi', $data); $this->assertEquals($data, $db->get('hi')); } /** * https://github.com/yiisoft/yii2/issues/4745 */ public function testReturnType() { $redis = $this->getConnection(); $redis->executeCommand('SET',['key1','val1']); $redis->executeCommand('HMSET',['hash1','hk3','hv3','hk4','hv4']); $redis->executeCommand('RPUSH',['newlist2','tgtgt','tgtt','44',11]); $redis->executeCommand('SADD',['newset2','segtggttval','sv1','sv2','sv3']); $redis->executeCommand('ZADD',['newz2',2,'ss',3,'pfpf']); $allKeys = $redis->executeCommand('KEYS',['*']); sort($allKeys); $this->assertEquals(['hash1', 'key1', 'newlist2', 'newset2', 'newz2'], $allKeys); $expected = [ 'hash1' => 'hash', 'key1' => 'string', 'newlist2' => 'list', 'newset2' => 'set', 'newz2' => 'zset', ]; foreach($allKeys as $key) { $this->assertEquals($expected[$key], $redis->executeCommand('TYPE',[$key])); } } }