def test_invalid_size(self):
     with self.assertRaisesRegex(ValueError, 'Invalid size'):
         format_address(3100, size=13)
 def test_14_bit_address(self):
     self.assertEqual(format_address(800, size=14),
                      bytes([0b00000011, 0b00100000]))
 def test_16_bit_address(self):
     self.assertEqual(format_address(3100, size=16),
                      bytes([0b00001100, 0b00011100]))
 def test_12_bit_address(self):
     self.assertEqual(format_address(160, size=12),
                      bytes([0b11000010, 0b01100000]))