Beispiel #1
0
    def test_error_string_with_custom_class(self):
        self.reader = hiredis.Reader(replyError=RuntimeError)
        self.reader.feed(b'-error\r\n')
        error = self.reply()

        self.assertEqual(RuntimeError, type(error))
        self.assertEqual(('error', ), error.args)
Beispiel #2
0
    def test_protocol_error_with_custom_callable(self):
        class CustomException(Exception):
            pass

        self.reader = hiredis.Reader(
            protocolError=lambda e: CustomException(e))
        self.reader.feed(b'x')
        self.assertRaises(CustomException, self.reply)
Beispiel #3
0
    def test_error_string_with_custom_callable(self):
        class CustomException(Exception):
            pass

        self.reader = hiredis.Reader(replyError=lambda e: CustomException(e))
        self.reader.feed(b'-error\r\n')
        error = self.reply()

        self.assertEqual(CustomException, type(error))
        self.assertEqual(('error', ), error.args)
Beispiel #4
0
 def test_protocol_error_with_custom_class(self):
     self.reader = hiredis.Reader(protocolError=RuntimeError)
     self.reader.feed(b'x')
     self.assertRaises(RuntimeError, self.reply)
Beispiel #5
0
 def test_bulk_string_with_invalid_encoding(self):
     self.reader = hiredis.Reader(encoding='unknown')
     self.reader.feed(b'$5\r\nhello\r\n')
     self.assertRaises(LookupError, self.reply)
Beispiel #6
0
 def test_bulk_string_with_other_encoding(self):
     snowman = b'\xe2\x98\x83'
     self.reader = hiredis.Reader(encoding='utf-32')
     self.reader.feed(b'$3\r\n' + snowman + b'\r\n')
     self.assertEqual(snowman, self.reply())
Beispiel #7
0
 def setUp(self):
     self.reader = hiredis.Reader()
 def test_bulk_string_with_encoding(self):
     snowman = '\xe2\x98\x83'
     self.reader = hiredis.Reader(encoding=u'utf-8')
     self.reader.feed('$3\r\n' + snowman + '\r\n')
     self.assertEqual(snowman.decode(u'utf-8'), self.reply())