| | |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| | """Unit tests for the Draft Workbench, DXF import and export tests.""" |
| |
|
| | |
| | |
| | |
| |
|
| | |
| | |
| |
|
| | import os |
| |
|
| | import FreeCAD as App |
| | import Draft |
| | from drafttests import auxiliary as aux |
| | from drafttests import test_base |
| | from draftutils.messages import _msg |
| | import importDXF |
| |
|
| |
|
| | class DraftDXF(test_base.DraftTestCaseDoc): |
| | """Test reading and writing of DXF files with Draft.""" |
| |
|
| | def test_read_dxf_Issue24314(self): |
| | """Verify that reading a DXF file does not leave pending Python error states""" |
| |
|
| | file = "Mod/Draft/drafttests/Issue24314.dxf" |
| | in_file = os.path.join(App.getHomePath(), file) |
| | _msg(" file={}".format(in_file)) |
| | _msg(" exists={}".format(os.path.exists(in_file))) |
| |
|
| | hGrp = App.ParamGet("User parameter:BaseApp/Preferences/Mod/Draft") |
| |
|
| | |
| | wasShowDialog = hGrp.GetBool("dxfShowDialog", True) |
| | wasUseLegacyImporter = hGrp.GetBool("dxfUseLegacyImporter", False) |
| | wasUseLayers = hGrp.GetBool("dxfUseDraftVisGroups", True) |
| | wasImportMode = hGrp.GetInt("DxfImportMode", 2) |
| | wasCreateSketch = hGrp.GetBool("dxfCreateSketch", False) |
| | wasImportAnonymousBlocks = hGrp.GetBool("dxfstarblocks", False) |
| |
|
| | doc = None |
| | try: |
| | |
| | hGrp.SetBool("dxfShowDialog", False) |
| | |
| | hGrp.SetBool("dxfUseLegacyImporter", False) |
| | |
| | hGrp.SetBool("dxfUseDraftVisGroups", True) |
| | |
| | |
| | |
| | |
| | hGrp.SetInt("DxfImportMode", 2) |
| | hGrp.SetBool("dxfCreateSketch", False) |
| | hGrp.SetBool("dxfstarblocks", False) |
| | doc = importDXF.open(in_file) |
| | |
| | self.assertEqual(len(doc.Objects), 3) |
| | finally: |
| | hGrp.SetBool("dxfShowDialog", wasShowDialog) |
| | hGrp.SetBool("dxfUseLegacyImporter", wasUseLegacyImporter) |
| | hGrp.SetBool("dxfUseDraftVisGroups", wasUseLayers) |
| | hGrp.SetInt("DxfImportMode", wasImportMode) |
| | hGrp.SetBool("dxfCreateSketch", wasCreateSketch) |
| | hGrp.SetBool("dxfstarblocks", wasImportAnonymousBlocks) |
| | if doc: |
| | App.closeDocument(doc.Name) |
| |
|
| | def test_export_dxf(self): |
| | """Create some figures and export them to a DXF file.""" |
| | operation = "importDXF.export" |
| | _msg(" Test '{}'".format(operation)) |
| |
|
| | file = "Mod/Draft/drafttest/out_test.dxf" |
| | out_file = os.path.join(App.getResourceDir(), file) |
| | _msg(" file={}".format(out_file)) |
| | _msg(" exists={}".format(os.path.exists(out_file))) |
| |
|
| | obj = aux.fake_function(out_file) |
| | self.assertTrue(obj, "'{}' failed".format(operation)) |
| |
|
| |
|
| | |
| |
|