[Patchew-devel] [PATCH 8/9] rest: add testing capabilities to the projects

Paolo Bonzini pbonzini at redhat.com
Sat Aug 18 14:10:32 UTC 2018


Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
---
 api/rest.py     | 7 +++++++
 mods/testing.py | 8 +++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/api/rest.py b/api/rest.py
index 22d7c98..4132e38 100644
--- a/api/rest.py
+++ b/api/rest.py
@@ -173,6 +173,13 @@ class ProjectSerializer(serializers.HyperlinkedModelSerializer):
     series = HyperlinkedIdentityField(view_name='series-list', lookup_field='pk',
                                        lookup_url_kwarg='projects_pk')
 
+    def get_fields(self):
+        fields = super(ProjectSerializer, self).get_fields()
+        request = self.context['request']
+        dispatch_module_hook("rest_project_fields_hook", request=request,
+                             fields=fields)
+        return fields
+
 class ProjectsViewSet(viewsets.ModelViewSet):
     queryset = Project.objects.all().order_by('id')
     serializer_class = ProjectSerializer
diff --git a/mods/testing.py b/mods/testing.py
index 98216d4..e68ab11 100644
--- a/mods/testing.py
+++ b/mods/testing.py
@@ -20,7 +20,7 @@ import math
 from api.views import APILoginRequiredView
 from api.models import (Message, MessageProperty, MessageResult,
         Project, ProjectResult, Result)
-from api.rest import reverse_detail
+from api.rest import PluginMethodField, reverse_detail
 from api.search import SearchEngine
 from event import emit_event, declare_event, register_handler
 from patchew.logviewer import LogView
@@ -385,6 +385,12 @@ class TestingModule(PatchewModule):
             ret[name] = v
         return ret
 
+    def get_testing_probes(self, project, request, format):
+        return self.get_capability_probes(project)
+
+    def rest_project_fields_hook(self, request, fields):
+        fields['testing_probes'] = PluginMethodField(obj=self)
+
     def tester_check_in(self, project, tester):
         assert project
         assert tester
-- 
2.17.1





More information about the Patchew-devel mailing list