GaudiTesting.BaseTest.ReferenceFileValidator Class Reference

Public Member Functions

def __init__
 
def __call__ (self, stdout, result)
 
def __init__
 
def __call__ (self, stdout, result)
 

Public Attributes

 reffile
 
 cause
 
 result_key
 
 preproc
 

Detailed Description

Definition at line 821 of file BaseTest.py.

Constructor & Destructor Documentation

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

Definition at line 822 of file BaseTest.py.

822  def __init__(self,reffile, cause, result_key, preproc=normalizeExamples):
823  self.reffile = os.path.expandvars(reffile)
824  self.cause=cause
825  self.result_key = result_key
826  self.preproc = preproc
827 
def GaudiTesting.BaseTest.ReferenceFileValidator.__init__ (   self,
  reffile,
  cause,
  result_key,
  preproc = normalizeExamples 
)

Definition at line 822 of file BaseTest.py.

822  def __init__(self,reffile, cause, result_key, preproc=normalizeExamples):
823  self.reffile = os.path.expandvars(reffile)
824  self.cause=cause
825  self.result_key = result_key
826  self.preproc = preproc
827 

Member Function Documentation

def GaudiTesting.BaseTest.ReferenceFileValidator.__call__ (   self,
  stdout,
  result 
)

Definition at line 828 of file BaseTest.py.

828  def __call__(self,stdout, result) :
829  causes=[]
830  if os.path.isfile(self.reffile):
831  orig=open(self.reffile).xreadlines()
832  if self.preproc:
833  orig = self.preproc(orig)
834  else:
835  orig = []
836  new = stdout.splitlines()
837  if self.preproc:
838  new = self.preproc(new)
839 
840  diffs = difflib.ndiff(orig,new,charjunk=difflib.IS_CHARACTER_JUNK)
841  filterdiffs = map(lambda x: x.strip(),filter(lambda x: x[0] != " ",diffs))
842  if filterdiffs:
843  result[self.result_key] = result.Quote("\n".join(filterdiffs))
844  result[self.result_key] += result.Quote("""
845  Legend:
846  -) reference file
847  +) standard output of the test""")
848  causes.append(self.cause)
849  return causes
850 
struct GAUDI_API map
Parametrisation class for map-like implementation.
def __call__(self, stdout, result)
Definition: BaseTest.py:828
def GaudiTesting.BaseTest.ReferenceFileValidator.__call__ (   self,
  stdout,
  result 
)

Definition at line 828 of file BaseTest.py.

828  def __call__(self,stdout, result) :
829  causes=[]
830  if os.path.isfile(self.reffile):
831  orig=open(self.reffile).xreadlines()
832  if self.preproc:
833  orig = self.preproc(orig)
834  else:
835  orig = []
836  new = stdout.splitlines()
837  if self.preproc:
838  new = self.preproc(new)
839 
840  diffs = difflib.ndiff(orig,new,charjunk=difflib.IS_CHARACTER_JUNK)
841  filterdiffs = map(lambda x: x.strip(),filter(lambda x: x[0] != " ",diffs))
842  if filterdiffs:
843  result[self.result_key] = result.Quote("\n".join(filterdiffs))
844  result[self.result_key] += result.Quote("""
845  Legend:
846  -) reference file
847  +) standard output of the test""")
848  causes.append(self.cause)
849  return causes
850 
struct GAUDI_API map
Parametrisation class for map-like implementation.
def __call__(self, stdout, result)
Definition: BaseTest.py:828

Member Data Documentation

GaudiTesting.BaseTest.ReferenceFileValidator.cause

Definition at line 824 of file BaseTest.py.

GaudiTesting.BaseTest.ReferenceFileValidator.preproc

Definition at line 826 of file BaseTest.py.

GaudiTesting.BaseTest.ReferenceFileValidator.reffile

Definition at line 823 of file BaseTest.py.

GaudiTesting.BaseTest.ReferenceFileValidator.result_key

Definition at line 825 of file BaseTest.py.


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