getCommand(); $command->setArguments(['key', 'value']); $this->assertSame(['key', 'value'], $command->getArguments()); $command->setArguments(['key', 'value', false]); $this->assertSame(['key', 'value'], $command->getArguments()); } /** * @return void */ public function testParseResponse(): void { $command = $this->getCommand(); $command->setArguments(['key', 'value']); $this->assertEquals(['key' => 'value'], $command->parseResponse('{"key":"value"}')); $command->setArguments(['key', 'value', true]); $this->assertEquals('{"key":"value"}', $command->parseResponse('{"key":"value"}')); } /** * @group connected * @group relay-incompatible * @group relay-fixme * @return void * @requiresRedisVersion >= 8.0.0 */ public function testReturnsVectorSetElementAttributes(): void { $redis = $this->getClient(); $this->assertTrue( $redis->vadd( 'key', VectorUtility::toBlob([0.1, 0.2, 0.3, 0.4]), 'elem1', 10, false, null, null, ['key' => 'value', 'key1' => 'value1'] ) ); $this->assertEquals(['key' => 'value', 'key1' => 'value1'], $redis->vgetattr('key', 'elem1')); $this->assertEquals( '{"key":"value","key1":"value1"}', $redis->vgetattr('key', 'elem1', true) ); $this->assertNull($redis->vgetattr('wrong', 'elem1')); } /** * @group connected * @group relay-incompatible * @group relay-fixme * @return void * @requiresRedisVersion >= 8.0.0 */ public function testReturnsVectorSetElementAttributesResp3(): void { $redis = $this->getResp3Client(); $this->assertTrue( $redis->vadd( 'key', VectorUtility::toBlob([0.1, 0.2, 0.3, 0.4]), 'elem1', 10, false, null, null, ['key' => 'value', 'key1' => 'value1'] ) ); $this->assertEquals(['key' => 'value', 'key1' => 'value1'], $redis->vgetattr('key', 'elem1')); $this->assertEquals( '{"key":"value","key1":"value1"}', $redis->vgetattr('key', 'elem1', true) ); $this->assertNull($redis->vgetattr('wrong', 'elem1')); } }