def _create_task(self):
     """Create task"""
     task_id = Tasks.save({
         'project': 'test',
         'service': {
             'name': 'travis_ci',
             'job_id': 15,
         }
     })
     return Tasks.find_one(task_id)
Ejemplo n.º 2
0
 def _create_task(self):
     """Create task"""
     task_id = Tasks.save({
         'project': 'test',
         'service': {
             'name': 'travis_ci',
             'job_id': 15,
         }
     })
     return Tasks.find_one(task_id)
Ejemplo n.º 3
0
 def test_success(self):
     """Test success"""
     task_id = Tasks.save({
         'project': 'test',
         'service': {
             'name': 'token',
             'token': self.project.token,
         }
     })
     data = Tasks.find_one(task_id)
     task_id.should.be.equal(token_service(data))
Ejemplo n.º 4
0
 def get_last_task(self):
     """Get last task"""
     task = Tasks.find_one({
         'project': self.name,
     }, sort=[('created', DESCENDING)], fields={
         name: True for name in (
             'service', 'project', 'commit', 'plot',
             'created', 'status', 'success_percent',
         )
     })
     if task:
         return task
     else:
         raise TaskDoesNotExists()
Ejemplo n.º 5
0
 def test_fail_with_wrong_project(self):
     """Test fail with wrong project"""
     task_id = Tasks.save({
         'project': 'test',
         'service': {
             'name': 'token',
             'token': ProjectFactory().token,
         }
     })
     data = Tasks.find_one(task_id)
     with LogCapture() as log_capture:
         token_service(data).should.be.none
         list(log_capture.actual())[0].should.contain('ERROR')
     Tasks.find({}).count().should.be.equal(0)
Ejemplo n.º 6
0
 def get_task(self):
     """Get task"""
     filter_spec = {
         'project': self.cleaned_data['project'].name,
     }
     if self.cleaned_data.get('commit'):
         filter_spec['commit.hash'] = self.cleaned_data['commit']
     if self.cleaned_data.get('branch'):
         filter_spec['commit.branch'] = self.cleaned_data['branch']
     task = Tasks.find_one(
         filter_spec, sort=[('created', DESCENDING)], fields={
             'status': True,
         },
     )
     if task:
         return task
     else:
         raise TaskDoesNotExists(filter_spec)
Ejemplo n.º 7
0
 def get_task(self):
     """Get task"""
     filter_spec = {
         'project': self.cleaned_data['project'].name,
     }
     if self.cleaned_data.get('commit'):
         filter_spec['commit.hash'] = self.cleaned_data['commit']
     if self.cleaned_data.get('branch'):
         filter_spec['commit.branch'] = self.cleaned_data['branch']
     task = Tasks.find_one(
         filter_spec,
         sort=[('created', DESCENDING)],
         fields={
             'status': True,
         },
     )
     if task:
         return task
     else:
         raise TaskDoesNotExists(filter_spec)
Ejemplo n.º 8
0
    def update_quality_game(self, task):
        """Update quality game"""
        previous = Tasks.find_one({
            'commit.branch': task['commit']['branch'],
            'created': {'$lt': task['created']},
        })
        if not previous:
            return

        game = self._get_or_create_quality_game()
        game['total'] = self._update_quality_object(
            game['total'], task,
            task.get('success_percent', 0) >=
            previous.get('success_percent', 0),
        )
        for violation in task['violations']:
            is_better = violation.get('success_percent', 0) >=\
                self._get_violation_success_percent(task, violation['name'])
            game['violations'][violation['name']] =\
                self._update_quality_object(
                    game['violations'].get(violation['name'], {}), task,
                    is_better,
                )
        QualityGame.save(game)