From 5628dba9e0bbd393c551a838b26e6698ee95d1da Mon Sep 17 00:00:00 2001 From: Dave Kuhlman <dkuhlman@davekuhlman.org> Date: Tue, 5 May 2015 21:16:31 -0700 Subject: [PATCH] Fixes for preserve CDATA --- generateDS.py | 50 +++++++++++++++++++------ tests/OnePer/oneperType00_2One.py | 20 ++++++---- tests/OnePer/oneperType01_2One.py | 20 ++++++---- tests/OnePer/oneperType02_2One.py | 20 ++++++---- tests/OnePer/oneperType03_2One.py | 20 ++++++---- tests/abstract_type1_sub.py | 20 ++++++---- tests/abstract_type1_sup.py | 20 ++++++---- tests/annotations1_sub.py | 20 ++++++---- tests/annotations1_sup.py | 20 ++++++---- tests/anonymous_type1_sub.py | 20 ++++++---- tests/anonymous_type1_sup.py | 20 ++++++---- tests/anysimpletype1_sub.py | 20 ++++++---- tests/anysimpletype1_sup.py | 20 ++++++---- tests/anywildcard1_sub.py | 20 ++++++---- tests/anywildcard1_sup.py | 20 ++++++---- tests/attr_groups1_sub.py | 20 ++++++---- tests/attr_groups1_sup.py | 20 ++++++---- tests/cdata1_sub.py | 20 ++++++---- tests/cdata1_sup.py | 20 ++++++---- tests/check_results.rb | 6 ++- tests/compare_sub | 3 ++ tests/compare_sup | 3 ++ tests/defaults_cases1_sub.py | 20 ++++++---- tests/defaults_cases1_sup.py | 20 ++++++---- tests/defaults_coverage1_sub.py | 20 ++++++---- tests/defaults_coverage1_sup.py | 20 ++++++---- tests/extensions1_sub.py | 20 ++++++---- tests/extensions1_sup.py | 20 ++++++---- tests/mapcleanname1_sub.py | 20 ++++++---- tests/mapcleanname1_sup.py | 20 ++++++---- tests/out1_sub.py | 20 ++++++---- tests/out1_sup.py | 20 ++++++---- tests/people_procincl1_sub.py | 20 ++++++---- tests/people_procincl1_sup.py | 20 ++++++---- tests/prefix_classname1_sub.py | 20 ++++++---- tests/prefix_classname1_sup.py | 20 ++++++---- tests/recursive_simpletype1_sub.py | 20 ++++++---- tests/recursive_simpletype1_sup.py | 20 ++++++---- tests/reference_simpletype1_sub.py | 20 ++++++---- tests/reference_simpletype1_sup.py | 20 ++++++---- tests/simplecontent_restriction1_sub.py | 20 ++++++---- tests/simplecontent_restriction1_sup.py | 20 ++++++---- tests/simpletype_memberspecs1_sub.py | 20 ++++++---- tests/simpletype_memberspecs1_sup.py | 20 ++++++---- tests/simpletypes_other1_sub.py | 20 ++++++---- tests/simpletypes_other1_sup.py | 20 ++++++---- tests/to_etree1_sub.py | 20 ++++++---- tests/to_etree1_sup.py | 20 ++++++---- tests/validate_simpletypes1_sub.py | 20 ++++++---- tests/validate_simpletypes1_sup.py | 20 ++++++---- 50 files changed, 602 insertions(+), 380 deletions(-) create mode 100755 tests/compare_sub create mode 100755 tests/compare_sup diff --git a/generateDS.py b/generateDS.py index 75dd332..4e27c5b 100755 --- a/generateDS.py +++ b/generateDS.py @@ -5207,16 +5207,7 @@ def quote_python(inStr): return '\"\"\"%%s\"\"\"' %% s1 -def get_all_text_(node): - if node.text is not None: - text = node.text - else: - text = '' - for child in node: - if child.tail is not None: - text += child.tail - return text - +%s def find_attr_value_(attr_name, node): attrs = node.attrib @@ -5409,6 +5400,40 @@ def format_options_args(options, args): return options1, args1, command_line +Preserve_cdata_get_all_text1 = """\ +PRESERVE_CDATA_TAGS_PAT1 = re_.compile(r'^<.+?>(.*?)</?[a-zA-Z0-9\-]+>.*$') +PRESERVE_CDATA_TAGS_PAT2 = re_.compile(r'^<.+?>.*?</.+?>(.*)$') + + +def get_all_text_(node): + if node.text is not None: + mo_ = PRESERVE_CDATA_TAGS_PAT1.search(etree_.tostring(node).strip()) + if mo_ is not None: + text = mo_.group(1) + else: + text = '' + for child in node: + if child.tail is not None: + mo_ = PRESERVE_CDATA_TAGS_PAT2.search( + etree_.tostring(child).strip()) + if mo_ is not None: + text += mo_.group(1) + return text +""" + +Preserve_cdata_get_all_text2 = """\ +def get_all_text_(node): + if node.text is not None: + text = node.text + else: + text = '' + for child in node: + if child.tail is not None: + text += child.tail + return text +""" + + def generateHeader(wrt, prefix, options, args, externalImports): tstamp = (not NoDates and time.ctime()) or '' if NoVersion: @@ -5419,15 +5444,18 @@ def generateHeader(wrt, prefix, options, args, externalImports): current_working_directory = os.path.split(os.getcwd())[1] if PreserveCdataTags: preserve_cdata_tags_pat = \ - "PRESERVE_CDATA_TAGS_PAT = re_.compile(r'^<.+?>(.*)<.+>$')\n" + "PRESERVE_CDATA_TAGS_PAT = re_.compile(r'^<.+?>(.*)<.+>$')\n\n" + preserve_cdata_get_text = Preserve_cdata_get_all_text1 else: preserve_cdata_tags_pat = "" + preserve_cdata_get_text = Preserve_cdata_get_all_text2 s1 = TEMPLATE_HEADER % ( tstamp, version, options1, args1, command_line, current_working_directory, ExternalEncoding, preserve_cdata_tags_pat, + preserve_cdata_get_text, ) wrt(s1) for externalImport in externalImports: diff --git a/tests/OnePer/oneperType00_2One.py b/tests/OnePer/oneperType00_2One.py index 6c4bdca..5f3def2 100644 --- a/tests/OnePer/oneperType00_2One.py +++ b/tests/OnePer/oneperType00_2One.py @@ -36,12 +36,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -753,7 +753,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -773,7 +774,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -797,7 +799,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -816,7 +819,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/OnePer/oneperType01_2One.py b/tests/OnePer/oneperType01_2One.py index 2d01167..73cef83 100644 --- a/tests/OnePer/oneperType01_2One.py +++ b/tests/OnePer/oneperType01_2One.py @@ -36,12 +36,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -832,7 +832,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -852,7 +853,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -876,7 +878,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -895,7 +898,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/OnePer/oneperType02_2One.py b/tests/OnePer/oneperType02_2One.py index 1fbc792..b13a274 100644 --- a/tests/OnePer/oneperType02_2One.py +++ b/tests/OnePer/oneperType02_2One.py @@ -36,12 +36,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -832,7 +832,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -852,7 +853,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -876,7 +878,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -895,7 +898,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/OnePer/oneperType03_2One.py b/tests/OnePer/oneperType03_2One.py index e39fa1a..3a894d4 100644 --- a/tests/OnePer/oneperType03_2One.py +++ b/tests/OnePer/oneperType03_2One.py @@ -36,12 +36,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -831,7 +831,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -851,7 +852,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -875,7 +877,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -894,7 +897,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/abstract_type1_sub.py b/tests/abstract_type1_sub.py index c7f59b9..b7e815b 100644 --- a/tests/abstract_type1_sub.py +++ b/tests/abstract_type1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import abstract_type2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -85,7 +85,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -105,7 +106,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -129,7 +131,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -148,7 +151,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/abstract_type1_sup.py b/tests/abstract_type1_sup.py index 85ecd9d..2b7bee6 100644 --- a/tests/abstract_type1_sup.py +++ b/tests/abstract_type1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -974,7 +974,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -994,7 +995,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1018,7 +1020,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1037,7 +1040,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/annotations1_sub.py b/tests/annotations1_sub.py index be5202a..ee65ce6 100644 --- a/tests/annotations1_sub.py +++ b/tests/annotations1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import annotations2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -78,7 +78,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -98,7 +99,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -122,7 +124,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -141,7 +144,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/annotations1_sup.py b/tests/annotations1_sup.py index 432a0fc..587047c 100644 --- a/tests/annotations1_sup.py +++ b/tests/annotations1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -976,7 +976,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -996,7 +997,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1020,7 +1022,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1039,7 +1042,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/anonymous_type1_sub.py b/tests/anonymous_type1_sub.py index 6363dc8..e6d3696 100644 --- a/tests/anonymous_type1_sub.py +++ b/tests/anonymous_type1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import anonymous_type2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -85,7 +85,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -105,7 +106,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -129,7 +131,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -148,7 +151,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/anonymous_type1_sup.py b/tests/anonymous_type1_sup.py index 3fbc43e..4f8d887 100644 --- a/tests/anonymous_type1_sup.py +++ b/tests/anonymous_type1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -1045,7 +1045,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1065,7 +1066,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1089,7 +1091,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1108,7 +1111,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/anysimpletype1_sub.py b/tests/anysimpletype1_sub.py index cc9a996..a8d0cc3 100644 --- a/tests/anysimpletype1_sub.py +++ b/tests/anysimpletype1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import anysimpletype2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -71,7 +71,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -91,7 +92,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -115,7 +117,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -134,7 +137,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/anysimpletype1_sup.py b/tests/anysimpletype1_sup.py index cb8e93e..85493b8 100644 --- a/tests/anysimpletype1_sup.py +++ b/tests/anysimpletype1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -858,7 +858,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -878,7 +879,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -902,7 +904,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -921,7 +924,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/anywildcard1_sub.py b/tests/anywildcard1_sub.py index af1a259..7e40b28 100644 --- a/tests/anywildcard1_sub.py +++ b/tests/anywildcard1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import anywildcard2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -99,7 +99,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -119,7 +120,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -143,7 +145,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -162,7 +165,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/anywildcard1_sup.py b/tests/anywildcard1_sup.py index bbfc44b..62af173 100644 --- a/tests/anywildcard1_sup.py +++ b/tests/anywildcard1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -1258,7 +1258,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1278,7 +1279,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1302,7 +1304,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1321,7 +1324,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/attr_groups1_sub.py b/tests/attr_groups1_sub.py index 16a4a86..c608d1d 100644 --- a/tests/attr_groups1_sub.py +++ b/tests/attr_groups1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import attr_groups2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -64,7 +64,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -84,7 +85,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -108,7 +110,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -127,7 +130,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/attr_groups1_sup.py b/tests/attr_groups1_sup.py index 15fb775..52ea1fc 100644 --- a/tests/attr_groups1_sup.py +++ b/tests/attr_groups1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -863,7 +863,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -883,7 +884,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -907,7 +909,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -926,7 +929,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/cdata1_sub.py b/tests/cdata1_sub.py index 10fb06f..137519f 100644 --- a/tests/cdata1_sub.py +++ b/tests/cdata1_sub.py @@ -29,12 +29,12 @@ from lxml import etree as etree_ import cdata2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -72,7 +72,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -92,7 +93,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -116,7 +118,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -135,7 +138,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/cdata1_sup.py b/tests/cdata1_sup.py index b572df1..c4f3b96 100644 --- a/tests/cdata1_sup.py +++ b/tests/cdata1_sup.py @@ -36,12 +36,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -829,7 +829,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -849,7 +850,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -873,7 +875,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -892,7 +895,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/check_results.rb b/tests/check_results.rb index c064e67..a456326 100755 --- a/tests/check_results.rb +++ b/tests/check_results.rb @@ -57,10 +57,14 @@ $commands = [ "diff -u cdata1_sub.py cdata2_sub.py", "diff -u cdata1_sup.py cdata2_sup.py", "diff -u cdata1.xml cdata2.xml", + "diff -u defaults_coverage1_sub.py defaults_coverage2_sub.py", + "diff -u defaults_coverage1_sup.py defaults_coverage2_sup.py", + "diff -u defaults_cases1_sub.py defaults_cases2_sub.py", + "diff -u defaults_cases1_sup.py defaults_cases2_sup.py", ] def check - puts $divider + #puts $divider error_count = 0 $commands.each do |command| infile = IO.popen command diff --git a/tests/compare_sub b/tests/compare_sub new file mode 100755 index 0000000..df57aba --- /dev/null +++ b/tests/compare_sub @@ -0,0 +1,3 @@ +#!/bin/bash -x +diff -u ${1}1_sub.py ${1}2_sub.py | vim -R - + diff --git a/tests/compare_sup b/tests/compare_sup new file mode 100755 index 0000000..552d6ac --- /dev/null +++ b/tests/compare_sup @@ -0,0 +1,3 @@ +#!/bin/bash -x +diff -u ${1}1_sup.py ${1}2_sup.py | vim -R - + diff --git a/tests/defaults_cases1_sub.py b/tests/defaults_cases1_sub.py index fe6995a..ca08951 100644 --- a/tests/defaults_cases1_sub.py +++ b/tests/defaults_cases1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import defaults_cases2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -78,7 +78,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -98,7 +99,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -122,7 +124,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -141,7 +144,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/defaults_cases1_sup.py b/tests/defaults_cases1_sup.py index 1fee496..63a3900 100644 --- a/tests/defaults_cases1_sup.py +++ b/tests/defaults_cases1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -1116,7 +1116,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1136,7 +1137,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1160,7 +1162,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1179,7 +1182,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/defaults_coverage1_sub.py b/tests/defaults_coverage1_sub.py index c2302a6..3452d18 100644 --- a/tests/defaults_coverage1_sub.py +++ b/tests/defaults_coverage1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import defaults_coverage2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -78,7 +78,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -98,7 +99,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -122,7 +124,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -141,7 +144,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/defaults_coverage1_sup.py b/tests/defaults_coverage1_sup.py index a26a420..9eb496b 100644 --- a/tests/defaults_coverage1_sup.py +++ b/tests/defaults_coverage1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -1528,7 +1528,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1548,7 +1549,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1572,7 +1574,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1591,7 +1594,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/extensions1_sub.py b/tests/extensions1_sub.py index 669c801..27b9cc6 100644 --- a/tests/extensions1_sub.py +++ b/tests/extensions1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import extensions2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -141,7 +141,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -161,7 +162,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -185,7 +187,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -204,7 +207,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/extensions1_sup.py b/tests/extensions1_sup.py index b425326..a23b01b 100644 --- a/tests/extensions1_sup.py +++ b/tests/extensions1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -1831,7 +1831,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1851,7 +1852,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1875,7 +1877,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1894,7 +1897,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/mapcleanname1_sub.py b/tests/mapcleanname1_sub.py index b5a5741..fc4dbd2 100644 --- a/tests/mapcleanname1_sub.py +++ b/tests/mapcleanname1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import mapcleanname2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -106,7 +106,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -126,7 +127,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -150,7 +152,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -169,7 +172,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/mapcleanname1_sup.py b/tests/mapcleanname1_sup.py index 3c50228..f602949 100644 --- a/tests/mapcleanname1_sup.py +++ b/tests/mapcleanname1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -1630,7 +1630,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1650,7 +1651,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1674,7 +1676,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1693,7 +1696,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/out1_sub.py b/tests/out1_sub.py index aaec107..4ea6faa 100644 --- a/tests/out1_sub.py +++ b/tests/out1_sub.py @@ -27,12 +27,12 @@ from lxml import etree as etree_ import out2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -140,7 +140,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -160,7 +161,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -184,7 +186,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -203,7 +206,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/out1_sup.py b/tests/out1_sup.py index f653003..ca76ad9 100644 --- a/tests/out1_sup.py +++ b/tests/out1_sup.py @@ -34,12 +34,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -3346,7 +3346,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -3366,7 +3367,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -3390,7 +3392,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -3409,7 +3412,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/people_procincl1_sub.py b/tests/people_procincl1_sub.py index 09f65ca..fbe3259 100644 --- a/tests/people_procincl1_sub.py +++ b/tests/people_procincl1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import people_procincl2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -169,7 +169,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -189,7 +190,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -213,7 +215,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -232,7 +235,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/people_procincl1_sup.py b/tests/people_procincl1_sup.py index 1595278..5c1ef83 100644 --- a/tests/people_procincl1_sup.py +++ b/tests/people_procincl1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -3227,7 +3227,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -3247,7 +3248,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -3271,7 +3273,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -3290,7 +3293,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/prefix_classname1_sub.py b/tests/prefix_classname1_sub.py index c9fe113..098de19 100644 --- a/tests/prefix_classname1_sub.py +++ b/tests/prefix_classname1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import prefix_classname2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -141,7 +141,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -161,7 +162,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -185,7 +187,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -204,7 +207,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/prefix_classname1_sup.py b/tests/prefix_classname1_sup.py index 24d96eb..ccfc261 100644 --- a/tests/prefix_classname1_sup.py +++ b/tests/prefix_classname1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -2790,7 +2790,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -2810,7 +2811,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -2834,7 +2836,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -2853,7 +2856,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/recursive_simpletype1_sub.py b/tests/recursive_simpletype1_sub.py index 269c0e7..336b026 100644 --- a/tests/recursive_simpletype1_sub.py +++ b/tests/recursive_simpletype1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import recursive_simpletype2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -64,7 +64,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -84,7 +85,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -108,7 +110,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -127,7 +130,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/recursive_simpletype1_sup.py b/tests/recursive_simpletype1_sup.py index c551946..a5931fa 100644 --- a/tests/recursive_simpletype1_sup.py +++ b/tests/recursive_simpletype1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -765,7 +765,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -785,7 +786,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -809,7 +811,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -828,7 +831,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/reference_simpletype1_sub.py b/tests/reference_simpletype1_sub.py index 3bc7669..9297c7a 100644 --- a/tests/reference_simpletype1_sub.py +++ b/tests/reference_simpletype1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import reference_simpletype2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -64,7 +64,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -84,7 +85,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -108,7 +110,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -127,7 +130,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/reference_simpletype1_sup.py b/tests/reference_simpletype1_sup.py index 5a5b572..92618bd 100644 --- a/tests/reference_simpletype1_sup.py +++ b/tests/reference_simpletype1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -787,7 +787,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -807,7 +808,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -831,7 +833,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -850,7 +853,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/simplecontent_restriction1_sub.py b/tests/simplecontent_restriction1_sub.py index f74b7a5..41d0962 100644 --- a/tests/simplecontent_restriction1_sub.py +++ b/tests/simplecontent_restriction1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import simplecontent_restriction2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -78,7 +78,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -98,7 +99,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -122,7 +124,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -141,7 +144,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/simplecontent_restriction1_sup.py b/tests/simplecontent_restriction1_sup.py index 661fec9..a4a819f 100644 --- a/tests/simplecontent_restriction1_sup.py +++ b/tests/simplecontent_restriction1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -989,7 +989,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1009,7 +1010,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1033,7 +1035,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1052,7 +1055,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/simpletype_memberspecs1_sub.py b/tests/simpletype_memberspecs1_sub.py index aacb59d..908d5c4 100644 --- a/tests/simpletype_memberspecs1_sub.py +++ b/tests/simpletype_memberspecs1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import simpletype_memberspecs2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -71,7 +71,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -91,7 +92,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -115,7 +117,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -134,7 +137,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/simpletype_memberspecs1_sup.py b/tests/simpletype_memberspecs1_sup.py index 343e028..66eec47 100644 --- a/tests/simpletype_memberspecs1_sup.py +++ b/tests/simpletype_memberspecs1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -819,7 +819,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -839,7 +840,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -863,7 +865,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -882,7 +885,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/simpletypes_other1_sub.py b/tests/simpletypes_other1_sub.py index 5b76f3b..d00c37b 100644 --- a/tests/simpletypes_other1_sub.py +++ b/tests/simpletypes_other1_sub.py @@ -28,12 +28,12 @@ from lxml import etree as etree_ import simpletypes_other2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -71,7 +71,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -91,7 +92,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -115,7 +117,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -134,7 +137,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/simpletypes_other1_sup.py b/tests/simpletypes_other1_sup.py index b82c822..563eeb3 100644 --- a/tests/simpletypes_other1_sup.py +++ b/tests/simpletypes_other1_sup.py @@ -35,12 +35,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -1272,7 +1272,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1292,7 +1293,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1316,7 +1318,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1335,7 +1338,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/to_etree1_sub.py b/tests/to_etree1_sub.py index 7f874cb..5c0590a 100644 --- a/tests/to_etree1_sub.py +++ b/tests/to_etree1_sub.py @@ -30,12 +30,12 @@ from lxml import etree as etree_ import to_etree2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -185,7 +185,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -205,7 +206,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -229,7 +231,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -248,7 +251,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/to_etree1_sup.py b/tests/to_etree1_sup.py index 566c851..6b889c3 100644 --- a/tests/to_etree1_sup.py +++ b/tests/to_etree1_sup.py @@ -37,12 +37,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -2796,7 +2796,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -2816,7 +2817,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -2840,7 +2842,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -2859,7 +2862,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/validate_simpletypes1_sub.py b/tests/validate_simpletypes1_sub.py index 2fcfe92..fa283eb 100644 --- a/tests/validate_simpletypes1_sub.py +++ b/tests/validate_simpletypes1_sub.py @@ -27,12 +27,12 @@ from lxml import etree as etree_ import validate_simpletypes2_sup as supermod -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -84,7 +84,8 @@ def get_root_tag(node): def parse(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -104,7 +105,8 @@ def parse(inFilename, silence=False): def parseEtree(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -128,7 +130,8 @@ def parseEtree(inFilename, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -147,7 +150,8 @@ def parseString(inString, silence=False): def parseLiteral(inFilename, silence=False): - doc = parsexml_(inFilename) + parser = None + doc = parsexml_(inFilename, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: diff --git a/tests/validate_simpletypes1_sup.py b/tests/validate_simpletypes1_sup.py index 5f197e9..4d6bc86 100644 --- a/tests/validate_simpletypes1_sup.py +++ b/tests/validate_simpletypes1_sup.py @@ -34,12 +34,12 @@ from lxml import etree as etree_ Validate_simpletypes_ = True -def parsexml_(*args, **kwargs): - if 'parser' not in kwargs: +def parsexml_(infile, parser=None, **kwargs): + if parser is None: # Use the lxml ElementTree compatible parser so that, e.g., # we ignore comments. - kwargs['parser'] = etree_.ETCompatXMLParser() - doc = etree_.parse(*args, **kwargs) + parser = etree_.ETCompatXMLParser() + doc = etree_.parse(infile, parser=parser, **kwargs) return doc # @@ -1417,7 +1417,8 @@ def get_root_tag(node): def parse(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1437,7 +1438,8 @@ def parse(inFileName, silence=False): def parseEtree(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1461,7 +1463,8 @@ def parseEtree(inFileName, silence=False): def parseString(inString, silence=False): from StringIO import StringIO - doc = parsexml_(StringIO(inString)) + parser = None + doc = parsexml_(StringIO(inString), parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: @@ -1480,7 +1483,8 @@ def parseString(inString, silence=False): def parseLiteral(inFileName, silence=False): - doc = parsexml_(inFileName) + parser = None + doc = parsexml_(inFileName, parser) rootNode = doc.getroot() rootTag, rootClass = get_root_tag(rootNode) if rootClass is None: -- GitLab