| import FreeCAD | |
| import codecs | |
| import os | |
| import unittest | |
| from .TechDrawTestUtilities import createPageWithSVGTemplate | |
| class DrawViewSymbolTest(unittest.TestCase): | |
| def setUp(self): | |
| """Creates a page""" | |
| FreeCAD.newDocument("TDAnno") | |
| FreeCAD.setActiveDocument("TDAnno") | |
| FreeCAD.ActiveDocument = FreeCAD.getDocument("TDAnno") | |
| self.page = createPageWithSVGTemplate() | |
| def tearDown(self): | |
| FreeCAD.closeDocument("TDAnno") | |
| def testMakeSymbol(self): | |
| """Tests if an symbol can be added to page""" | |
| sym = FreeCAD.ActiveDocument.addObject("TechDraw::DrawViewSymbol", "TestSymbol") | |
| path = os.path.dirname(os.path.abspath(__file__)) | |
| symbolFileSpec = path + "/TestSymbol.svg" | |
| f = codecs.open(symbolFileSpec, "r", encoding="utf-8") | |
| svg = f.read() | |
| f.close() | |
| sym.Symbol = svg | |
| self.page.addView(sym) | |
| sym.X = 220.0 | |
| sym.Y = 150.0 | |
| FreeCAD.ActiveDocument.recompute() | |
| self.assertTrue("Up-to-date" in sym.State) | |
| def testNonAsciiSymbol(self): | |
| """Tests if a Non-Ascii symbol can be added to page""" | |
| sym = FreeCAD.ActiveDocument.addObject( | |
| "TechDraw::DrawViewSymbol", "NonAsciiSymbol" | |
| ) | |
| path = os.path.dirname(os.path.abspath(__file__)) | |
| symbolFileSpec = path + "/TestNonAsciiSymbol.svg" | |
| f = codecs.open(symbolFileSpec, "r", encoding="utf-8") | |
| svg = f.read() | |
| f.close() | |
| sym.Symbol = svg | |
| self.page.addView(sym) | |
| sym.X = 220.0 | |
| sym.Y = 150.0 | |
| FreeCAD.ActiveDocument.recompute() | |
| self.assertTrue("Up-to-date" in sym.State) | |
| if __name__ == "__main__": | |
| unittest.main() | |