The Gaudi Framework  v32r2 (46d42edc)
GaudiTest.ReferenceFileValidator Class Reference

Public Member Functions

def __init__ (self, reffile, cause, result_key, preproc=normalizeExamples)
 
def __call__ (self, stdout, result)
 

Public Attributes

 reffile
 
 cause
 
 result_key
 
 preproc
 

Detailed Description

Definition at line 670 of file GaudiTest.py.

Constructor & Destructor Documentation

◆ __init__()

def GaudiTest.ReferenceFileValidator.__init__ (   self,
  reffile,
  cause,
  result_key,
  preproc = normalizeExamples 
)

Definition at line 671 of file GaudiTest.py.

671  def __init__(self, reffile, cause, result_key, preproc=normalizeExamples):
672  self.reffile = os.path.expandvars(reffile)
673  self.cause = cause
674  self.result_key = result_key
675  self.preproc = preproc
676 

Member Function Documentation

◆ __call__()

def GaudiTest.ReferenceFileValidator.__call__ (   self,
  stdout,
  result 
)

Definition at line 677 of file GaudiTest.py.

677  def __call__(self, stdout, result):
678  causes = []
679  if os.path.isfile(self.reffile):
680  orig = open(self.reffile).readlines()
681  if self.preproc:
682  orig = self.preproc(orig)
683  else:
684  orig = []
685 
686  new = stdout.splitlines()
687  if self.preproc:
688  new = self.preproc(new)
689  #open(self.reffile + ".test","w").writelines(new)
690  diffs = difflib.ndiff(orig, new, charjunk=difflib.IS_CHARACTER_JUNK)
691  filterdiffs = map(lambda x: x.strip(),
692  filter(lambda x: x[0] != " ", diffs))
693  #filterdiffs = [x.strip() for x in diffs]
694  if filterdiffs:
695  result[self.result_key] = result.Quote("\n".join(filterdiffs))
696  result[self.result_key] += result.Quote("""
697 Legend:
698  -) reference file
699  +) standard output of the test""")
700  causes.append(self.cause)
701 
702  return causes
703 
704 
struct GAUDI_API map
Parametrisation class for map-like implementation.

Member Data Documentation

◆ cause

GaudiTest.ReferenceFileValidator.cause

Definition at line 673 of file GaudiTest.py.

◆ preproc

GaudiTest.ReferenceFileValidator.preproc

Definition at line 675 of file GaudiTest.py.

◆ reffile

GaudiTest.ReferenceFileValidator.reffile

Definition at line 672 of file GaudiTest.py.

◆ result_key

GaudiTest.ReferenceFileValidator.result_key

Definition at line 674 of file GaudiTest.py.


The documentation for this class was generated from the following file: