91 lines
2.5 KiB
Python
91 lines
2.5 KiB
Python
from __future__ import print_function
|
|
from sensehatsnake.lib.snake import Snake
|
|
import unittest
|
|
|
|
|
|
class SnakeTestCase(unittest.TestCase):
|
|
COORDINATES = [
|
|
[1]
|
|
]
|
|
|
|
COLUMNS = 2
|
|
ROWS = 2
|
|
|
|
snake = None
|
|
|
|
def setUp(self):
|
|
self.snake = Snake(self.COORDINATES)
|
|
|
|
def test__init__(self):
|
|
self.assertIsInstance(self.snake, Snake)
|
|
|
|
def test_set_coordinates(self):
|
|
self.assertIs(self.snake.set_coordinates([[0]]), None)
|
|
self.assertEquals(self.snake.coordinates(), [[0]])
|
|
|
|
def test_set_direction(self):
|
|
self.assertIs(self.snake.set_direction(self.snake.DIRECTION_UP), None)
|
|
self.assertEquals(self.snake.direction(), self.snake.DIRECTION_UP)
|
|
|
|
def test_set_x(self):
|
|
self.assertIs(self.snake.set_x(1), None)
|
|
self.assertEquals(self.snake.x(), 1)
|
|
|
|
def test_set_y(self):
|
|
self.assertIs(self.snake.set_y(1), None)
|
|
self.assertEquals(self.snake.y(), 1)
|
|
|
|
def test_set_position(self):
|
|
self.assertIs(self.snake.set_position((1, 1)), None)
|
|
self.assertEquals(self.snake.x(), 1)
|
|
self.assertEquals(self.snake.y(), 1)
|
|
|
|
def test_add_segment(self):
|
|
self.assertIs(self.snake.add_segment((1, 1)), None)
|
|
self.assertEquals(self.snake.length(), 2)
|
|
|
|
def test_remove_segment(self):
|
|
self.assertIs(self.snake.remove_segment(), None)
|
|
self.assertEquals(self.snake.length(), 0)
|
|
|
|
def test_coordinates(self):
|
|
self.assertEquals(self.snake.coordinates(), self.COORDINATES)
|
|
self.assertEquals(self.snake.coordinates(self.COLUMNS, self.ROWS), [[self.COORDINATES[0][0], False], [False, False]])
|
|
|
|
def test_direction(self):
|
|
self.assertEquals(self.snake.direction(), self.snake.DIRECTION_LEFT)
|
|
|
|
def test_x(self):
|
|
self.assertEquals(self.snake.x(), 0)
|
|
|
|
def test_y(self):
|
|
self.assertEquals(self.snake.y(), 0)
|
|
|
|
def test_position(self):
|
|
self.assertEquals(self.snake.position(), (0, 0))
|
|
|
|
def test_segments(self):
|
|
self.assertEquals(self.snake.segments(), [(0, 0)])
|
|
|
|
def test_head(self):
|
|
self.assertEquals(self.snake.head(), (0, 0))
|
|
|
|
def test_body(self):
|
|
self.assertEquals(self.snake.body(), None)
|
|
|
|
def test_tail(self):
|
|
self.assertEquals(self.snake.tail(), (0, 0))
|
|
|
|
def test_length(self):
|
|
self.assertEquals(self.snake.length(), 1)
|
|
|
|
def test_cleanup(self):
|
|
self.assertIs(self.snake.cleanup(), None)
|
|
|
|
def test__exit__(self):
|
|
self.assertIs(self.snake.__exit__(), None)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|