Add play filtering by playbook id

Change-Id: Ic863b9bd9323dc13b31b8a700be9fe429a69774d
This commit is contained in:
David Moreau Simard 2018-10-16 10:16:17 -04:00
parent fef942b62f
commit 70f248c24f
No known key found for this signature in database
GPG Key ID: CBEB466764A9E621
2 changed files with 9 additions and 0 deletions

View File

@ -89,6 +89,13 @@ class PlayTestCase(APITestCase):
request = self.client.get("/api/v1/plays/%s" % play.id)
self.assertEqual(play.name, request.data["name"])
def test_get_play_by_playbook(self):
play = factories.PlayFactory(name="play1")
factories.PlayFactory(name="play2")
request = self.client.get("/api/v1/plays?playbook=1")
self.assertEqual(1, len(request.data["results"]))
self.assertEqual(play.name, request.data["results"][0]["name"])
def test_get_play_duration(self):
started = timezone.now()
ended = started + datetime.timedelta(hours=1)

View File

@ -48,6 +48,8 @@ class PlaybookFilesDetail(NestedViewSetMixin, viewsets.ModelViewSet):
class PlayViewSet(viewsets.ModelViewSet):
queryset = models.Play.objects.all()
serializer_class = serializers.PlaySerializer
filter_backends = (DjangoFilterBackend,)
filter_fields = ("playbook",)
class TaskViewSet(viewsets.ModelViewSet):