Merge "Add host filtering by playbook id"
This commit is contained in:
commit
2d2942f0ec
|
@ -97,3 +97,12 @@ class HostTestCase(APITestCase):
|
||||||
host = factories.HostFactory()
|
host = factories.HostFactory()
|
||||||
request = self.client.get("/api/v1/hosts/%s" % host.id)
|
request = self.client.get("/api/v1/hosts/%s" % host.id)
|
||||||
self.assertEqual(host.name, request.data["name"])
|
self.assertEqual(host.name, request.data["name"])
|
||||||
|
|
||||||
|
def test_get_hosts_by_playbook(self):
|
||||||
|
playbook = factories.PlaybookFactory()
|
||||||
|
host = factories.HostFactory(name="host1", playbook=playbook)
|
||||||
|
factories.HostFactory(name="host2", playbook=playbook)
|
||||||
|
request = self.client.get("/api/v1/hosts?playbook=%s" % playbook.id)
|
||||||
|
self.assertEqual(2, len(request.data["results"]))
|
||||||
|
self.assertEqual(host.name, request.data["results"][0]["name"])
|
||||||
|
self.assertEqual("host2", request.data["results"][1]["name"])
|
||||||
|
|
|
@ -62,6 +62,8 @@ class TaskViewSet(viewsets.ModelViewSet):
|
||||||
class HostViewSet(viewsets.ModelViewSet):
|
class HostViewSet(viewsets.ModelViewSet):
|
||||||
queryset = models.Host.objects.all()
|
queryset = models.Host.objects.all()
|
||||||
serializer_class = serializers.HostSerializer
|
serializer_class = serializers.HostSerializer
|
||||||
|
filter_backends = (DjangoFilterBackend,)
|
||||||
|
filter_fields = ("playbook",)
|
||||||
|
|
||||||
|
|
||||||
class ResultViewSet(viewsets.ModelViewSet):
|
class ResultViewSet(viewsets.ModelViewSet):
|
||||||
|
|
Loading…
Reference in New Issue