10 BaseTest.__init__(self)
17 Parse a QMTest XML test description (.qmt file) to initialize the test 20 log = logging.getLogger(
'QMTest.XMLParser')
21 import xml.etree.ElementTree
as ET
22 log.debug(
'parsing %s', path)
25 os.path.relpath(path, self.
basedir).replace(
'.qmt',
'').replace(
26 '.qms',
'').split(os.sep))
29 for child
in tree.getroot():
30 name = child.attrib[
'name']
31 if hasattr(self, name):
32 log.debug(
'setting %s', name)
34 if name
in (
'args',
'unsupported_platforms'):
36 [el.text
for el
in value.findall(
'text')])
37 elif name ==
'environment':
42 for el
in value.findall(
'text')))
46 if value.tag ==
'integer':
48 setattr(self, name, data)
53 class CallWrapper(object):
55 Small wrapper class to dynamically bind some default arguments 59 def __init__(self, callable, extra_args={}):
63 from inspect
import getargspec
70 def __call__(self, *args, **kwargs):
78 if a
not in positional
and a
not in kwargs:
80 return self.
callable(*args, **kwargs)
100 "findReferenceBlock":
106 "validateWithReference":
120 "checkTTreesSummaries":
126 "checkHistosSummaries":
134 exec (self.
validator, globals(), exported_symbols)
135 return result, self.
causes 137 return super(QMTTest, self).
ValidateOutput(stdout, stderr, result)
def XMLParser(self, path)
def validateWithReference(self, stdout=None, stderr=None, result=None, causes=None, preproc=None)
def ValidateOutput(self, stdout, stderr, result)
def countErrorLines(self, expected={ 'ERROR':0, 'FATAL':0 }, stdout=None, result=None, causes=None)
def __init__(self, path=None)
def _expandReferenceFileName(self, reffile)
def findReferenceBlock(self, reference=None, stdout=None, result=None, causes=None, signature_offset=0, signature=None, id=None)
def CheckHistosSummaries(self, stdout=None, result=None, causes=None, dict=None, ignore=None)
def CheckTTreesSummaries(self, stdout=None, result=None, causes=None, trees_dict=None, ignore=r"Basket|.*size|Compression")