def test_hcr_header_loads_invalid_signature(self): hcrh = hcr_header.HcrHeader() try: hcrh.loads(32*' ') self.fail('parsing of empty string succeeded?') except InvalidHcrHeaderError: pass
def test_hcr_header_dumps_empty(self): hcrh = hcr_header.HcrHeader() self.assertEquals(len(hcrh.dumps()), 32) expected_data = hex_to_bindata( "48435266 0000 0000 00000000 00000000"+\ "00000000 000000000000000000000000") self.assertEquals(hcrh.dumps(), expected_data)
def test_hcr_header_loads_some_data(self): hcrh = hcr_header.HcrHeader() header_data = hex_to_bindata( "48435266 0500 0600 0A000000 12000000"+\ "20000000 000000000000000000000000") hcrh.loads(header_data) self.assertEquals(hcrh.version, 5) self.assertEquals(hcrh.flags, 6) self.assertEquals(hcrh.nrecords, 10) self.assertEquals(hcrh.lsd_offset, 18) self.assertEquals(hcrh.lsd_size, 32)
def test_hcr_header_dumps_some_data(self): hcrh = hcr_header.HcrHeader() hcrh.version = 5 hcrh.flags = 6 hcrh.nrecords = 10 hcrh.lsd_offset = 18 hcrh.lsd_size = 32 expected_data = hex_to_bindata( "48435266 0500 0600 0A000000 12000000"+\ "20000000 000000000000000000000000") self.assertEquals(hcrh.dumps(), expected_data)
def test_hcr_header_loads_zero(self): hcrh = hcr_header.HcrHeader() header_data = hex_to_bindata( "48435266 0000 0000 00000000 00000000"+\ "00000000 000000000000000000000000") hcrh.loads(header_data) self.assertEquals(hcrh.version, 0) self.assertEquals(hcrh.flags, 0) self.assertEquals(hcrh.nrecords, 0) self.assertEquals(hcrh.lsd_offset, 0) self.assertEquals(hcrh.lsd_size, 0)