1  from buildbot.steps.shell import ShellCommand 
 2  from buildbot.status.builder import Event, SUCCESS, FAILURE 
 3   
 4 -class MaxQ(ShellCommand): 
  5      flunkOnFailure = True 
 6      name = "maxq" 
 7   
 8 -    def __init__(self, testdir=None, **kwargs): 
  9          if not testdir: 
10              raise TypeError("please pass testdir") 
11          kwargs['command'] = 'run_maxq.py %s' % (testdir,) 
12          ShellCommand.__init__(self, **kwargs) 
13          self.addFactoryArguments(testdir=testdir) 
 14   
16          evt = Event("yellow", ['running', 'maxq', 'tests'], 
17                      files={'log': self.log}) 
18          self.setCurrentActivity(evt) 
 19   
20   
22          self.failures = 0 
23          if rc: 
24              self.failures = 1 
25          output = self.log.getAll() 
26          self.failures += output.count('\nTEST FAILURE:') 
27   
28          result = (SUCCESS, ['maxq']) 
29   
30          if self.failures: 
31              result = (FAILURE, [str(self.failures), 'maxq', 'failures']) 
32   
33          return self.stepComplete(result) 
 34   
36          if self.failures: 
37              text = ["maxq", "failed"] 
38          else: 
39              text = ['maxq', 'tests'] 
40          self.updateCurrentActivity(text=text) 
41          self.finishStatusSummary() 
42          self.finishCurrentActivity() 
  43