/
N1hor
/
vectors
Обзор
Документация
Войти
/
N1hor
/
vectors
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
tests/test_objects.py
66 строк
3 KB
N1hor
Отформатировал все файлы
11 июл 2025, 14:26
11 июл 2025, 14:26
3500509
Код
Авторство
О чём код?
import unittest from objects import Object from vectors import Vector class TestObject(unittest.TestCase): def test_eq(self): object_1 = Object(position=Vector(1, 2), velocity=Vector(0, 0), mass=1) object_2 = Object(position=Vector(1, 2), velocity=Vector(0, 0), mass=1) self.assertEqual(object_1 == object_2, True) def test_eq_different_mass(self): object_1 = Object(position=Vector(1, 2), velocity=Vector(0, 0), mass=1) object_2 = Object(position=Vector(1, 2), velocity=Vector(0, 0), mass=2) self.assertEqual(object_1 == object_2, False) def test_eq_different_position(self): object_1 = Object(position=Vector(1, 2), velocity=Vector(0, 0), mass=1) object_2 = Object(position=Vector(2, 2), velocity=Vector(0, 0), mass=1) self.assertEqual(object_1 == object_2, False) def test_eq_different_velocity(self): object_1 = Object(position=Vector(1, 2), velocity=Vector(0, 0), mass=1) object_2 = Object(position=Vector(1, 2), velocity=Vector(1, 0), mass=1) self.assertEqual(object_1 == object_2, False) def test_repr(self): self.assertEqual(repr(Object(position=Vector(1, 2), velocity=Vector(0, 0), mass=1)), "Object(Vector(1, 2), Vector(0, 0), 1)") def test_str(self): self.assertEqual(str(Object(position=Vector(1, 2), velocity=Vector(0, 0), mass=1)), f"Object at Vector(1, 2) with velocity Vector(0, 0) and mass 1") def test_update(self): object_1 = Object(position=Vector(1, 2), velocity=Vector(1, 0), mass=1) object_1.update(delta_t=1) self.assertEqual(object_1.position, Vector(2, 2)) def test_gravitate(self): object_1 = Object(position=Vector(1, 2), velocity=Vector(1, 0), mass=1) object_2 = Object(position=Vector(2, 2), velocity=Vector(0, 0), mass=1) object_1.gravitate(object_2) correct_force = Vector(1, 0) self.assertEqual(object_1.force, correct_force) def test_gravitate_self(self): object_1 = Object(position=Vector(1, 2), velocity=Vector(1, 0), mass=1) object_1.gravitate(object_1) correct_force = Vector(0, 0) self.assertEqual(object_1.force, correct_force) def test_gravitate_list(self): object_1 = Object(position=Vector(0, 0)) object_list = [Object(position=Vector(1, 0)), Object(position=Vector(0, 1)), Object(position=Vector(-1, 0)), Object(position=Vector(0, -1))] object_1.gravitate(object_list) correct_force = Vector(0, 0) self.assertEqual(object_1.force, correct_force) if __name__ == '__main__': unittest.main()