Package qm :: Package test :: Package classes :: Module file :: Class FileContentsTest
[hide private]
[frames] | no frames]

Class FileContentsTest

source code

         object --+            
                  |            
extension.Extension --+        
                      |        
      runnable.Runnable --+    
                          |    
                  test.Test --+
                              |
                             FileContentsTest

Check that the contents of a file match the expected value.

A 'FileContentsTest' examines the contents of a file. The test passes if and only if the contents exactly match the expected value.

The path to the file itself is not specified explicitly in the test. Instead, it is taken from a contex property; the name of that variable is specified in the **Path Property** field.

Optionally, the test may specify one or more substitutions. Each substitution consists of a regular expression pattern and a replacement string. Both the actual file contents and the expected file contents are processed with these substitutions, with all pattern matches replaced with the corresponding substitutions, before the comparison is performed.

Nested Classes [hide private]

Inherited from test.Test: OutcomeField, TestField

Inherited from runnable.Runnable: ResourceField

Inherited from extension.Extension: Type, __metaclass__

Instance Methods [hide private]
 
Run(self, context, result)
Run the test.
source code
 
__PerformSubstitutions(self, text)
Perform substitutions on a body of text.
source code

Inherited from test.Test: GetTargetGroup

Inherited from runnable.Runnable: GetAttachments, GetDatabase, GetId, __init__

Inherited from extension.Extension: GetClassName, GetExplicitArguments, MakeDomDocument, MakeDomElement, Write, __getattr__

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]
  arguments = [qm.fields.TextField(name= "path_property", title=...
A list of the arguments to the extension class.

Inherited from test.Test: PREREQUISITES_FIELD_ID, kind

Inherited from runnable.Runnable: EXTRA_DATABASE, EXTRA_ID, RESOURCE_FIELD_ID, resources

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

Run(self, context, result)

source code 

Run the test.

'context' -- A 'Context' giving run-time parameters to the test.

'result' -- A 'Result' object. The outcome will be 'Result.PASS' when this method is called. The 'result' may be modified by this method to indicate outcomes other than 'Result.PASS' or to add annotations.

This method should not return a value.

Derived classes must override this method.

Overrides: test.Test.Run
(inherited documentation)

__PerformSubstitutions(self, text)

source code 

Perform substitutions on a body of text.

returns -- The string 'text', processed with the substitutions configured for this test instance.


Class Variable Details [hide private]

arguments

A list of the arguments to the extension class.

Each element of this list should be an instance of 'Field'. The 'Field' instance describes the argument.

Derived classes may redefine this class variable. However, derived classes should not explicitly include the arguments from base classes; QMTest will automatically combine all the arguments found throughout the class hierarchy.

Value:
[qm.fields.TextField(name= "path_property", title= "Path Property", de\
scription= """The context property naming the file.

            The context property given here will contain the path name
            of the file.""", not_empty_text= 1, default_value= "path")\
, qm.fields.TextField(name= "expected_contents", title= "Expected Cont\
ents", description= """The expected contents of the file.""", verbatim\
= "true", multiline= "true", default_value= ""), qm.fields.SetField(Su\
...