def test_1_flipped_bit(self): encoder = UnambiguousEncoder() flipped_message = self.flip_n_bits(1, self.test_message) message = encoder.decode("message", flipped_message) self.assertEqual(message, self.test_bytes)
def test_successfully_decoded(self): encoder = UnambiguousEncoder() message = encoder.decode("message", self.test_message) header = encoder.decode("header", self.test_header) self.assertEqual(message, self.test_bytes) self.assertEqual(header, self.test_bytes)
def test_successfully_encoded(self): # Create an encoder with the default codes encoder = UnambiguousEncoder() # Try encoding with the message code message = encoder.encode("message", self.test_bytes) header = encoder.encode("header", self.test_bytes) # These offsets are totes legit. Trust me. self.assertEqual(message, self.test_message) self.assertEqual(header, self.test_header)
def test_decode_weird_lengths(self): encoder = UnambiguousEncoder() message = encoder.decode("message", self.test_message + [54, 31]) test_bytes = self.test_bytes + [0b00000010] self.assertEqual(message, test_bytes)