From 9323e65469f769ba3ea26e3f08de6a2cab152e50 Mon Sep 17 00:00:00 2001 From: Samuel Gaist <samuel.gaist@idiap.ch> Date: Wed, 22 Apr 2020 17:35:33 +0200 Subject: [PATCH] [dataformats][tests] Add tests for field query string handling of PUT --- beat/web/dataformats/tests/tests_api.py | 49 ++++++++++++++++++++----- 1 file changed, 40 insertions(+), 9 deletions(-) diff --git a/beat/web/dataformats/tests/tests_api.py b/beat/web/dataformats/tests/tests_api.py index 56f639975..2fd790834 100644 --- a/beat/web/dataformats/tests/tests_api.py +++ b/beat/web/dataformats/tests/tests_api.py @@ -537,7 +537,7 @@ class DataFormatUpdate(DataFormatsAPIBase): self.checkResponse(response, 403) - def test_successfull_update(self): + def test_successful_update(self): self.login_johndoe() response = self.client.put( @@ -559,7 +559,38 @@ class DataFormatUpdate(DataFormatsAPIBase): declaration = json.load(f) self.assertEqual(declaration["value"], "float64") - def test_successfull_update_of_description_only(self): + def test_successful_update_with_specific_return_field(self): + self.login_johndoe() + + response = self.client.put( + self.url, + json.dumps({"description": "blah", "declaration": {"value": "float64"}}), + content_type="application/json", + QUERY_STRING="fields=description", + ) + + self.checkResponse(response, 200, content_type="application/json") + answer = response.json() + self.assertEqual(len(answer), 1) + self.assertTrue("description" in answer) + + def test_successful_update_with_specific_return_several_fields(self): + self.login_johndoe() + + response = self.client.put( + self.url, + json.dumps({"description": "blah", "declaration": {"value": "float64"}}), + content_type="application/json", + QUERY_STRING="fields=declaration,description", + ) + + self.checkResponse(response, 200, content_type="application/json") + answer = response.json() + self.assertEqual(len(answer), 2) + self.assertTrue("declaration" in answer) + self.assertTrue("description" in answer) + + def test_successful_update_of_description_only(self): self.login_johndoe() response = self.client.put( @@ -573,7 +604,7 @@ class DataFormatUpdate(DataFormatsAPIBase): dataformat = DataFormat.objects.get(author__username="johndoe", name="format1") self.assertEqual(dataformat.description, b"blah") - def test_successfull_update_of_declaration_only(self): + def test_successful_update_of_declaration_only(self): self.login_johndoe() response = self.client.put( @@ -594,7 +625,7 @@ class DataFormatUpdate(DataFormatsAPIBase): declaration = json.load(f) self.assertEqual(declaration["value"], "float64") - def test_successfull_update_of_declaration__extension_addition(self): + def test_successful_update_of_declaration__extension_addition(self): self.login_johndoe() (dataformat, errors) = DataFormat.objects.create_dataformat( @@ -630,7 +661,7 @@ class DataFormatUpdate(DataFormatsAPIBase): self.assertEqual(declaration["value"], "float64") self.assertEqual(declaration["#extends"], "johndoe/format4/1") - def test_successfull_update_of_declaration__extension_removal(self): + def test_successful_update_of_declaration__extension_removal(self): self.login_johndoe() (dataformat, errors) = DataFormat.objects.create_dataformat( @@ -656,7 +687,7 @@ class DataFormatUpdate(DataFormatsAPIBase): self.assertTrue(dataformat.extend is None) self.assertEqual(dataformat.referenced_formats.count(), 0) - def test_successfull_update_of_declaration__extension_keeping(self): + def test_successful_update_of_declaration__extension_keeping(self): self.login_johndoe() (dataformat, errors) = DataFormat.objects.create_dataformat( @@ -685,7 +716,7 @@ class DataFormatUpdate(DataFormatsAPIBase): self.assertEqual(dataformat.extend.name, "format1") self.assertEqual(dataformat.referenced_formats.count(), 0) - def test_successfull_update_of_declaration__composition_addition(self): + def test_successful_update_of_declaration__composition_addition(self): self.login_johndoe() (dataformat, errors) = DataFormat.objects.create_dataformat( @@ -724,7 +755,7 @@ class DataFormatUpdate(DataFormatsAPIBase): self.assertEqual(declaration["value"], "float64") self.assertEqual(declaration["field1"], "johndoe/format4/1") - def test_successfull_update_of_declaration__composition_removal(self): + def test_successful_update_of_declaration__composition_removal(self): self.login_johndoe() (dataformat, errors) = DataFormat.objects.create_dataformat( @@ -750,7 +781,7 @@ class DataFormatUpdate(DataFormatsAPIBase): self.assertTrue(dataformat.extend is None) self.assertEqual(dataformat.referenced_formats.count(), 0) - def test_successfull_update_of_declaration__composition_keeping(self): + def test_successful_update_of_declaration__composition_keeping(self): self.login_johndoe() (dataformat, errors) = DataFormat.objects.create_dataformat( -- GitLab