def test_encode_aligned_uint(self): uint = UInt(1, 'foo', '0xff', align='4') encoded = uint.encode({}, {}, None) self.assertEquals(encoded.int, 255) self.assertEquals(encoded.hex, '0xff') self.assertEquals(len(encoded), 4) self.assertEquals(encoded._raw, to_bin('0xff00 0000'))
def test_uint_static_field(self): field = UInt(5, "field", 8) self.assertTrue(field.length.static) self.assertEquals(field.name, "field") self.assertEquals(field.default_value, '8') self.assertEquals(field.type, 'uint') self.assertEquals(field.encode({}, {}, None).hex, '0x0000000008')
def test_little_endian_uint_encode(self): template = UInt(2, 'field', 1) field = template.encode({}, {}, None, little_endian=True) self.assertEquals(field._raw, to_bin('0x0100')) self.assertEquals(field.int, 1) self.assertEquals(field.bytes, to_bin('0x0001'))