コード例 #1
0
    def test_bucket_num_to_bytearray(self):
        # valid
        ba = BaseDiscretizer.bucket_num_to_bytearray(0)
        self.assertIsInstance(ba, bytearray)
        self.assertEqual(len(ba), 1)
        self.assertEqual(ba[0], 0)

        ba = BaseDiscretizer.bucket_num_to_bytearray(3)
        self.assertEqual(ba, bytearray([3]))

        ba = BaseDiscretizer.bucket_num_to_bytearray(255)
        self.assertEqual(ba, bytearray([255]))

        ba = BaseDiscretizer.bucket_num_to_bytearray(256)
        self.assertEqual(ba, bytearray([1, 0]))

        ba = BaseDiscretizer.bucket_num_to_bytearray(257)
        self.assertEqual(ba, bytearray([1, 1]))

        ba = BaseDiscretizer.bucket_num_to_bytearray(65535)
        self.assertEqual(ba, bytearray([255, 255]))

        ba = BaseDiscretizer.bucket_num_to_bytearray(65536)
        self.assertEqual(ba, bytearray([1, 0, 0]))

        # not an integer
        self.assertRaises(DiscretizerException,
                          BaseDiscretizer.bucket_num_to_bits,
                          'abcd')

        # bad bucket number
        self.assertRaises(DiscretizerException,
                          BaseDiscretizer.bucket_num_to_bits,
                          -1)