class AllShapesTestCase(ShapeTestCase): _base_circle = Circle(80) _rectangle = Rectangle(100, 60) _spacer = Spacer(40, 40) _square = Square(80) _vertical_shapes = VerticalShapes( _base_circle, LayeredShapes(ScaledShape(_base_circle, 0.75, 0.75), Polygon(5, 20)), LayeredShapes(ScaledShape(_base_circle, 0.5, 0.5), RotatedShape(Triangle(20), 180))) _shape = HorizontalShapes(_rectangle, _spacer, _square, _vertical_shapes, _square, _spacer, _rectangle) def test_get_width(self): self.assertEqual(self._shape._get_width(), 600) def test_get_height(self): self.assertEqual(self._shape._get_height(), 360) def test_export_postscript_all_shapes(self): self._test_export_postscript(self._shape, Point(305, 300))
# serves as a nice demonstration of the pyscript module. from pyscript import ( Point, Rectangle, Spacer, Square, Circle, HorizontalShapes, VerticalShapes, LayeredShapes, ScaledShape, RotatedShape, Triangle, Polygon ) if __name__ == "__main__": base_circle = Circle(80) rectangle = Rectangle(100, 60) spacer = Spacer(40, 40) square = Square(80) vertical_shapes = VerticalShapes( base_circle, LayeredShapes( ScaledShape(base_circle, 0.75, 0.75), Polygon(5, 20) ), LayeredShapes( ScaledShape(base_circle, 0.5, 0.5), RotatedShape(Triangle(20), 180) ) ) shape = HorizontalShapes( rectangle, spacer, square, vertical_shapes, square, spacer, rectangle ) shape.export_postscript(
def test_get_width_no_shapes(self): shape = LayeredShapes() self.assertEqual(shape._get_width(), 0)
def test_get_height_multiple_shapes(self): shape = LayeredShapes(Circle(1), Rectangle(5, 10), Rectangle(0, 1), Rectangle(3, 9)) self.assertEqual(shape._get_height(), 10)
def test_get_height_single_shape(self): shape = LayeredShapes(Rectangle(1, 5)) self.assertEqual(shape._get_height(), 5)
def test_get_height_no_shapes(self): shape = LayeredShapes() self.assertEqual(shape._get_height(), 0)
def test_get_width_multiple_shapes(self): shape = LayeredShapes(Circle(1), Rectangle(5, 10), Circle(21), Rectangle(0, 1), Rectangle(3, 9)) self.assertEqual(shape._get_width(), 42)
def test_get_width_single_shape(self): shape = LayeredShapes(Circle(3)) self.assertEqual(shape._get_width(), 6)