test_pivot.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. '''
  2. Created on 6 dec. 2016
  3. @author: olinox
  4. '''
  5. import unittest
  6. from pypog import geometry
  7. class Test(unittest.TestCase):
  8. def test_hex_pivot(self):
  9. """ pivot on hexagonal grid """
  10. attended = [
  11. [(5, 5), (4, 5), (6, 6)],
  12. [(5, 6), (4, 7), (6, 6)],
  13. [(6, 7), (6, 8), (6, 6)],
  14. [(7, 6), (8, 7), (6, 6)],
  15. [(7, 5), (8, 5), (6, 6)],
  16. [(6, 5), (6, 4), (6, 6)],
  17. [(5, 5), (4, 5), (6, 6)]
  18. ]
  19. for i in range( len(attended) ):
  20. self.assertCountEqual(geometry.hex_pivot( (6,6), [(6,6)], i), [(6,6)])
  21. result = geometry.hex_pivot( (6,6), [(5,5), (4,5), (6,6)], i )
  22. self.assertCountEqual(result, attended[i])
  23. self.assertCountEqual(result, geometry.pivot(geometry.HEX, (6,6), [(5,5), (4,5), (6,6)], i))
  24. def test_squ_line(self):
  25. """ pivot on square grid """
  26. attended = [
  27. [(6, 6), (6, 5), (5, 5), (5, 6)],
  28. [(6, 6), (5, 6), (5, 7), (6, 7)],
  29. [(6, 6), (6, 7), (7, 7), (7, 6)],
  30. [(6, 6), (7, 6), (7, 5), (6, 5)],
  31. [(6, 6), (6, 5), (5, 5), (5, 6)]
  32. ]
  33. for i in range( len(attended) ):
  34. self.assertCountEqual(geometry.hex_pivot( (6,6), [(6,6)], i), [(6,6)])
  35. result = geometry.squ_pivot( (6,6), [(6,6), (6,5), (5,5), (5,6)], i )
  36. self.assertCountEqual(result, attended[i])
  37. self.assertCountEqual(result, geometry.pivot(geometry.SQUARE, (6,6), [(6,6), (6,5), (5,5), (5,6)], i))
  38. if __name__ == "__main__":
  39. unittest.main()