Add task filtering by playbook id
Change-Id: Ibcafe4ad574a7a55c48b99a38f23702f10f2c8a1
This commit is contained in:
parent
864e0b481b
commit
85e76d68db
@ -125,6 +125,15 @@ class TaskTestCase(APITestCase):
|
|||||||
request = self.client.get("/api/v1/tasks/%s" % task.id)
|
request = self.client.get("/api/v1/tasks/%s" % task.id)
|
||||||
self.assertEqual(task.name, request.data["name"])
|
self.assertEqual(task.name, request.data["name"])
|
||||||
|
|
||||||
|
def test_get_tasks_by_playbook(self):
|
||||||
|
playbook = factories.PlaybookFactory()
|
||||||
|
task = factories.TaskFactory(name="task1", playbook=playbook)
|
||||||
|
factories.TaskFactory(name="task2", playbook=playbook)
|
||||||
|
request = self.client.get("/api/v1/tasks?playbook=%s" % playbook.id)
|
||||||
|
self.assertEqual(2, len(request.data["results"]))
|
||||||
|
self.assertEqual(task.name, request.data["results"][0]["name"])
|
||||||
|
self.assertEqual("task2", request.data["results"][1]["name"])
|
||||||
|
|
||||||
def test_get_task_duration(self):
|
def test_get_task_duration(self):
|
||||||
started = timezone.now()
|
started = timezone.now()
|
||||||
ended = started + datetime.timedelta(hours=1)
|
ended = started + datetime.timedelta(hours=1)
|
||||||
|
@ -55,6 +55,8 @@ class PlayViewSet(viewsets.ModelViewSet):
|
|||||||
class TaskViewSet(viewsets.ModelViewSet):
|
class TaskViewSet(viewsets.ModelViewSet):
|
||||||
queryset = models.Task.objects.all()
|
queryset = models.Task.objects.all()
|
||||||
serializer_class = serializers.TaskSerializer
|
serializer_class = serializers.TaskSerializer
|
||||||
|
filter_backends = (DjangoFilterBackend,)
|
||||||
|
filter_fields = ("playbook",)
|
||||||
|
|
||||||
|
|
||||||
class HostViewSet(viewsets.ModelViewSet):
|
class HostViewSet(viewsets.ModelViewSet):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user