示例#1
0
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 ]")