def test_contains_point(self): rect = Rectangle(Field(5, 5), Field(10, 10)) test_cases = { Point(0, 0): False, Point(2, 4): False, Point(7, 14): False, Point(15, 18): False, Point.map_to_point(rect.bottom_left): False, Point.map_to_point(rect.bottom_right): False, Point.map_to_point(rect.top_left): False, Point.map_to_point(rect.top_right): False, Point.map_to_point(rect.middle().top_left): True, Point.map_to_point(rect.middle().top_right): True, Point.map_to_point(rect.middle().bottom_left): True, Point.map_to_point(rect.middle().bottom_right): True, Point(6, 8): True, Point(8, 9): True } for point, expected in test_cases.items(): self.assertEqual(point in rect, expected)
def test_middle_rect_width(self): first = Field(0, 0) second = Field(10, 9) rect = Rectangle(first, second) self.assertTrue(rect.middle(), Rectangle(Field(4, 5), Field(5, 5)))
def test_middle_rect_height(self): first = Field(0, 0) second = Field(9, 10) rect = Rectangle(first, second) self.assertTrue(rect.middle(), Rectangle(Field(5, 4), Field(5, 5)))
def test_middle(self): first = Field(0, 0) second = Field(10, 10) rect = Rectangle(first, second) self.assertTrue(rect.middle(), Field(5, 5).rectangle)