From 645d6566f1d83246ca7cbcf9cd1fddedbce73035 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Tue, 14 Mar 2023 20:38:45 +0100 Subject: [PATCH] environment: initialize title from slug on save (#73207) To simplify tests, slug is always globally unique for the model, using it for title will always work. --- hobo/environment/models.py | 3 +++ tests/test_matomo_utils.py | 18 ++++++++++++------ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/hobo/environment/models.py b/hobo/environment/models.py index 4864bdc..33a849d 100644 --- a/hobo/environment/models.py +++ b/hobo/environment/models.py @@ -225,6 +225,9 @@ class ServiceBase(models.Model): else: self.secret_key = get_random_string(50, SECRET_CHARS) + if not self.title and self.slug: + self.title = self.slug + is_new = self.id is None super().save(*args, **kwargs) diff --git a/tests/test_matomo_utils.py b/tests/test_matomo_utils.py index 61c93ff..a6ce05a 100644 --- a/tests/test_matomo_utils.py +++ b/tests/test_matomo_utils.py @@ -231,12 +231,18 @@ def test_get_variable_value(): def test_get_tenant_name_and_public_urls(): - Combo.objects.create(base_url='https://combo.dev.publik.love', template_name='...portal-user...') - Combo.objects.create(base_url='https://agent-combo.dev.publik.love', template_name='...portal-agent...') - Combo.objects.create(base_url='https://no-template-combo.dev.publik.love') - Wcs.objects.create(base_url='https://wcs.dev.publik.love') - Fargo.objects.create(base_url='https://fargo.dev.publik.love') - Hobo.objects.create(base_url='https://hobo.dev.publik.love') + Combo.objects.create( + slug='portal', base_url='https://combo.dev.publik.love', template_name='...portal-user...' + ) + Combo.objects.create( + slug='portal-agent', + base_url='https://agent-combo.dev.publik.love', + template_name='...portal-agent...', + ) + Combo.objects.create(slug='portal-no-template', base_url='https://no-template-combo.dev.publik.love') + Wcs.objects.create(slug='wcs', base_url='https://wcs.dev.publik.love') + Fargo.objects.create(slug='fargo', base_url='https://fargo.dev.publik.love') + Hobo.objects.create(slug='hobo', base_url='https://hobo.dev.publik.love') tenant_name, site_urls = get_tenant_name_and_public_urls() assert tenant_name == 'combo.dev.publik.love' assert site_urls == [