def new(dxfversion='AC1009'): from .lldxf.const import versions_supported_by_new, acad_release_to_dxf_version dxfversion = dxfversion.upper() dxfversion = acad_release_to_dxf_version.get(dxfversion, dxfversion) # translates 'R12' -> 'AC1009' if dxfversion not in versions_supported_by_new: raise DXFVersionError("Can not create DXF drawings, unsupported DXF version '{}'.".format(dxfversion)) finder = TemplateLoader(options.template_dir) stream = finder.getstream(dxfversion.upper()) try: dwg = Drawing.read(stream) finally: stream.close() dwg._setup_metadata() return dwg
def test_template(): template_file = TemplateLoader().filepath('AC1009') assert is_dxf_file(template_file) is True
import pytest from ezdxf.templates import TemplateLoader from ezdxf.options import options from ezdxf.lldxf.tagger import low_level_tagger from ezdxf.pp.rawpp import rawpp finder = TemplateLoader(options.template_dir) @pytest.fixture(scope='module', params=['AC1009', 'AC1015']) def tags(request): stream = finder.getstream(request.param) return low_level_tagger(stream) def test_raw_dxf_tags_to_html(tags): # checks only if pretty printer is still working result = rawpp(tags, filename='test.dxf') assert len(result) > 0 if __name__ == '__main__': pytest.main([__file__])
def test_template(self): template_file = TemplateLoader().filepath('AC1009') self.assertTrue(is_dxf_file(template_file))
def test_set_templatedir(self): finder = TemplateLoader('templates') finder.templatedir = 'templates2' self.assertEqual('templates2', finder.templatedir)
def test_set_templatepath(self): finder = TemplateLoader('templates') result = finder.filepath('AC1009') self.assertEqual(os.path.join('templates', 'AC1009.dxf'), result)
def test_filepath(self): finder = TemplateLoader() result = finder.filepath('AC1009') filename = os.path.join('ezdxf', 'templates', 'AC1009.dxf') self.assertTrue(result.endswith(filename))
def test_filename(self): finder = TemplateLoader() self.assertEqual('ABC.dxf', finder.filename('ABC'))