示例#1
0
 def test_a_single_block_of_parallel_platform_moves_correctly_after_hitting_the_wall(self):
     platform = ParallelPlatformer(positions=[(1, 1)], directions=[(-1, 0)])
     platform.move_blocks()
     self.assertEqual(1, len(platform.get_block_positions()))
     self.assertTrue(platform.block_position_exists((2, 1)))
     self.assertListEqual([(2, 1)], platform.get_block_positions())
     self.assertListEqual([(1, 0)], platform.get_block_directions())
示例#2
0
 def test_a_single_block_moves_one_iteration_successfully(self):
     platform = ParallelPlatformer(positions=[(2, 1)], directions=[(-1, 0)])
     platform.move_blocks()
     self.assertEqual(1, len(platform.get_block_positions()))
     self.assertTrue(platform.block_position_exists((1, 1)))
     self.assertListEqual([(1, 1)], platform.get_block_positions())
     self.assertListEqual([(-1, 0)], platform.get_block_directions())
示例#3
0
 def test_two_blocks_move_two_iterations_successfully(self):
     platform = ParallelPlatformer(positions=[(3, 1), (3, 2)], directions=[(-1, 0), (1, 0)])
     for i in range(2):
         platform.move_blocks()
     self.assertEqual(2, len(platform.get_block_positions()))
     self.assertTrue(platform.block_position_exists((1, 1)))
     self.assertTrue(platform.block_position_exists((5, 2)))
     self.assertListEqual([(1, 1), (5, 2)], platform.get_block_positions())
     self.assertListEqual([(-1, 0), (1, 0)], platform.get_block_directions())
示例#4
0
 def test_10_blocks_of_bigger_size_move_30_iterations_successfully(self):
     platform = ParallelPlatformer(number_blocks=2, block_size=5, plane=Plane(z=[0, 12]))
     for i in range(30):
         platform.move_blocks()
         self.assertEqual(2, len(platform.get_block_positions()))
         self.assertEqual(len(platform.get_block_positions()), len(list(set(platform.get_block_positions()))))
示例#5
0
 def test_10_blocks_move_30_iterations_successfully(self):
     platform = ParallelPlatformer(number_blocks=8)
     for i in range(30):
         platform.move_blocks()
         self.assertEqual(8, len(platform.get_block_positions()))
         self.assertEqual(len(platform.get_block_positions()), len(list(set(platform.get_block_positions()))))
示例#6
0
 def test_two_blocks_move_30_iterations_successfully(self):
     platform = ParallelPlatformer(positions=[(3, 1), (3, 2)], directions=[(-1, 0), (1, 0)])
     for i in range(30):
         platform.move_blocks()
         self.assertEqual(2, len(platform.get_block_positions()))
         self.assertEqual(len(platform.get_block_positions()), len(list(set(platform.get_block_positions()))))