From 041bce9ed64d5c2a4b0f6453b196daceaed09e40 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Wed, 2 Jul 2025 03:34:42 -0400 Subject: [PATCH] Add coverage for `valid_locale_or_nil` languages helper method (#34866) --- spec/helpers/languages_helper_spec.rb | 36 +++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/spec/helpers/languages_helper_spec.rb b/spec/helpers/languages_helper_spec.rb index dd9b6004d..615194a64 100644 --- a/spec/helpers/languages_helper_spec.rb +++ b/spec/helpers/languages_helper_spec.rb @@ -86,4 +86,40 @@ RSpec.describe LanguagesHelper do end end end + + describe '#valid_locale_or_nil' do + subject { helper.valid_locale_or_nil(string) } + + context 'when string is nil' do + let(:string) { nil } + + it { is_expected.to be_nil } + end + + context 'when string is empty' do + let(:string) { '' } + + it { is_expected.to be_nil } + end + + context 'when string is valid locale' do + let(:string) { 'en' } + + it { is_expected.to eq('en') } + end + + context 'when string contains region' do + context 'when base locale is valid' do + let(:string) { 'en-US' } + + it { is_expected.to eq('en') } + end + + context 'when base locale is not valid' do + let(:string) { 'qq-US' } + + it { is_expected.to be_nil } + end + end + end end