Merge "Add stats filtering by host"

This commit is contained in:
Zuul 2018-10-16 22:46:06 +00:00 committed by Gerrit Code Review
commit 42e1278925
2 changed files with 12 additions and 1 deletions

View File

@ -71,6 +71,17 @@ class StatsTestCase(APITestCase):
self.assertEqual(stats.ok, request.data["results"][0]["ok"])
self.assertEqual(host_two.id, request.data["results"][1]["id"])
def test_get_stats_by_host(self):
playbook = factories.PlaybookFactory()
host_one = factories.HostFactory(name="one")
host_two = factories.HostFactory(name="two")
stats = factories.StatsFactory(host=host_one, playbook=playbook, ok=9001)
factories.StatsFactory(host=host_two, playbook=playbook)
request = self.client.get("/api/v1/stats?host=%s" % host_one.id)
self.assertEqual(1, len(request.data["results"]))
self.assertEqual(stats.ok, request.data["results"][0]["ok"])
self.assertEqual(host_one.id, request.data["results"][0]["id"])
def test_get_stats_id(self):
stats = factories.StatsFactory()
request = self.client.get("/api/v1/stats/%s" % stats.id)

View File

@ -87,4 +87,4 @@ class StatsViewSet(viewsets.ModelViewSet):
queryset = models.Stats.objects.all()
serializer_class = serializers.StatsSerializer
filter_backends = (DjangoFilterBackend,)
filter_fields = ("playbook",)
filter_fields = ("playbook", "host")