Signed-off-by: Stephen Finucane <step...@that.guru> --- patchwork/tests/test_rest_api.py | 36 ++++++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-)
diff --git a/patchwork/tests/test_rest_api.py b/patchwork/tests/test_rest_api.py index 14e53b28..87112d9f 100644 --- a/patchwork/tests/test_rest_api.py +++ b/patchwork/tests/test_rest_api.py @@ -493,7 +493,8 @@ class TestCoverLetterAPI(APITestCase): self.assertEqual(status.HTTP_200_OK, resp.status_code) self.assertEqual(0, len(resp.data)) - cover_obj = create_cover() + project_obj = create_project(linkname='myproject') + cover_obj = create_cover(project=project_obj) # anonymous user resp = self.client.get(self.api_url()) @@ -509,6 +510,12 @@ class TestCoverLetterAPI(APITestCase): self.assertEqual(1, len(resp.data)) self.assertSerialized(cover_obj, resp.data[0]) + # test filtering by project + resp = self.client.get(self.api_url(), {'project': 'myproject'}) + self.assertEqual([cover_obj.id], [x['id'] for x in resp.data]) + resp = self.client.get(self.api_url(), {'project': 'invalidproject'}) + self.assertEqual(0, len(resp.data)) + def test_detail(self): """Validate we can get a specific cover letter.""" cover_obj = create_cover() @@ -567,13 +574,14 @@ class TestSeriesAPI(APITestCase): self.assertEqual(status.HTTP_200_OK, resp.status_code) self.assertEqual(0, len(resp.data)) - series = create_series() + project_obj = create_project(linkname='myproject') + series_obj = create_series(project=project_obj) # anonymous user resp = self.client.get(self.api_url()) self.assertEqual(status.HTTP_200_OK, resp.status_code) self.assertEqual(1, len(resp.data)) - self.assertSerialized(series, resp.data[0]) + self.assertSerialized(series_obj, resp.data[0]) # authenticated user user = create_user() @@ -581,7 +589,13 @@ class TestSeriesAPI(APITestCase): resp = self.client.get(self.api_url()) self.assertEqual(status.HTTP_200_OK, resp.status_code) self.assertEqual(1, len(resp.data)) - self.assertSerialized(series, resp.data[0]) + self.assertSerialized(series_obj, resp.data[0]) + + # test filtering by project + resp = self.client.get(self.api_url(), {'project': 'myproject'}) + self.assertEqual([series_obj.id], [x['id'] for x in resp.data]) + resp = self.client.get(self.api_url(), {'project': 'invalidproject'}) + self.assertEqual(0, len(resp.data)) def test_detail(self): """Validate we can get a specific series.""" @@ -747,8 +761,11 @@ class TestBundleAPI(APITestCase): self.assertEqual(0, len(resp.data)) user = create_user() - bundle_public = create_bundle(public=True, owner=user) - bundle_private = create_bundle(public=False, owner=user) + project = create_project(linkname='myproject') + bundle_public = create_bundle(public=True, owner=user, + project=project) + bundle_private = create_bundle(public=False, owner=user, + project=project) # anonymous users # should only see the public bundle @@ -768,6 +785,13 @@ class TestBundleAPI(APITestCase): resp.data, [bundle_public, bundle_private]): self.assertSerialized(bundle_obj, bundle_rsp) + # test filtering by project + resp = self.client.get(self.api_url(), {'project': 'myproject'}) + self.assertEqual([bundle_public.id, bundle_private.id], + [x['id'] for x in resp.data]) + resp = self.client.get(self.api_url(), {'project': 'invalidproject'}) + self.assertEqual(0, len(resp.data)) + def test_detail(self): """Validate we can get a specific bundle.""" bundle = create_bundle(public=True) -- 2.14.3 _______________________________________________ Patchwork mailing list Patchwork@lists.ozlabs.org https://lists.ozlabs.org/listinfo/patchwork