Пример #1
0
class TestMoving(unittest.TestCase):
    def setUp(self):
        self.scene = Scene(field=(100, 100),
                           theme_mod_path='tests.default_theme')

    def test_move_at_point(self):
        obj = GameObject(coord=Point(x=10, y=10))
        obj.move_at(target=Point(x=10, y=300), speed=2)
        for i in range(5):
            self.scene.game_step()
        self.assertEqual(obj.y, 20)
Пример #2
0
class TestMoving(unittest.TestCase):

    def setUp(self):
        self.scene = Scene(field=(100, 100), theme_mod_path='robogame_engine.tests.default_theme')

    def test_move_at_point(self):
        obj = GameObject(coord=Point(x=10, y=10))
        obj.move_at(target=Point(x=10, y=300), speed=2)
        for i in range(5):
            self.scene.game_step()
        self.assertEqual(obj.y, 20)
Пример #3
0
class TestTurning(unittest.TestCase):

    def setUp(self):
        self.scene = Scene(field=(100, 100), theme_mod_path='robogame_engine.tests.default_theme')

    def test_turn_to_direction(self):
        obj = GameObject(coord=Point(x=10, y=10), direction=0)
        obj.turn_to(target=30, speed=10)
        obj.on_stop = mock.MagicMock()
        for _ in range(3):
            self.scene.game_step()
        self.scene.game_step()  # событие происходит на след шаге игры
        self.assertEqual(obj.on_stop.call_count, 1)
Пример #4
0
class TestTurning(unittest.TestCase):
    def setUp(self):
        self.scene = Scene(field=(100, 100),
                           theme_mod_path='tests.default_theme')

    def test_turn_to_direction(self):
        obj = GameObject(coord=Point(x=10, y=10), direction=0)
        obj.turn_to(target=30, speed=10)
        obj.on_stop = mock.MagicMock()
        for _ in range(3):
            self.scene.game_step()
        self.scene.game_step()  # событие происходит на след шаге игры
        self.assertEqual(obj.on_stop.call_count, 1)
Пример #5
0
class TestMoving(unittest.TestCase):
    def setUp(self):
        self.scene = Scene(field=(100, 100),
                           theme_mod_path='tests.default_theme')

    def test_move_at_point(self):
        obj = GameObject(coord=Point(x=10, y=10), direction=180)
        obj.on_stop_at_target = mock.MagicMock()
        obj.move_at(target=Point(x=10, y=20), speed=2)
        for i in range(6):  # TODO почему 6 шагов? проверить и понять
            self.scene.game_step()
        self.assertEqual(obj.y, 20)
        self.scene.game_step()  # событие происходит на след шаге игры
        self.assertEqual(obj.on_stop_at_target.call_count, 1)

    def test_boundary_speed_less_radius(self):
        obj = GameObject(coord=Point(x=10, y=10), radius=5)
        obj.move_at(target=Point(x=-10, y=10), speed=3)
        for i in range(5):
            self.scene.game_step()
        # 10 - 3 - 3 - 3 (выход за границы) + 5 (отталкивание) и стоп
        self.assertEqual(obj.x, 6)

    def test_boundary_speed_more_radius(self):
        obj = GameObject(coord=Point(x=5, y=10), radius=2)
        obj.move_at(target=Point(x=-5, y=10), speed=3)
        for i in range(5):
            self.scene.game_step()
        # 5 - 3 - 3 (выход за границы) + 2 (отталкивание) и стоп
        self.assertEqual(obj.x, 3)
Пример #6
0
 def setUp(self):
     self.scene = Scene(field=(100, 100),
                        theme_mod_path='tests.default_theme')
Пример #7
0
 def setUp(self):
     self.scene = Scene(field=(100, 100), theme_mod_path='robogame_engine.tests.default_theme')
Пример #8
0
 def setUp(self):
     self.scene = Scene(
         field=(100, 100),
         theme_mod_path='robogame_engine.tests.default_theme')