def test01(self): sequence = '0' * 64 compress = hw5.compress(sequence) self.assertEqual(compress, '1111100000111110000000010') uncompress = hw5.uncompress(compress) self.assertEqual(uncompress, sequence) self.assertAlmostEqual(hw5.compression(sequence), 0.390625, 4)
def test06(self): sequence = '1' * hw5.MAX_RUN_LENGTH + '0' * hw5.MAX_RUN_LENGTH + '1' * ( 64 - 2 * hw5.MAX_RUN_LENGTH) compress = hw5.compress(sequence) self.assertEqual(compress, '00000111111111100010') uncompress = hw5.uncompress(compress) self.assertEqual(uncompress, sequence) self.assertAlmostEqual(hw5.compression(sequence), 0.3125, 4)
def test05(self): sequence = '0' * (hw5.MAX_RUN_LENGTH + 1) + '1' * ( hw5.MAX_RUN_LENGTH + 1) + '0' * (64 - 2 * hw5.MAX_RUN_LENGTH - 2) compress = hw5.compress(sequence) self.assertEqual(compress, '111110000000001111110000000001') uncompress = hw5.uncompress(compress) self.assertEqual(uncompress, sequence) self.assertAlmostEqual(hw5.compression(sequence), 0.46875, 4)
def test03(self): sequence = '10' * 32 compress = hw5.compress(sequence) self.assertEqual( compress, '0000000001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001000010000100001' ) uncompress = hw5.uncompress(compress) self.assertEqual(uncompress, sequence) self.assertAlmostEqual(hw5.compression(sequence), 5.078125, 4)