Changeset 93

Show
Ignore:
Timestamp:
07/12/06 15:24:46 (2 years ago)
Author:
robin
Message:

test harness improvements

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • slavetools/trunk/lib/slavetools/optionsapi.py

    r87 r93  
    147147        optparsekwopts = {} 
    148148    parser=optparse.OptionParser(**optparsekwopts) 
     149    if len(optlists)==1: 
     150        add_options(parser, optlists[0]) 
     151        return parser 
    149152    add_options(parser, reduce(update_options, optlists)) 
    150153    return parser 
  • slavetools/trunk/lib/slavetools/slaveplug.py

    r91 r93  
    7676from slavetools.slaveapi_posix import read_pidfile, pidfile_name 
    7777from slavetools.slaveapi_posix import kill_posix, pollpid_posix, launch_process 
     78 
     79def with_slaveplug(**kw): 
     80    def decorate(f): 
     81        for k in kw: 
     82            setattr(f, k, kw[k]) 
     83        return f 
     84    return decorate 
    7885 
    7986PRUNE_SLAVE_LONGOPTS=['--dont-forward-opts'] 
     
    249256            log = logging.getLogger(self.LOGCHAN) 
    250257            options = self.slave_known_options 
     258            for k,v in getattr(candidate, 'slave_forceoptions', {} 
     259                    ).iteritems(): 
     260                setattr(options, k,v) 
    251261            args=self.prepare_slave_program(slave_program) 
     262            for k,forward in getattr(candidate, 'slave_forwardoptions', {} 
     263                    ).iteritems(): 
     264                if not forward: 
     265                    continue 
     266                v = getattr(options, k, None) 
     267                if v is True: 
     268                    args.append('--%s' % k) 
     269                elif v not in [False, None]: 
     270                    args.append('--%s=%s' % (k, str(v))) 
    252271            pid=[-1] 
    253272            def setup(): 
     
    269288        self.log.info("selecting:%s" % function.__name__) 
    270289        return False 
    271  
    272     def prepareTest(self, test): 
    273         self.log.info('preparing test %s' % test) 
    274         return test 
    275290 
    276291    def _getprefixedattr(self, options, attr): 
     
    298313        return self.slave_args and [self.slave_args] or [] 
    299314 
    300     def prepare_slave_options(self): 
     315    def prepare_slave_options(self, options=None): 
    301316        """return the *exact* list of args you wish to insert 
    302317