home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_1919 (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-08-06  |  1.6 KB  |  39 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4. __all__ = [
  5.     'parametric',
  6.     'Parametric']
  7. from twisted.trial.unittest import TestCase
  8.  
  9. def partial(f, *partial_args, **partial_kwargs):
  10.     
  11.     def partial_func(self, *args, **kwargs):
  12.         dikt = dict(kwargs)
  13.         dikt.update(partial_kwargs)
  14.         return f(self, *partial_args + args, **dikt)
  15.  
  16.     return partial_func
  17.  
  18.  
  19. def parametric(f):
  20.     f._parametric = True
  21.     return classmethod(f)
  22.  
  23.  
  24. def Parametric(cls):
  25.     test_generators = _[1]
  26.     test_generators = _[2]
  27.     for test_gen in test_generators:
  28.         test_name = test_gen.func_name
  29.         for n, test_and_params in enumerate(test_gen()):
  30.             test_method = test_and_params[0]
  31.             test_params = test_and_params[1:]
  32.             partial_func = partial(test_method, *test_params)
  33.             partial_func.__name__ = 'test_' + partial_func.__name__
  34.             setattr(cls, test_name + '_%s' % n, partial_func)
  35.         
  36.         test_gen.im_func.func_name = '__done_' + test_name
  37.     
  38.  
  39.