Пример #1
0
    def _Poll(self):
        if not self._task_ids:
            self._StartTask()
            return

        isolate_hashes = []
        for task_id in self._task_ids:
            result = swarming_service.Task(task_id).Result()

            if 'bot_id' in result:
                # Set bot_id to pass the info back to the Quest.
                self._bot_ids.append(result['bot_id'])

            if result['state'] == 'PENDING' or result['state'] == 'RUNNING':
                return

            if result['state'] != 'COMPLETED':
                raise SwarmingTaskError(task_id, result['state'])

            if result['failure']:
                raise SwarmingTestError(task_id, result['exit_code'])

            isolate_hashes.append(result['outputs_ref']['isolated'])

        result_arguments = {'isolate_hashes': tuple(isolate_hashes)}
        self._Complete(result_arguments=result_arguments)
Пример #2
0
 def testStdout(self):
   self._Set200ReturnValue()
   response = swarming_service.Task('task_id').Stdout()
   self._Assert200Response(response)
   self._AssertRequestMade('task/task_id/stdout', 'GET')
Пример #3
0
 def testResultWithPerformanceStats(self):
   self._Set200ReturnValue()
   response = swarming_service.Task('task_id').Result(True)
   self._Assert200Response(response)
   self._AssertRequestMade(
       'task/task_id/result?include_performance_stats=true', 'GET')
Пример #4
0
 def testCancel(self):
   self._Set200ReturnValue()
   response = swarming_service.Task('task_id').Cancel()
   self._Assert200Response(response)
   self._AssertRequestMade('task/task_id/cancel', 'POST')
Пример #5
0
 def testStdout(self):
     response = swarming_service.Task('task_id').Stdout()
     self._AssertCorrectResponse(response)
     self._AssertRequestMadeOnce('task/task_id/stdout')
Пример #6
0
 def testResultWithPerformanceStats(self):
     response = swarming_service.Task('task_id').Result(True)
     self._AssertCorrectResponse(response)
     self._AssertRequestMadeOnce('task/task_id/result',
                                 include_performance_stats=True)
Пример #7
0
 def testCancel(self):
     response = swarming_service.Task('task_id').Cancel()
     self._AssertCorrectResponse(response)
     self._AssertRequestMadeOnce('task/task_id/cancel', method='POST')
Пример #8
0
 def testResult(self):
     self._Set200ReturnValue()
     response = swarming_service.Task('task_id').Result()
     self._Assert200Response(response)
     self._AssertRequestMadeOnce('task/task_id/result', method='GET')