aboutsummaryrefslogtreecommitdiff
path: root/testmanager/testreporter/views.py
diff options
context:
space:
mode:
authorMilosz Wasilewski <milosz.wasilewski@linaro.org>2014-08-04 15:38:04 +0100
committerMilosz Wasilewski <milosz.wasilewski@linaro.org>2014-08-04 15:38:04 +0100
commitf98cac21e3de11cf0bbeeebbe2a216981af9449e (patch)
tree2d737f304670cfd4e738d373c9fbe8c30d209f17 /testmanager/testreporter/views.py
parentb32e8a6df8df2417894a13d19b7a831a613e5f83 (diff)
testreporter: added support for bug list
Some other changes: - possible to change tag name - progress/loading indication in reports Signed-off-by: Milosz Wasilewski <milosz.wasilewski@linaro.org>
Diffstat (limited to 'testmanager/testreporter/views.py')
-rw-r--r--testmanager/testreporter/views.py35
1 files changed, 32 insertions, 3 deletions
diff --git a/testmanager/testreporter/views.py b/testmanager/testreporter/views.py
index 91f2639..f51e64e 100644
--- a/testmanager/testreporter/views.py
+++ b/testmanager/testreporter/views.py
@@ -22,9 +22,22 @@ from rest_framework.views import APIView
from rest_framework.response import Response
from testmanager.views import LoginRequiredMixin
-from testmanager.testrunner.models import JenkinsBuild, LavaJob, Tag
-from testmanager.testrunner.serializers import BuildSerializer, TagSerializer, LavaJobSerializer
-from testmanager.testmanualrunner.models import TestRun
+from testmanager.testrunner.models import (
+ JenkinsBuild,
+ LavaJob,
+ Tag,
+ Bug
+)
+from testmanager.testrunner.serializers import (
+ BuildSerializer,
+ TagSerializer,
+ LavaJobSerializer,
+ BugSerializer
+)
+from testmanager.testmanualrunner.models import (
+ TestRun,
+ TestRunResult
+)
from testmanager.testmanualrunner.serializers import TestRunSerializer
@@ -51,3 +64,19 @@ class Report_View(APIView):
"testruns": TestRunSerializer(testruns).data,
})
+
+class Report_Bugs_View(APIView):
+
+ def get(self, request, tag_id, format=None):
+
+ tag = Tag.objects.get(id=tag_id)
+ builds = JenkinsBuild.objects.filter(tags=tag)
+ lava_jobs = LavaJob.objects.filter(jenkins_build__in=builds)
+ testruns = TestRun.objects.filter(build__in=builds)
+ testrun_results = TestRunResult.objects.filter(test_run__in=testruns)
+ lava_job_bugs = Bug.objects.filter(lavajob__in=lava_jobs)
+ testruns_bugs = Bug.objects.filter(testrunresult__in=testrun_results)
+
+ return Response({
+ "bugs": BugSerializer(lava_job_bugs | testruns_bugs).data,
+ })