From 111591a0b0bf0356db743cc281b13bc9550c4773 Mon Sep 17 00:00:00 2001 From: Paul Marillonnet Date: Thu, 23 Feb 2023 14:51:29 +0100 Subject: [PATCH] user_name: fallback on default full name when var defined yet empty (#74507) --- hobo/user_name/apps.py | 2 +- tests/test_user_name.py | 6 ++++++ tests_authentic/test_user_name.py | 6 ++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/hobo/user_name/apps.py b/hobo/user_name/apps.py index 016287e..b80f4a6 100644 --- a/hobo/user_name/apps.py +++ b/hobo/user_name/apps.py @@ -17,7 +17,7 @@ def get_full_name(user): context = {} context['user'] = user template_vars = getattr(settings, 'TEMPLATE_VARS', {}) - if 'user_full_name_template' in template_vars: + if template_vars.get('user_full_name_template'): try: template = engines['django'].from_string(template_vars['user_full_name_template']) return template.render(context) diff --git a/tests/test_user_name.py b/tests/test_user_name.py index af7c409..21a4c46 100644 --- a/tests/test_user_name.py +++ b/tests/test_user_name.py @@ -36,9 +36,15 @@ def test_user_get_full_name_from_template(user): ): assert get_full_name(user) == 'Jane bar' + with override_settings(TEMPLATE_VARS={'user_full_name_template': ''}): + assert get_full_name(user) == 'Jane Doe' + def test_user_get_full_name(user): with override_settings( TEMPLATE_VARS={'user_full_name_template': '{{ user.first_name }} {{ user.attributes.foo }}'} ): assert user.get_full_name() == 'Jane bar' + + with override_settings(TEMPLATE_VARS={'user_full_name_template': ''}): + assert user.get_full_name() == 'Jane Doe' diff --git a/tests_authentic/test_user_name.py b/tests_authentic/test_user_name.py index 9089231..0fd9a5f 100644 --- a/tests_authentic/test_user_name.py +++ b/tests_authentic/test_user_name.py @@ -49,6 +49,9 @@ def test_get_full_name_from_template_utils_from_multiple_attrs(db, tenant, setti ): assert get_full_name(user) == 'Jane Milly Minnie' + with override_settings(TEMPLATE_VARS={'user_full_name_template': ''}): + assert get_full_name(user) == 'Jane Doe' + def test_get_full_name_from_template_accessor_from_multiple_attrs(db, tenant, settings): with tenant_context(tenant): @@ -90,3 +93,6 @@ def test_get_full_name_from_template_accessor_from_multiple_attrs(db, tenant, se } ): assert user.get_full_name() == 'Jane Milly Minnie' + + with override_settings(TEMPLATE_VARS={'user_full_name_template': ''}): + assert user.get_full_name() == 'Jane Doe'