def test_protocol2(self): res = bytes(format_args_in_redis_protocol("SET", "key", "foobar")) self.assertEqual(res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$6\r\nfoobar\r\n") res = bytes(format_args_in_redis_protocol("SET", "key", six.u("foobar"))) self.assertEqual(res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$6\r\nfoobar\r\n")
def test_protocol2(self): res = bytes(format_args_in_redis_protocol("SET", "key", "foobar")) self.assertEqual( res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$6\r\nfoobar\r\n") res = bytes( format_args_in_redis_protocol("SET", "key", six.u("foobar"))) self.assertEqual( res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$6\r\nfoobar\r\n")
def test_bigwrite(self): c = Connection(self._read_cb, self._close_cb) yield c.connect() data1 = format_args_in_redis_protocol("SET", "___foobar", BIG_VALUE) c.write(data1) data2 = format_args_in_redis_protocol("GET", "___foobar") c.write(data2) reply1 = yield self.reply_queue.get() reply2 = yield self.reply_queue.get() self.assertEquals(reply1, b"OK") self.assertEquals(reply2, BIG_VALUE) c.disconnect()
def test_bigwrite(self): c = Connection(self._read_cb, self._close_cb) yield c.connect() data1 = format_args_in_redis_protocol("SET", "___foobar", BIG_VALUE) c.write(data1) data2 = format_args_in_redis_protocol("GET", "___foobar") c.write(data2) reply1 = yield self.reply_queue.get() reply2 = yield self.reply_queue.get() self.assertEqual(reply1, b"OK") self.assertEqual(reply2, BIG_VALUE) c.disconnect()
def test_protocol6(self): wb = WriteBuffer() wb.append(b"foobar") res = bytes(format_args_in_redis_protocol("SET", "key", wb)) self.assertEqual( res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$6\r\nfoobar\r\n")
def _simple_call_with_multiple_replies(self, replies, *args, **kwargs): original_callback = kwargs['callback'] msg = format_args_in_redis_protocol(*args) callback = functools.partial(self._reply_aggregator, original_callback, replies) for _ in range(0, replies): self.__callback_queue.append(callback) self.__connection.write(msg)
def _pipelined_call(self, pipeline, callback): buf = WriteBuffer() replies = len(pipeline.pipelined_args) cb = functools.partial(self._reply_aggregator, callback, replies) for args in pipeline.pipelined_args: self.__callback_queue.append(cb) tmp_buf = format_args_in_redis_protocol(*args) buf.append(tmp_buf) self.__connection.write(buf)
def _test_basic_write(self): c = Connection(self._read_cb, self._close_cb, connect_timeout=2) yield c.connect() data1 = format_args_in_redis_protocol("PING") data2 = b"*1\r\b$4\r\nQUIT\r\n" c.write(data1) c.write(data2) reply1 = yield self.reply_queue.get() self.assertEqual(reply1, b"PONG") reply2 = yield self.reply_queue.get() self.assertEqual(reply2, b"OK") c.disconnect()
def _test_basic_write(self): c = Connection(self._read_cb, self._close_cb, connect_timeout=2) yield c.connect() data1 = format_args_in_redis_protocol("PING") data2 = b"*1\r\b$4\r\nQUIT\r\n" c.write(data1) c.write(data2) reply1 = yield self.reply_queue.get() self.assertEquals(reply1, b"PONG") reply2 = yield self.reply_queue.get() self.assertEquals(reply2, b"OK") c.disconnect()
def test_write_on_closed_socket(self): c = Connection(self._read_cb, self._close_cb, connect_timeout=2) yield c.connect() data1 = format_args_in_redis_protocol("PING") data2 = b"*1\r\b$4\r\nQUIT\r\n" c.write(data1) c.write(data2) reply1 = yield self.reply_queue.get() self.assertEqual(reply1, b"PONG") reply2 = yield self.reply_queue.get() self.assertEqual(reply2, b"OK") c.write(data1) # Wait a short moment while the server closes the socket yield tornado.gen.sleep(.0001) c._handle_write() c._handle_read() self.assertFalse(c.is_connected()) c.disconnect()
def test_write_on_closed_socket(self): c = Connection(self._read_cb, self._close_cb, connect_timeout=2) yield c.connect() data1 = format_args_in_redis_protocol("PING") data2 = b"*1\r\b$4\r\nQUIT\r\n" c.write(data1) c.write(data2) reply1 = yield self.reply_queue.get() self.assertEquals(reply1, b"PONG") reply2 = yield self.reply_queue.get() self.assertEquals(reply2, b"OK") c.write(data1) # Wait a short moment while the server closes the socket yield tornado.gen.sleep(.0001) c._handle_write() c._handle_read() self.assertFalse(c.is_connected()) c.disconnect()
def test_protocol3(self): res = bytes(format_args_in_redis_protocol("SET", "key", six.u("\xe9"))) self.assertEqual(res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$2\r\n\xc3\xa9\r\n")
def _simple_call(self, *args, **kwargs): callback = kwargs['callback'] msg = format_args_in_redis_protocol(*args) self.__callback_queue.append(callback) self.__connection.write(msg)
def test_protocol5(self): res = bytes(format_args_in_redis_protocol("SET", "key", 1)) self.assertEqual(res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$1\r\n1\r\n")
def test_protocol3(self): res = bytes(format_args_in_redis_protocol("SET", "key", six.u("\xe9"))) self.assertEqual( res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$2\r\n\xc3\xa9\r\n")
def test_protocol1(self): res = bytes(format_args_in_redis_protocol("PING")) self.assertEqual(res, b"*1\r\n$4\r\nPING\r\n")
def test_protocol6(self): wb = WriteBuffer() wb.append(b"foobar") res = bytes(format_args_in_redis_protocol("SET", "key", wb)) self.assertEqual(res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$6\r\nfoobar\r\n")
def test_protocol4(self): res = bytes(format_args_in_redis_protocol("SET", "key", b"\000")) self.assertEquals( res, b"*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n" b"$1\r\n\000\r\n")