Example #1
0
 def create_app_with_contributors(self, anonymous, registered,
                                  two_tasks=False, name='my_app', hidden=0):
     app = AppFactory.create(name=name, hidden=hidden)
     task = TaskFactory(app=app)
     if two_tasks:
         task2 = TaskFactory(app=app)
     for i in range(anonymous):
         task_run = AnonymousTaskRunFactory(task=task,
                            user_ip='127.0.0.%s' % i)
         if two_tasks:
             task_run2 = AnonymousTaskRunFactory(task=task2,
                            user_ip='127.0.0.%s' % i)
     for i in range(registered):
         user = UserFactory.create()
         task_run = TaskRunFactory(task=task, user=user)
         if two_tasks:
             task_run2 = TaskRunFactory(task=task2, user=user)
     return app
Example #2
0
 def test_parent_results_not_updated(self, mock_client):
     """Test results are not updated if an Annotation has children."""
     task = self.ctx.create_task(1)
     TaskRunFactory(task=task)
     result = self.result_repo.get_by(task_id=task.id)
     result.info = dict(has_children=True)
     self.result_repo.update(result)
     self.base_analyst.analyse(result.id)
     assert_equal(mock_client.create_annotation.called, False)
Example #3
0
 def test_result_with_child_not_updated(self, mock_client):
     """Test that a result is not updated when it has a child."""
     task = self.ctx.create_task(1)
     TaskRunFactory(task=task)
     result = self.result_repo.get_by(task_id=task.id)
     info = dict(annotations='foo', has_children=True)
     result.info = info
     self.result_repo.update(result)
     self.base_analyst.analyse(result.id)
     assert_equal(result.info, info)
Example #4
0
 def test_modified_results_not_updated(self, mock_client):
     """Test results are not updated if an Annotation has been modified."""
     task = self.ctx.create_task(1)
     TaskRunFactory(task=task)
     result = self.result_repo.get_by(task_id=task.id)
     self.base_analyst.analyse(result.id)
     mock_client.search_annotations.return_value = [{
         'modified': 'fake-time'
     }]
     assert_equal(mock_client.create_annotation.called, False)
Example #5
0
 def create_project_with_contributors(self,
                                      anonymous,
                                      registered,
                                      two_tasks=False,
                                      name='my_app',
                                      info={}):
     project = ProjectFactory.create(name=name, info=info)
     task = TaskFactory(project=project)
     if two_tasks:
         task2 = TaskFactory(project=project)
     for i in range(anonymous):
         task_run = AnonymousTaskRunFactory(task=task,
                                            user_ip='127.0.0.%s' % i)
         if two_tasks:
             task_run2 = AnonymousTaskRunFactory(task=task2,
                                                 user_ip='127.0.0.%s' % i)
     for i in range(registered):
         user = UserFactory.create()
         task_run = TaskRunFactory(task=task, user=user)
         if two_tasks:
             task_run2 = TaskRunFactory(task=task2, user=user)
     return project
Example #6
0
    def test_limits_query(self):
        """Test API GET limits works"""
        owner = UserFactory.create()
        for i in range(30):
            app = AppFactory.create(owner=owner)
            task = TaskFactory(app=app)
            taskrun = TaskRunFactory(task=task)

        res = self.app.get('/api/app')
        data = json.loads(res.data)
        assert len(data) == 20, len(data)

        res = self.app.get('/api/app?limit=10')
        data = json.loads(res.data)
        assert len(data) == 10, len(data)

        res = self.app.get('/api/app?limit=10&offset=10')
        data = json.loads(res.data)
        assert len(data) == 10, len(data)
        assert data[0].get('name') == 'My Project number 11', data[0]

        res = self.app.get('/api/task')
        data = json.loads(res.data)
        assert len(data) == 20, len(data)

        res = self.app.get('/api/taskrun')
        data = json.loads(res.data)
        assert len(data) == 20, len(data)

        UserFactory.create_batch(30)

        res = self.app.get('/api/user')
        data = json.loads(res.data)
        assert len(data) == 20, len(data)

        res = self.app.get('/api/user?limit=10')
        data = json.loads(res.data)
        print data
        assert len(data) == 10, len(data)

        res = self.app.get('/api/user?limit=10&offset=10')
        data = json.loads(res.data)
        assert len(data) == 10, len(data)
        assert data[0].get('name') == 'user11', data