def test_decode_data_from_get(self): colnames = ["varchar", "sint64", "double", "timestamp", "boolean", "varchar", "varchar"] coltypes = [varchar_a, sint64_a, double_a, timestamp_a, boolean_a, varchar_a, varchar_a] r0 = (bd0, 0, 1.2, unix_time_millis(ts0), True, [], str1, None) r1 = (bd1, 3, 4.5, unix_time_millis(ts1), False, [], str1, None) rows = [r0, r1] # { tsgetresp, { [colnames], [coltypes], [rows] } } data_t = colnames, coltypes, rows rsp_data = tsgetresp_a, data_t rsp_ttb = encode(rsp_data) tsobj = TsObject(None, self.table) c = TtbCodec() c.decode_timeseries(decode(rsp_ttb), tsobj) for i in range(0, 1): dr = rows[i] r = tsobj.rows[i] # encoded self.assertEqual(r[0], dr[0].encode('utf-8')) self.assertEqual(r[1], dr[1]) self.assertEqual(r[2], dr[2]) # NB *not* decoding timestamps # dt = datetime_from_unix_time_millis(dr[3]) self.assertEqual(r[3], dr[3]) if i == 0: self.assertEqual(r[4], True) else: self.assertEqual(r[4], False) self.assertEqual(r[5], None) self.assertEqual(r[6], dr[6].encode('ascii')) self.assertEqual(r[7], None)
def parse_msg(self, msg_code, data): if msg_code != MSG_CODE_TS_TTB_MSG: raise RiakError("TTB can't parse code: {}".format(msg_code)) if len(data) > 0: decoded = decode(data) self.maybe_err_ttb(decoded) return decoded else: return None
def test_decode_data_from_get(self): colnames = [ "varchar", "sint64", "double", "timestamp", "boolean", "varchar", "varchar", "blob" ] coltypes = [ varchar_a, sint64_a, double_a, timestamp_a, boolean_a, varchar_a, varchar_a ] r0 = (bd0, 0, 1.2, unix_time_millis(ts0), True, [], str1, None, None) r1 = (bd1, 3, 4.5, unix_time_millis(ts1), False, [], str1, None, blob0) rows = [r0, r1] # { tsgetresp, { [colnames], [coltypes], [rows] } } data_t = colnames, coltypes, rows rsp_data = tsgetresp_a, data_t rsp_ttb = encode(rsp_data) tsobj = TsObject(None, self.table) c = TtbCodec() c.decode_timeseries(decode(rsp_ttb), tsobj) for i in range(0, 1): dr = rows[i] r = tsobj.rows[i] # encoded self.assertEqual(r[0], dr[0].encode('utf-8')) self.assertEqual(r[1], dr[1]) self.assertEqual(r[2], dr[2]) # NB *not* decoding timestamps # dt = datetime_from_unix_time_millis(dr[3]) self.assertEqual(r[3], dr[3]) if i == 0: self.assertEqual(r[4], True) else: self.assertEqual(r[4], False) self.assertEqual(r[5], None) self.assertEqual(r[6], dr[6].encode('ascii')) self.assertEqual(r[7], None) self.assertEqual(r[8], dr[8])
def testDecode(self): for python, expected_type, erlang in erlang_term_binaries + erlang_term_decode: decoded = decode(erlang) self.assertEqual(python, decoded) self.assertTrue(isinstance(decoded, expected_type))
def testDecode(self): for python, expected_type, erlang in erlang_term_binaries + erlang_term_decode: decoded = decode(erlang) self.failUnlessEqual(python, decoded) self.failUnless(isinstance(decoded, expected_type))