Beispiel #1
0
 def test_problem_5_4(self):
     # See the note in the problem implementation for the reasoning behind using lists of string characters.
     self.assertEqual(p_5_4.get_prev(['0', '1', '0', '0']), ['0', '0', '1', '0'])
     self.assertEqual(p_5_4.get_next(['0', '1', '0', '0']), ['1', '0', '0', '0'])
     self.assertEqual(p_5_4.get_prev(['0', '1', '0', '1']), ['0', '0', '1', '1'])
     self.assertEqual(p_5_4.get_next(['0', '1', '0', '1']), ['0', '1', '1', '0'])
     self.assertEqual(p_5_4.get_prev(['1', '1', '1', '1']), None)
     self.assertEqual(p_5_4.get_next(['1', '1', '1', '1']), ['1', '0', '1', '1', '1'])
     self.assertEqual(p_5_4.get_prev(['0', '0', '0', '0']), None)
     self.assertEqual(p_5_4.get_next(['0', '0', '0', '0']), None)
     self.assertEqual(p_5_4.get_prev(['1', '0', '0', '1']), ['0', '1', '0', '1'])
 def test_problem_5_4(self):
     self.assertEqual(p_5_4.get_prev(0b0001), -1)
     self.assertEqual(p_5_4.get_next(0b0001), 0b0010)
     self.assertEqual(p_5_4.get_prev(0b0100), 0b0010)
     self.assertEqual(p_5_4.get_next(0b0100), 0b1000)
     self.assertEqual(p_5_4.get_prev(0b0101), 0b0011)
     self.assertEqual(p_5_4.get_next(0b0101), 0b0110)
     self.assertEqual(p_5_4.get_prev(0b1111), -1)
     self.assertEqual(p_5_4.get_next(0b1111), 0b10111)
     self.assertEqual(p_5_4.get_prev(0b0000), -1)
     self.assertEqual(p_5_4.get_next(0b0000), -1)
     self.assertEqual(p_5_4.get_prev(np.uint32(0xffffffff)), -1)
     self.assertEqual(p_5_4.get_next(np.uint32(0xffffffff)), -1)
     self.assertEqual(p_5_4.get_prev(0b1001), 0b0110)
     self.assertEqual(p_5_4.get_next(0b1001), 0b1010)
     self.assertEqual(p_5_4.get_prev(0b0110), 0b0101)
     self.assertEqual(p_5_4.get_next(0b0110), 0b1001)
     self.assertEqual(p_5_4.get_prev(0b10011110000011), 0b10011101110000)
     self.assertEqual(p_5_4.get_next(0b11011001111100), 0b11011010001111)