示例#1
0
 def test_hgetall(self):
     h = {b'f1': b'one', b'f2': b'two'}
     Entry.register_response('HGETALL hash', h)
     self.assertEqual(self.rclient.hgetall('hash'), h)
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket._requests[0].data,
                      b'*2\r\n$7\r\nHGETALL\r\n$4\r\nhash\r\n')
示例#2
0
 def test_set(self):
     Entry.register_response('SET mocket "is awesome!"', OK)
     self.assertTrue(self.rclient.set('mocket', 'is awesome!'))
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(
         Mocket.last_request().data,
         b'*3\r\n$3\r\nSET\r\n$6\r\nmocket\r\n$11\r\nis awesome!\r\n')
示例#3
0
 def test_hgetall(self):
     h = {b"f1": b"one", b"f2": b"two"}
     Entry.register_response("HGETALL hash", h)
     self.assertEqual(self.rclient.hgetall("hash"), h)
     self.assertEqual(len(Mocket.request_list()), 1)
     self.assertEqual(Mocket.request_list()[0].data,
                      b"*2\r\n$7\r\nHGETALL\r\n$4\r\nhash\r\n")
示例#4
0
 def test_set(self):
     Entry.register_response('SET mocket "is awesome!"', OK)
     self.assertTrue(self.rclient.set("mocket", "is awesome!"))
     self.assertEqual(len(Mocket.request_list()), 1)
     self.assertEqual(
         Mocket.last_request().data,
         b"*3\r\n$3\r\nSET\r\n$6\r\nmocket\r\n$11\r\nis awesome!\r\n",
     )
示例#5
0
 def test_register(self):
     Entry.register(('localhost', 6379), 'SET snowman "is ☃!"', OK)
     self.assertEqual(Mocket._entries[('localhost', 6379)][0].command, [
         b'*3', b'$3', b'SET', b'$7', b'snowman', b'$7', b'is \xe2\x98\x83!'
     ])
     self.assertEqual(
         Mocket._entries[('localhost', 6379)][0].responses[0].data,
         b'+OK\r\n')
示例#6
0
 def test_lrange(self):
     l = [b'one', b'two', b'three']
     Entry.register_response('LRANGE list 0 -1', l)
     self.assertEqual(self.rclient.lrange('list', 0, -1), l)
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(
         Mocket.last_request().data,
         b'*4\r\n$6\r\nLRANGE\r\n$4\r\nlist\r\n$1\r\n0\r\n$2\r\n-1\r\n')
示例#7
0
 def test_lrange(self):
     l = [b"one", b"two", b"three"]
     Entry.register_response("LRANGE list 0 -1", l)
     self.assertEqual(self.rclient.lrange("list", 0, -1), l)
     self.assertEqual(len(Mocket.request_list()), 1)
     self.assertEqual(
         Mocket.last_request().data,
         b"*4\r\n$6\r\nLRANGE\r\n$4\r\nlist\r\n$1\r\n0\r\n$2\r\n-1\r\n",
     )
示例#8
0
 def test_incr(self):
     Entry.register_responses('INCRBY counter 1', (1, 2, 3))
     self.assertEqual(self.rclient.incr('counter'), 1)
     self.assertEqual(self.rclient.incr('counter'), 2)
     self.assertEqual(self.rclient.incr('counter'), 3)
     self.assertEqual(len(Mocket._requests), 3)
     self.assertEqual(Mocket._requests[0].data, b'*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n')
     self.assertEqual(Mocket._requests[1].data, b'*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n')
     self.assertEqual(Mocket._requests[2].data, b'*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n')
示例#9
0
 def test_incr(self):
     Entry.register_responses('INCRBY counter 1', (1, 2, 3))
     self.assertEqual(self.rclient.incr('counter'), 1)
     self.assertEqual(self.rclient.incr('counter'), 2)
     self.assertEqual(self.rclient.incr('counter'), 3)
     self.assertEqual(len(Mocket._requests), 3)
     self.assertEqual(Mocket._requests[0].data, b'*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n')
     self.assertEqual(Mocket._requests[1].data, b'*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n')
     self.assertEqual(Mocket._requests[2].data, b'*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n')
示例#10
0
 def test_err(self):
     Entry.register_response(
         'INCRBY counter one',
         ERROR('ERR value is not an integer or out of range'))
     self.assertRaises(redis.ResponseError, self.rclient.incr, 'counter',
                       'one')
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(
         Mocket.last_request().data,
         b'*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$3\r\none\r\n')
示例#11
0
 def test_register(self):
     Entry.register(('localhost', 6379), 'SET snowman "is ☃!"', OK)
     self.assertEqual(
         Mocket._entries[('localhost', 6379)][0].command,
         [b'*3', b'$3', b'SET', b'$7', b'snowman', b'$7', b'is \xe2\x98\x83!']
     )
     self.assertEqual(
         Mocket._entries[('localhost', 6379)][0].responses[0].data,
         b'+OK\r\n'
     )
示例#12
0
 def test_err(self):
     Entry.register_response(
         "INCRBY counter one",
         ERROR("ERR value is not an integer or out of range"))
     self.assertRaises(redis.ResponseError, self.rclient.incr, "counter",
                       "one")
     self.assertEqual(len(Mocket.request_list()), 1)
     self.assertEqual(
         Mocket.last_request().data,
         b"*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$3\r\none\r\n",
     )
示例#13
0
 def test_register(self):
     Entry.register(("localhost", 6379), 'SET snowman "is ☃!"', OK)
     self.assertEqual(
         Mocket._entries[("localhost", 6379)][0].command,
         [
             b"*3", b"$3", b"SET", b"$7", b"snowman", b"$7",
             b"is \xe2\x98\x83!"
         ],
     )
     self.assertEqual(
         Mocket._entries[("localhost", 6379)][0].responses[0].data,
         b"+OK\r\n")
示例#14
0
 def test_init_byte(self):
     entry = Entry(addr=None,
                   command=b'SET snowman "is \xe2\x98\x83!"',
                   responses=[])
     self.assertEqual(entry.command, [
         b'*3', b'$3', b'SET', b'$7', b'snowman', b'$7', b'is \xe2\x98\x83!'
     ])
示例#15
0
 def test_incr(self):
     Entry.register_responses("INCRBY counter 1", (1, 2, 3))
     self.assertEqual(self.rclient.incr("counter"), 1)
     self.assertEqual(self.rclient.incr("counter"), 2)
     self.assertEqual(self.rclient.incr("counter"), 3)
     self.assertEqual(len(Mocket.request_list()), 3)
     self.assertEqual(
         Mocket.request_list()[0].data,
         b"*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n",
     )
     self.assertEqual(
         Mocket.request_list()[1].data,
         b"*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n",
     )
     self.assertEqual(
         Mocket.request_list()[2].data,
         b"*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$1\r\n1\r\n",
     )
示例#16
0
 def test_init_text(self):
     entry = Entry(addr=None, command='SET snowman "is ☃!"', responses=[])
     self.assertEqual(
         entry.command,
         [
             b"*3", b"$3", b"SET", b"$7", b"snowman", b"$7",
             b"is \xe2\x98\x83!"
         ],
     )
示例#17
0
 def test_get_unicode(self):
     Entry.register_response('GET snowman', '\u2603')
     self.assertEqual(self.rclient.get('snowman'), b'\xe2\x98\x83')
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket.last_request().data, b'*2\r\n$3\r\nGET\r\n$7\r\nsnowman\r\n')
示例#18
0
 def test_lrange(self):
     l = [b'one', b'two', b'three']
     Entry.register_response('LRANGE list 0 -1', l)
     self.assertEqual(self.rclient.lrange('list', 0, -1), l)
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket.last_request().data, b'*4\r\n$6\r\nLRANGE\r\n$4\r\nlist\r\n$1\r\n0\r\n$2\r\n-1\r\n')
示例#19
0
 def test_hgetall(self):
     h = {b'f1': b'one', b'f2': b'two'}
     Entry.register_response('HGETALL hash', h)
     self.assertEqual(self.rclient.hgetall('hash'), h)
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket._requests[0].data, b'*2\r\n$7\r\nHGETALL\r\n$4\r\nhash\r\n')
示例#20
0
 def test_get(self):
     Entry.register_response('GET mocket', 'is awesome!')
     self.assertEqual(self.rclient.get('mocket'), b'is awesome!')
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket._requests[0].data, b'*2\r\n$3\r\nGET\r\n$6\r\nmocket\r\n')
示例#21
0
 def test_set(self):
     Entry.register_response('SET mocket "is awesome!"', OK)
     self.assertTrue(self.rclient.set('mocket', 'is awesome!'))
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket.last_request().data, b'*3\r\n$3\r\nSET\r\n$6\r\nmocket\r\n$11\r\nis awesome!\r\n')
示例#22
0
 def test_get_utf8(self):
     Entry.register_response("GET snowman", "☃")
     self.assertEqual(self.rclient.get("snowman"), b"\xe2\x98\x83")
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket._requests[0].data,
                      b"*2\r\n$3\r\nGET\r\n$7\r\nsnowman\r\n")
示例#23
0
 def test_register_response(self):
     Entry.register_response(command='SET snowman "is ☃!"', response='')
示例#24
0
 def test_get_unicode(self):
     Entry.register_response("GET snowman", "\u2603")
     self.assertEqual(self.rclient.get("snowman"), b"\xe2\x98\x83")
     self.assertEqual(len(Mocket.request_list()), 1)
     self.assertEqual(Mocket.last_request().data,
                      b"*2\r\n$3\r\nGET\r\n$7\r\nsnowman\r\n")
示例#25
0
 def test_get_unicode(self):
     Entry.register_response('GET snowman', '\u2603')
     self.assertEqual(self.rclient.get('snowman'), b'\xe2\x98\x83')
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket.last_request().data, b'*2\r\n$3\r\nGET\r\n$7\r\nsnowman\r\n')
示例#26
0
 def test_can_handle(self):
     entry = Entry(addr=None, command='SET snowman "is ☃!"', responses=[])
     self.assertTrue(entry.can_handle(b'*3\r\n$3\r\nSET\r\n$7\r\nsnowman\r\n$7\r\nis \xe2\x98\x83!'))
示例#27
0
 def test_get(self):
     Entry.register_response('GET mocket', 'is awesome!')
     self.assertEqual(self.rclient.get('mocket'), b'is awesome!')
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket._requests[0].data, b'*2\r\n$3\r\nGET\r\n$6\r\nmocket\r\n')
示例#28
0
 def test_get(self):
     Entry.register_response("GET mocket", "is awesome!")
     self.assertEqual(self.rclient.get("mocket"), b"is awesome!")
     self.assertEqual(len(Mocket.request_list()), 1)
     self.assertEqual(Mocket.request_list()[0].data,
                      b"*2\r\n$3\r\nGET\r\n$6\r\nmocket\r\n")
示例#29
0
 def mocketize_setup(self):
     Entry.register_response('FLUSHDB', OK)
     self.rclient.flushdb()
     self.assertEqual(len(Mocket._requests), 1)
     Mocket.reset()
示例#30
0
 def test_err(self):
     Entry.register_response('INCRBY counter one', ERROR('ERR value is not an integer or out of range'))
     self.assertRaises(redis.ResponseError, self.rclient.incr, 'counter', 'one')
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket.last_request().data, b'*3\r\n$6\r\nINCRBY\r\n$7\r\ncounter\r\n$3\r\none\r\n')
示例#31
0
 def mocketize_setup(self):
     Entry.register_response('FLUSHDB', OK)
     self.rclient.flushdb()
     self.assertEqual(len(Mocket._requests), 1)
     Mocket.reset()
示例#32
0
 def test_can_handle(self):
     entry = Entry(addr=None, command='SET snowman "is ☃!"', responses=[])
     self.assertTrue(entry.can_handle(b'*3\r\n$3\r\nSET\r\n$7\r\nsnowman\r\n$7\r\nis \xe2\x98\x83!'))
示例#33
0
 def test_raise_exception(self):
     Entry.register_response("INCRBY counter one",
                             socket.error("Mocket rulez!"))
     self.assertRaises(redis.exceptions.ConnectionError, self.rclient.incr,
                       "counter", "one")
示例#34
0
 def test_register_response(self):
     Entry.register_response(command='SET snowman "is ☃!"', response='')
示例#35
0
 def test_get_utf8(self):
     Entry.register_response('GET snowman', '☃')
     self.assertEqual(self.rclient.get('snowman'), '☃')
     self.assertEqual(len(Mocket._requests), 1)
     self.assertEqual(Mocket._requests[0].data, '*2\r\n$3\r\nGET\r\n$7\r\nsnowman\r\n')