From d4c646a788ec66ed4d139044255b45f523cc1c58 Mon Sep 17 00:00:00 2001 From: Beverly Nguyen Date: Tue, 26 Nov 2024 13:45:43 -0800 Subject: [PATCH 1/3] making sub nav items conditional on feature flag --- app/main/views/index.py | 1 - app/main/views/sub_navigation_dictionaries.py | 55 ++++++------------- 2 files changed, 16 insertions(+), 40 deletions(-) diff --git a/app/main/views/index.py b/app/main/views/index.py index 983099a4f..49eeae427 100644 --- a/app/main/views/index.py +++ b/app/main/views/index.py @@ -292,7 +292,6 @@ def benchmark_performance(): ) -@main.route("/using-notify/guidance") @main.route("/guides/using-notify/guidance") @user_is_logged_in def guidance_index(): diff --git a/app/main/views/sub_navigation_dictionaries.py b/app/main/views/sub_navigation_dictionaries.py index 3c81dc7ed..0cf436424 100644 --- a/app/main/views/sub_navigation_dictionaries.py +++ b/app/main/views/sub_navigation_dictionaries.py @@ -1,3 +1,7 @@ +from flask import ( + current_app, +) + def features_nav(): return [ { @@ -22,46 +26,19 @@ def features_nav(): def using_notify_nav(): - return [ - { - "name": "Get started", - "link": "main.get_started", - }, - { - "name": "Guides", - "link": "main.best_practices", - }, - { - "name": "Trial mode", - "link": "main.trial_mode_new", - }, - { - "name": "Tracking usage", - "link": "main.pricing", - }, - { - "name": "Delivery status", - "link": "main.message_status", - }, - { - "name": "Guidance", - "link": "main.guidance_index", - # "sub_navigation_items": [ - # { - # "name": "Formatting", - # "link": "main.edit_and_format_messages", - # }, - # { - # "name": "Send files by email", - # "link": "main.send_files_by_email", - # }, - # ] - # { - # "name": "API documentation", - # "link": "main.documentation", - # }, - }, + nav_items = [ + {"name": "Get started", "link": "main.get_started"}, + {"name": "Guides", "link": "main.best_practices"}, + {"name": "Trial mode", "link": "main.trial_mode_new"}, + {"name": "Tracking usage", "link": "main.pricing"}, + {"name": "Delivery Status", "link": "main.message_status"}, + {"name": "Guidance", "link": "main.guidance_index"}, + ] + if not current_app.config.get("FEATURE_BEST_PRACTICES_ENABLED"): + nav_items = [item for item in nav_items if item["link"] != "main.best_practices"] + + return nav_items def best_practices_nav(): From e638eb4ad13cf2a88a10c975674df8e5312b8122 Mon Sep 17 00:00:00 2001 From: Beverly Nguyen Date: Tue, 26 Nov 2024 13:50:00 -0800 Subject: [PATCH 2/3] isort fix --- app/main/views/sub_navigation_dictionaries.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/app/main/views/sub_navigation_dictionaries.py b/app/main/views/sub_navigation_dictionaries.py index 0cf436424..bd44c1319 100644 --- a/app/main/views/sub_navigation_dictionaries.py +++ b/app/main/views/sub_navigation_dictionaries.py @@ -1,6 +1,5 @@ -from flask import ( - current_app, -) +from flask import current_app + def features_nav(): return [ From a5c65439b601389d7e7a7325405117389f7a232e Mon Sep 17 00:00:00 2001 From: Beverly Nguyen Date: Tue, 26 Nov 2024 14:38:15 -0800 Subject: [PATCH 3/3] update e2e --- app/main/views/sub_navigation_dictionaries.py | 5 +++-- tests/end_to_end/test_best_practices_content_pages.py | 4 ++-- urls.js | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app/main/views/sub_navigation_dictionaries.py b/app/main/views/sub_navigation_dictionaries.py index bd44c1319..603094cd1 100644 --- a/app/main/views/sub_navigation_dictionaries.py +++ b/app/main/views/sub_navigation_dictionaries.py @@ -32,10 +32,11 @@ def using_notify_nav(): {"name": "Tracking usage", "link": "main.pricing"}, {"name": "Delivery Status", "link": "main.message_status"}, {"name": "Guidance", "link": "main.guidance_index"}, - ] if not current_app.config.get("FEATURE_BEST_PRACTICES_ENABLED"): - nav_items = [item for item in nav_items if item["link"] != "main.best_practices"] + nav_items = [ + item for item in nav_items if item["link"] != "main.best_practices" + ] return nav_items diff --git a/tests/end_to_end/test_best_practices_content_pages.py b/tests/end_to_end/test_best_practices_content_pages.py index 962100de3..031e4baef 100644 --- a/tests/end_to_end/test_best_practices_content_pages.py +++ b/tests/end_to_end/test_best_practices_content_pages.py @@ -11,7 +11,7 @@ E2E_TEST_URI = os.getenv("NOTIFY_E2E_TEST_URI") def test_best_practices_side_menu(authenticated_page): page = authenticated_page - page.goto(f"{E2E_TEST_URI}/best-practices") + page.goto(f"{E2E_TEST_URI}/guides/best-practices") page.wait_for_load_state("domcontentloaded") check_axe_report(page) @@ -58,7 +58,7 @@ def test_best_practices_side_menu(authenticated_page): def test_breadcrumbs_best_practices(authenticated_page): page = authenticated_page - page.goto(f"{E2E_TEST_URI}/best-practices") + page.goto(f"{E2E_TEST_URI}/guides/best-practices") page.wait_for_load_state("domcontentloaded") check_axe_report(page) diff --git a/urls.js b/urls.js index 0440430ec..2279b5a79 100644 --- a/urls.js +++ b/urls.js @@ -8,7 +8,7 @@ const sublinks = [ { label: 'Trial Mode', path: '/using-notify/trial-mode' }, { label: 'Pricing', path: '/using-notify/pricing' }, { label: 'Delivery Status', path: '/using-notify/delivery-status' }, - { label: 'Guidance', path: '/using-notify/guidance' }, + { label: 'Guidance', path: '/guides/using-notify/guidance' }, { label: 'Features', path: '/features' }, { label: 'Roadmap', path: '/features/roadmap' }, { label: 'Security', path: '/features/security' },