Ejemplo n.º 1
0
    def test_api_build_id_returns_corrent_information(self):
        """ Verifies that when a build is running, returns the status of that
        build and otherwise returns clear."""

        build = Build()
        build.save()

        response = self.client.get('/builds/%s' % str(build._id))

        self.assertEqual(build._id, ObjectId(response.json['_id']['$oid']))
Ejemplo n.º 2
0
    def test_api_build_status_wrong_id(self):
        """ Verifies that an error is returned if an invalid ID is passed to
        the build_status endpoint """


        build = Build()
        build.save()

        response = self.client.get('/builds/%s' % '1234')

        self.assertEqual(response.json['error'], 'Invalid Build ID')
Ejemplo n.º 3
0
    def test_api_builds_returned_corrent(self):
        """ Verifies that build statuses returned match initial set."""

        builds = []
        for i in range(5):
            build = Build()
            build.save()
            builds.append(str(build._id))

        response = self.client.get('/builds')

        self.assertEqual(len(response.json), 5)

        for b in response.json:
            self.assertTrue(builds.count(json.loads(b)['_id']['$oid']) == 1)
Ejemplo n.º 4
0
    def test_api_rebuilds(self):
        """ Verifies that after adding a failing test, build that passed build()
        now fails."""

        build = Build()
        build.status = 2
        build.save()

        response = self.client.post('/builds/new', data=dict(build_id=str(build._id)))

        api.worker.join()

        build.reload()

        self.assertEqual(build.status, 1)
        self.assertTrue(api.worker.current_build is None)
        self.assertEqual(response.json['id'], str(build._id))
Ejemplo n.º 5
0
    def test_api_blame_list(self):
        """ Verifies that the data returned is the same as data stored"""

        for i in range(15):
            build = Build()
            build.status = 2
            if i < 5:
                build.author.name = 'jessepollak'
            elif i < 10:
                build.author.name = 'dunvi'
            else:
                build.author.name = 'brennenbyrne'

            build.save()

        response = self.client.get('/blame')

        self.assertEqual(response.json['brennenbyrne'], 5)
        self.assertEqual(response.json['jessepollak'], 5)
        self.assertEqual(response.json['dunvi'], 5)