From 96d6116345e0f358ffd5ad558de24f43df945d81 Mon Sep 17 00:00:00 2001 From: SilviaAmAm Date: Fri, 12 Apr 2024 12:22:58 +0200 Subject: [PATCH] :white_check_mark: [#4115] Add/update tests --- .../analytics_tools/api/tests/test_views.py | 12 ++-- .../analytics_tools/tests/test_govmetric.py | 15 ++-- .../analytics_tools/tests/test_migrations.py | 71 +++++++++++++++++++ 3 files changed, 89 insertions(+), 9 deletions(-) create mode 100644 src/openforms/analytics_tools/tests/test_migrations.py diff --git a/src/openforms/analytics_tools/api/tests/test_views.py b/src/openforms/analytics_tools/api/tests/test_views.py index d6e1c052fc..a93740f4b7 100644 --- a/src/openforms/analytics_tools/api/tests/test_views.py +++ b/src/openforms/analytics_tools/api/tests/test_views.py @@ -13,8 +13,10 @@ class TestAnalyticsToolsConfigViews(APITestCase): def test_get_language_specific_govmetric_source_id(self, m_config): m_config.return_value = AnalyticsToolsConfiguration( enable_govmetric_analytics=True, - govmetric_source_id_en="1234", - govmetric_source_id_nl="4321", + govmetric_source_id_form_finished_en="1111", + govmetric_source_id_form_finished_nl="2222", + govmetric_source_id_form_aborted_en="3333", + govmetric_source_id_form_aborted_nl="4444", ) with override_settings(LANGUAGE_CODE="en"): @@ -30,5 +32,7 @@ def test_get_language_specific_govmetric_source_id(self, m_config): data_en = response_en.json() data_nl = response_nl.json() - self.assertEqual(data_en["govmetricSourceId"], "1234") - self.assertEqual(data_nl["govmetricSourceId"], "4321") + self.assertEqual(data_en["govmetricSourceIdFormFinished"], "1111") + self.assertEqual(data_en["govmetricSourceIdFormAborted"], "3333") + self.assertEqual(data_nl["govmetricSourceIdFormFinished"], "2222") + self.assertEqual(data_nl["govmetricSourceIdFormAborted"], "4444") diff --git a/src/openforms/analytics_tools/tests/test_govmetric.py b/src/openforms/analytics_tools/tests/test_govmetric.py index 6b85592931..fce7b38dcf 100644 --- a/src/openforms/analytics_tools/tests/test_govmetric.py +++ b/src/openforms/analytics_tools/tests/test_govmetric.py @@ -27,7 +27,8 @@ def setUpTestData(cls): ] def test_govmetric_properly_enabled(self): - self.config.govmetric_source_id = "1234" + self.config.govmetric_source_id_form_finished = "1234" + self.config.govmetric_source_id_form_aborted = "1234" self.config.enable_govmetric_analytics = True self.config.clean() self.config.save() @@ -51,7 +52,8 @@ def test_govmetric_properly_enabled(self): self.fail(f"Unexpected exception : {e}") def test_govmetric_properly_disabled(self): - self.config.govmetric_source_id = "1234" + self.config.govmetric_source_id_form_finished = "1234" + self.config.govmetric_source_id_form_aborted = "1234" # creation of cookies self.config.enable_govmetric_analytics = True @@ -79,15 +81,18 @@ def test_govmetric_properly_disabled(self): def test_govmetric_enabled_but_related_fields_are_not(self): self.config.enable_govmetric_analytics = True - self.config.govmetric_source_id = "" + self.config.govmetric_source_id_form_finished = "" + self.config.govmetric_source_id_form_aborted = "" with self.assertRaises(ValidationError): self.config.clean() def test_govmetric_enabled_in_only_one_language_raises_error(self): self.config.enable_govmetric_analytics = True - self.config.govmetric_source_id_en = "1234" - self.config.govmetric_source_id_nl = "" + self.config.govmetric_source_id_form_finished_en = "1234" + self.config.govmetric_source_id_form_finished_nl = "" + self.config.govmetric_source_id_form_aborted_en = "1234" + self.config.govmetric_source_id_form_aborted_nl = "" with self.assertRaises(ValidationError): self.config.clean() diff --git a/src/openforms/analytics_tools/tests/test_migrations.py b/src/openforms/analytics_tools/tests/test_migrations.py new file mode 100644 index 0000000000..28994b9e31 --- /dev/null +++ b/src/openforms/analytics_tools/tests/test_migrations.py @@ -0,0 +1,71 @@ +from openforms.utils.tests.test_migrations import TestMigrations + + +class UpdateSourceIDsGovMetricTests(TestMigrations): + app = "analytics_tools" + migrate_from = "0006_auto_20240112_1046" + migrate_to = ( + "0009_remove_analyticstoolsconfiguration_govmetric_secure_guid_and_more" + ) + + def setUpBeforeMigration(self, apps): + AnalyticsToolsConfiguration = apps.get_model( + "analytics_tools", "AnalyticsToolsConfiguration" + ) + AnalyticsToolsConfiguration.objects.create( + govmetric_source_id_en="1234", + govmetric_source_id_nl="7890", + govmetric_secure_guid_en="4321", + govmetric_secure_guid_nl="0987", + ) + + def test_builder_enabled(self): + AnalyticsToolsConfiguration = self.apps.get_model( + "analytics_tools", "AnalyticsToolsConfiguration" + ) + config = AnalyticsToolsConfiguration.objects.get() + + self.assertEqual(config.govmetric_source_id_form_aborted_en, "1234") + self.assertEqual(config.govmetric_source_id_form_aborted_nl, "7890") + self.assertEqual(config.govmetric_source_id_form_finished_en, "1234") + self.assertEqual(config.govmetric_source_id_form_finished_nl, "7890") + + self.assertEqual(config.govmetric_secure_guid_form_aborted_en, "4321") + self.assertEqual(config.govmetric_secure_guid_form_aborted_nl, "0987") + self.assertEqual(config.govmetric_secure_guid_form_finished_en, "4321") + self.assertEqual(config.govmetric_secure_guid_form_finished_nl, "0987") + + +class UndoUpdateSourceIDsGovMetricTests(TestMigrations): + app = "analytics_tools" + migrate_to = "0006_auto_20240112_1046" + migrate_from = ( + "0009_remove_analyticstoolsconfiguration_govmetric_secure_guid_and_more" + ) + + def setUpBeforeMigration(self, apps): + AnalyticsToolsConfiguration = apps.get_model( + "analytics_tools", "AnalyticsToolsConfiguration" + ) + AnalyticsToolsConfiguration.objects.create( + govmetric_source_id_form_aborted_en="1111", + govmetric_source_id_form_aborted_nl="2222", + govmetric_source_id_form_finished_en="3333", + govmetric_source_id_form_finished_nl="4444", + govmetric_secure_guid_form_aborted_en="5555", + govmetric_secure_guid_form_aborted_nl="6666", + govmetric_secure_guid_form_finished_en="7777", + govmetric_secure_guid_form_finished_nl="8888", + ) + + def test_builder_enabled(self): + AnalyticsToolsConfiguration = self.apps.get_model( + "analytics_tools", "AnalyticsToolsConfiguration" + ) + config = AnalyticsToolsConfiguration.objects.get() + + self.assertEqual(config.govmetric_source_id_en, "3333") + self.assertEqual(config.govmetric_source_id_nl, "4444") + + self.assertEqual(config.govmetric_secure_guid_en, "7777") + self.assertEqual(config.govmetric_secure_guid_nl, "8888")