class TestSvgEllipse(unittest.TestCase): def setUp(self): self.effect = Effect() self.document = self.effect.parse("TestFiles/unit_test_svg_ellipse.svg") root = self.effect.document.getroot() self.node = self.findTag(root, "ellipse") self.canvas = Canvas(0, 0) self.ellipse = Ellipse(None, self.node, self.canvas, None) def findTag(self, root, no): for node in root: tag = node.tag.split("}")[1] if tag == no: return node return "" def testGetData(self): x, y, z, w = self.ellipse.getData() self.assertEqual(x, 60) self.assertEqual(y, 70) self.assertEqual(z, 250) self.assertEqual(w, 100) def testDraw(self): self.ellipse.draw(False) self.assertEqual(self.ellipse.canvasContext.code, ["\tctx.fillStyle = 'rgb(255, 0, 0)';\n", '\tctx.beginPath();\n', '\tctx.transform(0.866025, -0.500000, 0.500000, 0.866025, 900.000000, 200.000000);\n', '\tctx.moveTo(60.000000, -30.000000);\n', '\tctx.bezierCurveTo(198.071187, -30.000000, 310.000000, 14.771525, 310.000000, 70.000000);\n', '\tctx.bezierCurveTo(310.000000, 125.228475, 198.071187, 170.000000, 60.000000, 170.000000);\n', '\tctx.bezierCurveTo(-78.071187, 170.000000, -190.000000, 125.228475, -190.000000, 70.000000);\n', '\tctx.bezierCurveTo(-190.000000, 14.771525, -78.071187, -30.000000, 60.000000, -30.000000);\n', '\tctx.fill();\n'])
def setUp(self): self.effect = Effect() self.document = self.effect.parse("TestFiles/unit_test_svg_ellipse.svg") root = self.effect.document.getroot() self.node = self.findTag(root, "ellipse") self.canvas = Canvas(0, 0) self.ellipse = Ellipse(None, self.node, self.canvas, None)