class TestShip(unittest.TestCase): def setUp(self): self.ship = Ship((0,0), 5, 0, [Point(0, (x, 0)) for x in range(5)]) def test_get_points(self): self.assertEqual(self.ship.get_points(), [Point(0, (x,0)) for x in range(5)]) def test_set_points(self): self.assertEqual(self.ship.set_points([Point(0, (x,0)) for x in range(5,10)]), True) self.assertEqual(self.ship.get_points(), [Point(0, (x,0)) for x in range(5,10)]) def test_get_hits(self): self.assertEqual(self.ship.get_hits(), [0] * self.ship.get_size()) def test_set_hits(self): self.assertEqual(self.ship.set_hits([1] * self.ship.get_size()), True) self.assertEqual(self.ship.get_hits(), [1] * self.ship.get_size()) def test_get_orientation(self): self.assertEqual(self.ship.get_orientation(), 0) def test_set_orientation(self): self.assertEqual(self.ship.set_orientation(1), True) self.assertEqual(self.ship.get_orientation(), 1) def test_get_size(self): self.assertEqual(self.ship.get_size(), 5) def test_set_size(self): self.assertEqual(self.ship.set_size(2), True) self.assertEqual(self.ship.get_size(), 2) def test_get_start(self): self.assertEqual(self.ship.get_start(), (0,0)) def test_set_start(self): self.assertEqual(self.ship.set_start((1,1)), True) self.assertEqual(self.ship.get_start(), (1,1)) def test_is_hit(self): self.assertEqual(self.ship.is_hit(Point(0, (0,0))), True) self.assertEqual(self.ship.is_hit(Point(0, (100, 100))), False) def test_is_sunk(self): self.assertEqual(self.ship.is_sunk(), False) self.ship.set_hits([1] * self.ship.get_size()) self.assertEqual(self.ship.is_sunk(), True) def test_string(self): self.assertEqual(str(self.ship), "[0 0 0 0 0 ]")