Changeset 256

Show
Ignore:
Timestamp:
Mon Aug 21 15:40:42 2006
Author:
drew
Message:

- support for globs in test module

Files:

Legend:

Unmodified
Added
Removed
Modified
  • trunk/setup.py

    r253 r256  
    19 19     description='',  
    20 20     url='http://www.cc.gatech.edu/ugrads/d/dpaces/',  
    21       packages=['xix', 'xix.utils', 'xix.utils.comp'],  
      21     packages=['xix', 'xix.utils', 'xix.utils.comp', 'xix.utils.tools'],  
    21 21     package_dir={'xix': 'xix'},  
    22 22     package_data={'xix': ['*.cfg']},  
  • trunk/xix/utils/test.py

    r254 r256  
    4 4 import doctest  
    5 5 import os  
      6 from UserDict import UserDict  
    6 7  
    7 8 __author__ = 'Drew Smathers'  
     
    15 16     each test can be derived based on naming convention:  
    16 17  
    17       Example_docttest.txt (filename)  
    18       Example_docttest_setUp (setUp function name in mod)  
    19       Example_docttest_tearDown (tearDown function name in mod)  
      18        Example_docttest.txt (filename)  
      19        Example_docttest_setUp (setUp function name in mod)  
      20        Example_docttest_tearDown (tearDown function name in mod)  
      21        Example_docttest_globs (dictionary of globals in mod)  
    20 22      
    21 23     Note. test directories are not relative to module, but relative to location  
     
    47 49             if self.mod:  
    48 50                 name = '.'.join((os.path.split(docfile)[1]).split('.')[:-1])  
    49                   for arg in ('setUp', 'tearDown'):  
    50                       kwargs[arg] = getattr(self.mod, name + '_' + arg, lambda test : None)  
      51                 for bad in ('-', '.'):  
      52                     name = name.replace(bad, '_')  
      53                 func = lambda test : None  
      54                 globs = {}  
      55                 for arg, default in (('setUp', func), ('tearDown', func), ('globs', globs)):  
      56                     kwargs[arg] = getattr(self.mod, name + '_' + arg, default)  
    51 57             suite = doctest.DocFileSuite(docfile, module_relative=False, **kwargs)  
    52 58             suites.append(suite)  
     
    56 62         for test in self.suites:  
    57 63             suite.addTest(test)  
    58                
      64  
      65