From 8a9d3024114a4c532936406b6257bd3943fbd919 Mon Sep 17 00:00:00 2001 From: Mateusz Grotek Date: Mon, 19 Aug 2024 14:52:13 +0100 Subject: [PATCH] Prepare for Popular Tasks AB test --- app/controllers/browse_controller.rb | 2 + .../concerns/popular_tasks_ab_testable.rb | 43 +++++++++++ app/helpers/browse_helper.rb | 44 ++++++++++- app/views/browse/show.html.erb | 1 + config/locales/ar/browse.yml | 26 +++++-- config/locales/az/browse.yml | 26 +++++-- config/locales/be/browse.yml | 26 +++++-- config/locales/bg/browse.yml | 26 +++++-- config/locales/bn/browse.yml | 26 +++++-- config/locales/cs/browse.yml | 26 +++++-- config/locales/cy/browse.yml | 26 +++++-- config/locales/da/browse.yml | 26 +++++-- config/locales/de/browse.yml | 26 +++++-- config/locales/dr/browse.yml | 26 +++++-- config/locales/el/browse.yml | 26 +++++-- config/locales/en/browse.yml | 36 ++++++--- config/locales/es-419/browse.yml | 26 +++++-- config/locales/es/browse.yml | 26 +++++-- config/locales/et/browse.yml | 26 +++++-- config/locales/fa/browse.yml | 26 +++++-- config/locales/fi/browse.yml | 26 +++++-- config/locales/fr/browse.yml | 26 +++++-- config/locales/gd/browse.yml | 26 +++++-- config/locales/gu/browse.yml | 26 +++++-- config/locales/he/browse.yml | 26 +++++-- config/locales/hi/browse.yml | 26 +++++-- config/locales/hr/browse.yml | 26 +++++-- config/locales/hu/browse.yml | 26 +++++-- config/locales/hy/browse.yml | 26 +++++-- config/locales/id/browse.yml | 26 +++++-- config/locales/is/browse.yml | 26 +++++-- config/locales/it/browse.yml | 26 +++++-- config/locales/ja/browse.yml | 26 +++++-- config/locales/ka/browse.yml | 26 +++++-- config/locales/kk/browse.yml | 26 +++++-- config/locales/ko/browse.yml | 26 +++++-- config/locales/lt/browse.yml | 26 +++++-- config/locales/lv/browse.yml | 26 +++++-- config/locales/ms/browse.yml | 26 +++++-- config/locales/mt/browse.yml | 26 +++++-- config/locales/ne/browse.yml | 26 +++++-- config/locales/nl/browse.yml | 26 +++++-- config/locales/no/browse.yml | 26 +++++-- config/locales/pa-pk/browse.yml | 26 +++++-- config/locales/pa/browse.yml | 26 +++++-- config/locales/pl/browse.yml | 26 +++++-- config/locales/ps/browse.yml | 26 +++++-- config/locales/pt/browse.yml | 26 +++++-- config/locales/ro/browse.yml | 26 +++++-- config/locales/ru/browse.yml | 26 +++++-- config/locales/si/browse.yml | 26 +++++-- config/locales/sk/browse.yml | 26 +++++-- config/locales/sl/browse.yml | 26 +++++-- config/locales/so/browse.yml | 26 +++++-- config/locales/sq/browse.yml | 26 +++++-- config/locales/sr/browse.yml | 26 +++++-- config/locales/sv/browse.yml | 26 +++++-- config/locales/sw/browse.yml | 26 +++++-- config/locales/ta/browse.yml | 26 +++++-- config/locales/th/browse.yml | 26 +++++-- config/locales/tk/browse.yml | 26 +++++-- config/locales/tr/browse.yml | 26 +++++-- config/locales/uk/browse.yml | 26 +++++-- config/locales/ur/browse.yml | 26 +++++-- config/locales/uz/browse.yml | 26 +++++-- config/locales/vi/browse.yml | 26 +++++-- config/locales/yi/browse.yml | 26 +++++-- config/locales/zh-hk/browse.yml | 26 +++++-- config/locales/zh-tw/browse.yml | 26 +++++-- config/locales/zh/browse.yml | 26 +++++-- spec/controllers/browse_controller_spec.rb | 11 +++ spec/features/mainstream_browsing_spec.rb | 74 +++++++++++++++++++ spec/helpers/browse_helper_spec.rb | 12 +++ 73 files changed, 1380 insertions(+), 533 deletions(-) create mode 100644 app/controllers/concerns/popular_tasks_ab_testable.rb diff --git a/app/controllers/browse_controller.rb b/app/controllers/browse_controller.rb index 2f42d4c86..4b83ed040 100644 --- a/app/controllers/browse_controller.rb +++ b/app/controllers/browse_controller.rb @@ -1,4 +1,6 @@ class BrowseController < ApplicationController + include PopularTasksAbTestable + slimmer_template "gem_layout_full_width" def index diff --git a/app/controllers/concerns/popular_tasks_ab_testable.rb b/app/controllers/concerns/popular_tasks_ab_testable.rb new file mode 100644 index 000000000..49c3f7b41 --- /dev/null +++ b/app/controllers/concerns/popular_tasks_ab_testable.rb @@ -0,0 +1,43 @@ +module PopularTasksAbTestable + extend ActiveSupport::Concern + + ALLOWED_VARIANTS = %w[A B C Z].freeze + + included do + helper_method( + :popular_tasks_variant, + :popular_tasks_page_under_test?, + :popular_tasks_variant_a_page?, + :popular_tasks_variant_b_page?, + ) + after_action :set_popular_tasks_ab_test_response_header + end + + def popular_tasks_ab_test + @popular_tasks_ab_test ||= GovukAbTesting::AbTest.new( + "PopularTasks", + allowed_variants: ALLOWED_VARIANTS, + control_variant: "Z", + ) + end + + def popular_tasks_variant + @popular_tasks_variant ||= popular_tasks_ab_test.requested_variant(request.headers) + end + + def popular_tasks_page_under_test? + request.path.match?(%r{\A/browse/[^/]+\z}) + end + + def set_popular_tasks_ab_test_response_header + popular_tasks_variant.configure_response(response) if popular_tasks_page_under_test? + end + + def popular_tasks_variant_a_page? + popular_tasks_page_under_test? && popular_tasks_variant.variant?("A") + end + + def popular_tasks_variant_b_page? + popular_tasks_page_under_test? && popular_tasks_variant.variant?("B") + end +end diff --git a/app/helpers/browse_helper.rb b/app/helpers/browse_helper.rb index 02328a263..444af21f6 100644 --- a/app/helpers/browse_helper.rb +++ b/app/helpers/browse_helper.rb @@ -1,10 +1,50 @@ module BrowseHelper + def variant_a_popular_links?(slug) + I18n.exists?("#{slug}.variant_a", scope: "browse.popular_links") + end + + def variant_a_popular_links(slug) + I18n.t("#{slug}.control", scope: "browse.popular_links") + end + + def variant_b_popular_links?(slug) + I18n.exists?("#{slug}.variant_b", scope: "browse.popular_links") + end + + def variant_b_popular_links(slug) + I18n.t("#{slug}.control", scope: "browse.popular_links") + end + + def control_popular_links?(slug) + I18n.exists?("#{slug}.control", scope: "browse.popular_links") + end + + def control_popular_links(slug) + I18n.t("#{slug}.control", scope: "browse.popular_links") + end + def display_popular_links_for_slug?(slug) - I18n.exists?(slug.to_s, scope: "browse.popular_links") + if popular_tasks_variant_a_page? + variant_a_popular_links?(slug) + elsif popular_tasks_variant_b_page? + variant_b_popular_links?(slug) + else + control_popular_links?(slug) + end + end + + def variant_popular_links_for_slug(slug) + if popular_tasks_variant_a_page? + variant_a_popular_links(slug) + elsif popular_tasks_variant_b_page? + variant_b_popular_links(slug) + else + control_popular_links(slug) + end end def popular_links_for_slug(slug) - links = I18n.t(slug.to_s, scope: "browse.popular_links") + links = variant_popular_links_for_slug(slug) count = links.length links.map.with_index(1) do |link, index| { diff --git a/app/views/browse/show.html.erb b/app/views/browse/show.html.erb index 787441e74..a5aa23ae0 100644 --- a/app/views/browse/show.html.erb +++ b/app/views/browse/show.html.erb @@ -12,6 +12,7 @@ section: page.title.downcase, } } %> + <%= popular_tasks_variant.analytics_meta_tag.html_safe if popular_tasks_page_under_test? %> <% end %> <% content_for :breadcrumbs do %> diff --git a/config/locales/ar/browse.yml b/config/locales/ar/browse.yml index fddcc6877..362dc48b3 100644 --- a/config/locales/ar/browse.yml +++ b/config/locales/ar/browse.yml @@ -3,15 +3,25 @@ ar: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: جميع الفئات description: popular_tasks: diff --git a/config/locales/az/browse.yml b/config/locales/az/browse.yml index 02d83f9b3..57e4a240a 100644 --- a/config/locales/az/browse.yml +++ b/config/locales/az/browse.yml @@ -3,15 +3,25 @@ az: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Bütün kateqoriyalar description: popular_tasks: diff --git a/config/locales/be/browse.yml b/config/locales/be/browse.yml index dcde389f1..eb3556f7b 100644 --- a/config/locales/be/browse.yml +++ b/config/locales/be/browse.yml @@ -3,15 +3,25 @@ be: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Усе катэгорыі description: popular_tasks: diff --git a/config/locales/bg/browse.yml b/config/locales/bg/browse.yml index 212731c10..6ca4922f5 100644 --- a/config/locales/bg/browse.yml +++ b/config/locales/bg/browse.yml @@ -3,15 +3,25 @@ bg: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Всички категории description: popular_tasks: diff --git a/config/locales/bn/browse.yml b/config/locales/bn/browse.yml index 6dc77c994..1bcc456fd 100644 --- a/config/locales/bn/browse.yml +++ b/config/locales/bn/browse.yml @@ -3,15 +3,25 @@ bn: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: সকল শ্রেণিবিভাগ description: popular_tasks: diff --git a/config/locales/cs/browse.yml b/config/locales/cs/browse.yml index 414c90791..2ee8b5c67 100644 --- a/config/locales/cs/browse.yml +++ b/config/locales/cs/browse.yml @@ -3,15 +3,25 @@ cs: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Všechny kategorie description: popular_tasks: diff --git a/config/locales/cy/browse.yml b/config/locales/cy/browse.yml index c4f724cc5..e1c86bfe4 100644 --- a/config/locales/cy/browse.yml +++ b/config/locales/cy/browse.yml @@ -3,15 +3,25 @@ cy: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Pob categori description: popular_tasks: diff --git a/config/locales/da/browse.yml b/config/locales/da/browse.yml index 1d30a9095..db3db3ebf 100644 --- a/config/locales/da/browse.yml +++ b/config/locales/da/browse.yml @@ -3,15 +3,25 @@ da: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Alle kategorier description: popular_tasks: diff --git a/config/locales/de/browse.yml b/config/locales/de/browse.yml index 1a56e63ca..4d523c98d 100644 --- a/config/locales/de/browse.yml +++ b/config/locales/de/browse.yml @@ -3,15 +3,25 @@ de: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Alle Kategorien description: popular_tasks: diff --git a/config/locales/dr/browse.yml b/config/locales/dr/browse.yml index 3f52c7058..9e8ea437c 100644 --- a/config/locales/dr/browse.yml +++ b/config/locales/dr/browse.yml @@ -3,15 +3,25 @@ dr: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: تمام کتگوری ها description: popular_tasks: diff --git a/config/locales/el/browse.yml b/config/locales/el/browse.yml index 34853fc13..0b8466aad 100644 --- a/config/locales/el/browse.yml +++ b/config/locales/el/browse.yml @@ -3,15 +3,25 @@ el: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Όλες οι κατηγορίες description: popular_tasks: diff --git a/config/locales/en/browse.yml b/config/locales/en/browse.yml index 0d38279cc..47fe074ec 100644 --- a/config/locales/en/browse.yml +++ b/config/locales/en/browse.yml @@ -1,19 +1,33 @@ --- en: browse: + popular_links: + benefits: + control: + - title: Check benefits and financial support you can get + url: /check-benefits-financial-support + variant_a: + - title: + url: + variant_b: + - title: + url: + business: + control: + - title: "HMRC online services: sign in or set up an account" + url: /log-in-register-hmrc-online-services + - title: Self Assessment tax returns + url: /self-assessment-tax-returns + - title: "Pay employers' PAYE" + url: /pay-paye-tax + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: All categories popular_tasks: Popular tasks topics: Topics description: Find the government services, forms and accounts you need to use title: Services and information - popular_links: - benefits: - - title: Check benefits and financial support you can get - url: /check-benefits-financial-support - business: - - title: "HMRC online services: sign in or set up an account" - url: /log-in-register-hmrc-online-services - - title: Self Assessment tax returns - url: /self-assessment-tax-returns - - title: "Pay employers' PAYE" - url: /pay-paye-tax diff --git a/config/locales/es-419/browse.yml b/config/locales/es-419/browse.yml index 3ff47e552..edaacc882 100644 --- a/config/locales/es-419/browse.yml +++ b/config/locales/es-419/browse.yml @@ -3,15 +3,25 @@ es-419: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Todas las categorías description: popular_tasks: diff --git a/config/locales/es/browse.yml b/config/locales/es/browse.yml index bc44dfb1e..7cba63c2b 100644 --- a/config/locales/es/browse.yml +++ b/config/locales/es/browse.yml @@ -3,15 +3,25 @@ es: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Todas las categorías description: popular_tasks: diff --git a/config/locales/et/browse.yml b/config/locales/et/browse.yml index 880a4025b..a03531e09 100644 --- a/config/locales/et/browse.yml +++ b/config/locales/et/browse.yml @@ -3,15 +3,25 @@ et: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Kõik kategooriad description: popular_tasks: diff --git a/config/locales/fa/browse.yml b/config/locales/fa/browse.yml index dcf7aba77..748839a13 100644 --- a/config/locales/fa/browse.yml +++ b/config/locales/fa/browse.yml @@ -3,15 +3,25 @@ fa: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: تمام دسته‌بندی‌ها description: popular_tasks: diff --git a/config/locales/fi/browse.yml b/config/locales/fi/browse.yml index 3b814e3e9..d17b33c4f 100644 --- a/config/locales/fi/browse.yml +++ b/config/locales/fi/browse.yml @@ -3,15 +3,25 @@ fi: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Kaikki kategoriat description: popular_tasks: diff --git a/config/locales/fr/browse.yml b/config/locales/fr/browse.yml index 3caed1e46..b2ab9cfcf 100644 --- a/config/locales/fr/browse.yml +++ b/config/locales/fr/browse.yml @@ -3,15 +3,25 @@ fr: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Toutes catégories description: popular_tasks: diff --git a/config/locales/gd/browse.yml b/config/locales/gd/browse.yml index 335a997a4..b550aa671 100644 --- a/config/locales/gd/browse.yml +++ b/config/locales/gd/browse.yml @@ -3,15 +3,25 @@ gd: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Gach cineál táirgí description: popular_tasks: diff --git a/config/locales/gu/browse.yml b/config/locales/gu/browse.yml index e650e723a..600e922e4 100644 --- a/config/locales/gu/browse.yml +++ b/config/locales/gu/browse.yml @@ -3,15 +3,25 @@ gu: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: તમામ શ્રેણીઓ description: popular_tasks: diff --git a/config/locales/he/browse.yml b/config/locales/he/browse.yml index f7728928e..07def2c23 100644 --- a/config/locales/he/browse.yml +++ b/config/locales/he/browse.yml @@ -3,15 +3,25 @@ he: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: כל הקטגוריות description: popular_tasks: diff --git a/config/locales/hi/browse.yml b/config/locales/hi/browse.yml index 8eab76c1c..c2764e496 100644 --- a/config/locales/hi/browse.yml +++ b/config/locales/hi/browse.yml @@ -3,15 +3,25 @@ hi: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: सभी वर्ग description: popular_tasks: diff --git a/config/locales/hr/browse.yml b/config/locales/hr/browse.yml index e7ae309ba..ba099b64c 100644 --- a/config/locales/hr/browse.yml +++ b/config/locales/hr/browse.yml @@ -3,15 +3,25 @@ hr: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Sve kategorije description: popular_tasks: diff --git a/config/locales/hu/browse.yml b/config/locales/hu/browse.yml index e56eb1b7d..a3105d1ee 100644 --- a/config/locales/hu/browse.yml +++ b/config/locales/hu/browse.yml @@ -3,15 +3,25 @@ hu: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Minden kategória description: popular_tasks: diff --git a/config/locales/hy/browse.yml b/config/locales/hy/browse.yml index 8f8906ff8..ce2d8768d 100644 --- a/config/locales/hy/browse.yml +++ b/config/locales/hy/browse.yml @@ -3,15 +3,25 @@ hy: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Բոլոր կատեգորիաները description: popular_tasks: diff --git a/config/locales/id/browse.yml b/config/locales/id/browse.yml index e0eeefce5..c550ea82a 100644 --- a/config/locales/id/browse.yml +++ b/config/locales/id/browse.yml @@ -3,15 +3,25 @@ id: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Semua kategori description: popular_tasks: diff --git a/config/locales/is/browse.yml b/config/locales/is/browse.yml index e5bc63ca8..6338bc0da 100644 --- a/config/locales/is/browse.yml +++ b/config/locales/is/browse.yml @@ -3,15 +3,25 @@ is: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Allir flokkar description: popular_tasks: diff --git a/config/locales/it/browse.yml b/config/locales/it/browse.yml index 453abfa02..70d971316 100644 --- a/config/locales/it/browse.yml +++ b/config/locales/it/browse.yml @@ -3,15 +3,25 @@ it: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Tutte le categorie description: popular_tasks: diff --git a/config/locales/ja/browse.yml b/config/locales/ja/browse.yml index 641d0ff12..e05305da0 100644 --- a/config/locales/ja/browse.yml +++ b/config/locales/ja/browse.yml @@ -3,15 +3,25 @@ ja: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: すべてのカテゴリ description: popular_tasks: diff --git a/config/locales/ka/browse.yml b/config/locales/ka/browse.yml index edf51300b..9266aed3c 100644 --- a/config/locales/ka/browse.yml +++ b/config/locales/ka/browse.yml @@ -3,15 +3,25 @@ ka: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: ყველა კატეგორია description: popular_tasks: diff --git a/config/locales/kk/browse.yml b/config/locales/kk/browse.yml index d9dbd2304..7f37e9820 100644 --- a/config/locales/kk/browse.yml +++ b/config/locales/kk/browse.yml @@ -3,15 +3,25 @@ kk: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Барлық санаттар description: popular_tasks: diff --git a/config/locales/ko/browse.yml b/config/locales/ko/browse.yml index ac060846c..4d8b0a698 100644 --- a/config/locales/ko/browse.yml +++ b/config/locales/ko/browse.yml @@ -3,15 +3,25 @@ ko: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: 모든 범주 description: popular_tasks: diff --git a/config/locales/lt/browse.yml b/config/locales/lt/browse.yml index c2fdd4b71..e88727eee 100644 --- a/config/locales/lt/browse.yml +++ b/config/locales/lt/browse.yml @@ -3,15 +3,25 @@ lt: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Visos kategorijos description: popular_tasks: diff --git a/config/locales/lv/browse.yml b/config/locales/lv/browse.yml index 547ddb967..b4ed8887a 100644 --- a/config/locales/lv/browse.yml +++ b/config/locales/lv/browse.yml @@ -3,15 +3,25 @@ lv: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Visas kategorijas description: popular_tasks: diff --git a/config/locales/ms/browse.yml b/config/locales/ms/browse.yml index 8bf56e6bc..82a0ac7f2 100644 --- a/config/locales/ms/browse.yml +++ b/config/locales/ms/browse.yml @@ -3,15 +3,25 @@ ms: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Semua kategori description: popular_tasks: diff --git a/config/locales/mt/browse.yml b/config/locales/mt/browse.yml index 242531d77..85cd81bee 100644 --- a/config/locales/mt/browse.yml +++ b/config/locales/mt/browse.yml @@ -3,15 +3,25 @@ mt: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Kategoriji kollha description: popular_tasks: diff --git a/config/locales/ne/browse.yml b/config/locales/ne/browse.yml index e082ac6c0..c88cde389 100644 --- a/config/locales/ne/browse.yml +++ b/config/locales/ne/browse.yml @@ -3,15 +3,25 @@ ne: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: description: popular_tasks: diff --git a/config/locales/nl/browse.yml b/config/locales/nl/browse.yml index 95091513b..642fdbda5 100644 --- a/config/locales/nl/browse.yml +++ b/config/locales/nl/browse.yml @@ -3,15 +3,25 @@ nl: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Alle categorieën description: popular_tasks: diff --git a/config/locales/no/browse.yml b/config/locales/no/browse.yml index ca8235a58..871a898ba 100644 --- a/config/locales/no/browse.yml +++ b/config/locales/no/browse.yml @@ -3,15 +3,25 @@ browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Alle kategorier description: popular_tasks: diff --git a/config/locales/pa-pk/browse.yml b/config/locales/pa-pk/browse.yml index 5c8fbb391..5cbd56265 100644 --- a/config/locales/pa-pk/browse.yml +++ b/config/locales/pa-pk/browse.yml @@ -3,15 +3,25 @@ pa-pk: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: سارے گروہ description: popular_tasks: diff --git a/config/locales/pa/browse.yml b/config/locales/pa/browse.yml index c5324babf..416ca3e82 100644 --- a/config/locales/pa/browse.yml +++ b/config/locales/pa/browse.yml @@ -3,15 +3,25 @@ pa: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: ਸਾਰੀਆਂ ਸ਼੍ਰੇਣੀਆਂ description: popular_tasks: diff --git a/config/locales/pl/browse.yml b/config/locales/pl/browse.yml index e711c0e28..f5fd16ac8 100644 --- a/config/locales/pl/browse.yml +++ b/config/locales/pl/browse.yml @@ -3,15 +3,25 @@ pl: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Wszystkie kategorie description: popular_tasks: diff --git a/config/locales/ps/browse.yml b/config/locales/ps/browse.yml index e353e937b..a009f157f 100644 --- a/config/locales/ps/browse.yml +++ b/config/locales/ps/browse.yml @@ -3,15 +3,25 @@ ps: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: ټولې کټګورۍ description: popular_tasks: diff --git a/config/locales/pt/browse.yml b/config/locales/pt/browse.yml index e03f0d6cf..9d72f1a80 100644 --- a/config/locales/pt/browse.yml +++ b/config/locales/pt/browse.yml @@ -3,15 +3,25 @@ pt: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Todas as categorias description: popular_tasks: diff --git a/config/locales/ro/browse.yml b/config/locales/ro/browse.yml index abc80d2ec..71740a213 100644 --- a/config/locales/ro/browse.yml +++ b/config/locales/ro/browse.yml @@ -3,15 +3,25 @@ ro: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Toate categoriile description: popular_tasks: diff --git a/config/locales/ru/browse.yml b/config/locales/ru/browse.yml index f0121dcc4..57cb18f43 100644 --- a/config/locales/ru/browse.yml +++ b/config/locales/ru/browse.yml @@ -3,15 +3,25 @@ ru: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Все категории description: popular_tasks: diff --git a/config/locales/si/browse.yml b/config/locales/si/browse.yml index b11c9ecd9..59f208a03 100644 --- a/config/locales/si/browse.yml +++ b/config/locales/si/browse.yml @@ -3,15 +3,25 @@ si: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: සියලු ප්රවර්ග description: popular_tasks: diff --git a/config/locales/sk/browse.yml b/config/locales/sk/browse.yml index 7ba6c2a39..37fb5c060 100644 --- a/config/locales/sk/browse.yml +++ b/config/locales/sk/browse.yml @@ -3,15 +3,25 @@ sk: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Všetky kategórie description: popular_tasks: diff --git a/config/locales/sl/browse.yml b/config/locales/sl/browse.yml index 5000ddd59..463b89a4c 100644 --- a/config/locales/sl/browse.yml +++ b/config/locales/sl/browse.yml @@ -3,15 +3,25 @@ sl: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Vse kategorije description: popular_tasks: diff --git a/config/locales/so/browse.yml b/config/locales/so/browse.yml index c6a32015a..7d363399d 100644 --- a/config/locales/so/browse.yml +++ b/config/locales/so/browse.yml @@ -3,15 +3,25 @@ so: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Dhamaan qeybaha description: popular_tasks: diff --git a/config/locales/sq/browse.yml b/config/locales/sq/browse.yml index 0680bf009..f72720dcd 100644 --- a/config/locales/sq/browse.yml +++ b/config/locales/sq/browse.yml @@ -3,15 +3,25 @@ sq: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Të gjitha kategoritë description: popular_tasks: diff --git a/config/locales/sr/browse.yml b/config/locales/sr/browse.yml index 9f35a416b..6b6e8932f 100644 --- a/config/locales/sr/browse.yml +++ b/config/locales/sr/browse.yml @@ -3,15 +3,25 @@ sr: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Sve kategorije description: popular_tasks: diff --git a/config/locales/sv/browse.yml b/config/locales/sv/browse.yml index 8a15e40c0..efd5fbac4 100644 --- a/config/locales/sv/browse.yml +++ b/config/locales/sv/browse.yml @@ -3,15 +3,25 @@ sv: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Alla kategorier description: popular_tasks: diff --git a/config/locales/sw/browse.yml b/config/locales/sw/browse.yml index a2ef92da2..6427d344e 100644 --- a/config/locales/sw/browse.yml +++ b/config/locales/sw/browse.yml @@ -3,15 +3,25 @@ sw: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Aina zote description: popular_tasks: diff --git a/config/locales/ta/browse.yml b/config/locales/ta/browse.yml index 81a680d47..cd96b95ff 100644 --- a/config/locales/ta/browse.yml +++ b/config/locales/ta/browse.yml @@ -3,15 +3,25 @@ ta: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: அனைத்து வகையினங்கள் description: popular_tasks: diff --git a/config/locales/th/browse.yml b/config/locales/th/browse.yml index 0e21b9e11..32f4fec91 100644 --- a/config/locales/th/browse.yml +++ b/config/locales/th/browse.yml @@ -3,15 +3,25 @@ th: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: ทุกหมวดหมู่ description: popular_tasks: diff --git a/config/locales/tk/browse.yml b/config/locales/tk/browse.yml index b75ca0cbf..3b9377ccf 100644 --- a/config/locales/tk/browse.yml +++ b/config/locales/tk/browse.yml @@ -3,15 +3,25 @@ tk: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Ähli toparlar description: popular_tasks: diff --git a/config/locales/tr/browse.yml b/config/locales/tr/browse.yml index 8317cae35..40b7b9329 100644 --- a/config/locales/tr/browse.yml +++ b/config/locales/tr/browse.yml @@ -3,15 +3,25 @@ tr: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Tüm kategoriler description: popular_tasks: diff --git a/config/locales/uk/browse.yml b/config/locales/uk/browse.yml index 204d5a44b..9fb3976e3 100644 --- a/config/locales/uk/browse.yml +++ b/config/locales/uk/browse.yml @@ -3,15 +3,25 @@ uk: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Всі категорії description: popular_tasks: diff --git a/config/locales/ur/browse.yml b/config/locales/ur/browse.yml index baf36c1a0..78c78ed2c 100644 --- a/config/locales/ur/browse.yml +++ b/config/locales/ur/browse.yml @@ -3,15 +3,25 @@ ur: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: تمام زمرہ جات description: popular_tasks: diff --git a/config/locales/uz/browse.yml b/config/locales/uz/browse.yml index 7ed820d12..15e213d59 100644 --- a/config/locales/uz/browse.yml +++ b/config/locales/uz/browse.yml @@ -3,15 +3,25 @@ uz: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Барча тоифалар description: popular_tasks: diff --git a/config/locales/vi/browse.yml b/config/locales/vi/browse.yml index e54497b21..08a6ee9d0 100644 --- a/config/locales/vi/browse.yml +++ b/config/locales/vi/browse.yml @@ -3,15 +3,25 @@ vi: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: Tất cả danh mục description: popular_tasks: diff --git a/config/locales/yi/browse.yml b/config/locales/yi/browse.yml index 7bd3df007..0944371d3 100644 --- a/config/locales/yi/browse.yml +++ b/config/locales/yi/browse.yml @@ -3,15 +3,25 @@ yi: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: description: popular_tasks: diff --git a/config/locales/zh-hk/browse.yml b/config/locales/zh-hk/browse.yml index 2c15c0360..6a38960a2 100644 --- a/config/locales/zh-hk/browse.yml +++ b/config/locales/zh-hk/browse.yml @@ -3,15 +3,25 @@ zh-hk: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: 所有種類 description: popular_tasks: diff --git a/config/locales/zh-tw/browse.yml b/config/locales/zh-tw/browse.yml index e61398a5a..745e3f4e9 100644 --- a/config/locales/zh-tw/browse.yml +++ b/config/locales/zh-tw/browse.yml @@ -3,15 +3,25 @@ zh-tw: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: 所有類別 description: popular_tasks: diff --git a/config/locales/zh/browse.yml b/config/locales/zh/browse.yml index cb243ba7d..1af2fbd39 100644 --- a/config/locales/zh/browse.yml +++ b/config/locales/zh/browse.yml @@ -3,15 +3,25 @@ zh: browse: popular_links: benefits: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: business: - - title: - url: - - title: - url: - - title: - url: + control: + - title: + url: + variant_a: + - title: + url: + variant_b: + - title: + url: all_categories: 全部分类 description: popular_tasks: diff --git a/spec/controllers/browse_controller_spec.rb b/spec/controllers/browse_controller_spec.rb index fce86187c..f4e94a32d 100644 --- a/spec/controllers/browse_controller_spec.rb +++ b/spec/controllers/browse_controller_spec.rb @@ -42,6 +42,17 @@ expect(response.content_type).to eq "text/html; charset=utf-8" expect(response).to render_template(partial: "_cards") end + + it "sets Popular Tasks AB test response header" do + get :show, params: { top_level_slug: "benefits" } + expect(response.headers["vary"]).to eq("GOVUK-ABTest-PopularTasks") + end + + it "renders Popular Tasks AB test meta tag" do + get :show, params: { top_level_slug: "benefits" } + meta_tag = %r{} + expect(response.body).to match(meta_tag) + end end it "404 if the browse page does not exist" do diff --git a/spec/features/mainstream_browsing_spec.rb b/spec/features/mainstream_browsing_spec.rb index cacb0551c..92522c2a3 100644 --- a/spec/features/mainstream_browsing_spec.rb +++ b/spec/features/mainstream_browsing_spec.rb @@ -29,4 +29,78 @@ expect(page).to have_selector(".gem-c-breadcrumbs") end end + + context "when AB testing popular tasks" do + include GovukAbTesting::RspecHelpers + + before do + GovukAbTesting.configure do |config| + config.acceptance_test_framework = :capybara + end + end + + context "when visiting /browse/benefits" do + before do + stub_content_store_has_item( + "/browse/benefits", + base_path: "/browse/benefits", + title: "Benefits", + ) + end + + scenario "variant A" do + with_variant PopularTasks: "A" do + visit "/browse/benefits" + expect(page).to have_link("Check benefits and financial support you can get") + end + end + + scenario "variant B" do + with_variant PopularTasks: "B" do + visit "/browse/benefits" + expect(page).to have_link("Check benefits and financial support you can get") + end + end + + scenario "control variant" do + visit "/browse/benefits" + expect(page).to have_link("Check benefits and financial support you can get") + end + end + + context "when visiting /browse/business" do + before do + stub_content_store_has_item( + "/browse/business", + base_path: "/browse/business", + title: "Business", + ) + end + + scenario "variant A" do + with_variant PopularTasks: "A" do + visit "/browse/business" + expect(page).to have_link("HMRC online services: sign in or set up an account") + expect(page).to have_link("Self Assessment tax returns") + expect(page).to have_link("Pay employers' PAYE") + end + end + + scenario "variant B" do + with_variant PopularTasks: "B" do + visit "/browse/business" + expect(page).to have_link("HMRC online services: sign in or set up an account") + expect(page).to have_link("Self Assessment tax returns") + expect(page).to have_link("Pay employers' PAYE") + end + end + + scenario "control variant" do + visit "/browse/business" + expect(page).to have_link("HMRC online services: sign in or set up an account") + expect(page).to have_link("Self Assessment tax returns") + expect(page).to have_link("Pay employers' PAYE") + end + end + end end diff --git a/spec/helpers/browse_helper_spec.rb b/spec/helpers/browse_helper_spec.rb index 296331614..6faab2d14 100644 --- a/spec/helpers/browse_helper_spec.rb +++ b/spec/helpers/browse_helper_spec.rb @@ -1,4 +1,16 @@ RSpec.describe BrowseHelper do + before do + class << helper + def popular_tasks_variant_a_page? + false + end + + def popular_tasks_variant_b_page? + false + end + end + end + describe "#display_popular_links_for_slug?" do it "returns true for existing slug" do expect(helper.display_popular_links_for_slug?("business")).to be(true)