diff --git a/ee/app/controllers/gitlab_subscriptions/trials/duo_enterprise_controller.rb b/ee/app/controllers/gitlab_subscriptions/trials/duo_enterprise_controller.rb index 47d07895c9a33b0858502c5f2b7d64590d538c46..e7ec75ce1aa685b9c9c992434b7464c1ff3507a6 100644 --- a/ee/app/controllers/gitlab_subscriptions/trials/duo_enterprise_controller.rb +++ b/ee/app/controllers/gitlab_subscriptions/trials/duo_enterprise_controller.rb @@ -29,7 +29,7 @@ def create if @result.success? # lead and trial created flash[:success] = success_flash_message( - GitlabSubscriptions::Trials::DuoEnterprise.add_on_purchase_for_namespace(@result.payload[:namespace]) + GitlabSubscriptions::Trials::DuoEnterprise.any_add_on_purchase_for_namespace(@result.payload[:namespace]) ) redirect_to group_settings_gitlab_duo_seat_utilization_index_path(@result.payload[:namespace]) diff --git a/ee/app/controllers/gitlab_subscriptions/trials/duo_pro_controller.rb b/ee/app/controllers/gitlab_subscriptions/trials/duo_pro_controller.rb index 68aa42e958e861d084995d4ed9eaada4fa95aedf..84126945f1df281eb4f923bad0ee4cf66ba070fe 100644 --- a/ee/app/controllers/gitlab_subscriptions/trials/duo_pro_controller.rb +++ b/ee/app/controllers/gitlab_subscriptions/trials/duo_pro_controller.rb @@ -29,7 +29,7 @@ def create if @result.success? # lead and trial created flash[:success] = success_flash_message( - GitlabSubscriptions::Trials::DuoPro.add_on_purchase_for_namespace(@result.payload[:namespace]) + GitlabSubscriptions::Trials::DuoPro.any_add_on_purchase_for_namespace(@result.payload[:namespace]) ) redirect_to group_settings_gitlab_duo_seat_utilization_index_path(@result.payload[:namespace]) diff --git a/ee/app/controllers/gitlab_subscriptions/trials_controller.rb b/ee/app/controllers/gitlab_subscriptions/trials_controller.rb index 39288ce3fd732cf5c3f665d6f8b6b857ee0c9cfc..c64d452a2db4a09e77115280aa17518b7f680be7 100644 --- a/ee/app/controllers/gitlab_subscriptions/trials_controller.rb +++ b/ee/app/controllers/gitlab_subscriptions/trials_controller.rb @@ -35,7 +35,7 @@ def create # in the premium with ultimate trial case the trial_ends_on does not exist on the # gitlab_subscription record. flash[:success] = success_flash_message( - GitlabSubscriptions::Trials::DuoEnterprise.add_on_purchase_for_namespace(@result.payload[:namespace]) + GitlabSubscriptions::Trials::DuoEnterprise.any_add_on_purchase_for_namespace(@result.payload[:namespace]) ) redirect_to trial_success_path(@result.payload[:namespace]) diff --git a/ee/app/models/gitlab_subscriptions/trials/duo_enterprise.rb b/ee/app/models/gitlab_subscriptions/trials/duo_enterprise.rb index a2a1061eef79a3f709d77ecd9ed81a31af5f39cf..cec86d1e107d2b3faae03c33d627e7e47dc1b89b 100644 --- a/ee/app/models/gitlab_subscriptions/trials/duo_enterprise.rb +++ b/ee/app/models/gitlab_subscriptions/trials/duo_enterprise.rb @@ -3,7 +3,7 @@ module GitlabSubscriptions module Trials module DuoEnterprise - def self.add_on_purchase_for_namespace(namespace) + def self.any_add_on_purchase_for_namespace(namespace) GitlabSubscriptions::NamespaceAddOnPurchasesFinder .new(namespace, add_on: :duo_enterprise, trial: true, only_active: false) .execute @@ -22,7 +22,7 @@ def self.show_duo_enterprise_discover?(namespace, user) ::Gitlab::Saas.feature_available?(:subscriptions_trials) && user.can?(:admin_namespace, namespace) && GitlabSubscriptions::Trials::AddOnStatus.new( - add_on_purchase: add_on_purchase_for_namespace(namespace.root_ancestor) + add_on_purchase: any_add_on_purchase_for_namespace(namespace.root_ancestor) ).show? end end diff --git a/ee/app/models/gitlab_subscriptions/trials/duo_pro.rb b/ee/app/models/gitlab_subscriptions/trials/duo_pro.rb index a0f89a2973ca136d0cb4d43aaa6670a492ee2908..b7e561f4d13ec8c08ef0396293edb5224e54dc80 100644 --- a/ee/app/models/gitlab_subscriptions/trials/duo_pro.rb +++ b/ee/app/models/gitlab_subscriptions/trials/duo_pro.rb @@ -10,7 +10,7 @@ def self.show_duo_pro_discover?(namespace, user) ::Gitlab::Saas.feature_available?(:subscriptions_trials) && user.can?(:admin_namespace, namespace) && GitlabSubscriptions::Trials::AddOnStatus.new( - add_on_purchase: add_on_purchase_for_namespace(namespace.root_ancestor) + add_on_purchase: any_add_on_purchase_for_namespace(namespace.root_ancestor) ).show? end @@ -30,7 +30,7 @@ def self.active_add_on_purchase_for_namespace?(namespace) .new(namespace, add_on: :duo_pro, trial: true, only_active: true).execute.any? end - def self.add_on_purchase_for_namespace(namespace) + def self.any_add_on_purchase_for_namespace(namespace) GitlabSubscriptions::NamespaceAddOnPurchasesFinder .new(namespace, add_on: :duo_pro, trial: true, only_active: false) .execute diff --git a/ee/app/presenters/gitlab_subscriptions/trials/duo_enterprise_status_widget_presenter.rb b/ee/app/presenters/gitlab_subscriptions/trials/duo_enterprise_status_widget_presenter.rb index 839d1307c4af2e98bc35eb8c979dd50b19d04f4a..ae186942ada55bc2c2ceedf7162cef6dcd91d716 100644 --- a/ee/app/presenters/gitlab_subscriptions/trials/duo_enterprise_status_widget_presenter.rb +++ b/ee/app/presenters/gitlab_subscriptions/trials/duo_enterprise_status_widget_presenter.rb @@ -36,7 +36,7 @@ def attributes private def duo_enterprise_trial_add_on_purchase - GitlabSubscriptions::Trials::DuoEnterprise.add_on_purchase_for_namespace(namespace) + GitlabSubscriptions::Trials::DuoEnterprise.any_add_on_purchase_for_namespace(namespace) end strong_memoize_attr :duo_enterprise_trial_add_on_purchase diff --git a/ee/app/presenters/gitlab_subscriptions/trials/duo_pro_status_widget_presenter.rb b/ee/app/presenters/gitlab_subscriptions/trials/duo_pro_status_widget_presenter.rb index a005dcd5d0cf157476fc04ffce2eb180d637c7ba..3797a161821de1efc43e267471b962fa96e0962b 100644 --- a/ee/app/presenters/gitlab_subscriptions/trials/duo_pro_status_widget_presenter.rb +++ b/ee/app/presenters/gitlab_subscriptions/trials/duo_pro_status_widget_presenter.rb @@ -33,7 +33,7 @@ def attributes private def duo_pro_trial_add_on_purchase - GitlabSubscriptions::Trials::DuoPro.add_on_purchase_for_namespace(namespace) + GitlabSubscriptions::Trials::DuoPro.any_add_on_purchase_for_namespace(namespace) end strong_memoize_attr :duo_pro_trial_add_on_purchase diff --git a/ee/app/presenters/gitlab_subscriptions/trials/status_widget_presenter.rb b/ee/app/presenters/gitlab_subscriptions/trials/status_widget_presenter.rb index 1b062a7e7a418cec4c4985c5157eaf0080743477..22712a616875c5e972c872318ec37e0470dfa3be 100644 --- a/ee/app/presenters/gitlab_subscriptions/trials/status_widget_presenter.rb +++ b/ee/app/presenters/gitlab_subscriptions/trials/status_widget_presenter.rb @@ -62,7 +62,7 @@ def duo_enterprise_status strong_memoize_attr :duo_enterprise_status def duo_enterprise_trial_add_on_purchase - GitlabSubscriptions::Trials::DuoEnterprise.add_on_purchase_for_namespace(namespace) + GitlabSubscriptions::Trials::DuoEnterprise.any_add_on_purchase_for_namespace(namespace) end strong_memoize_attr :duo_enterprise_trial_add_on_purchase diff --git a/ee/spec/helpers/sidebars_helper_spec.rb b/ee/spec/helpers/sidebars_helper_spec.rb index a7c6efff3f2628dc6d1e51bc39eb833eba08ddc7..070cff5492d5b4b1fc4b7d2d4488c0f6928aab21 100644 --- a/ee/spec/helpers/sidebars_helper_spec.rb +++ b/ee/spec/helpers/sidebars_helper_spec.rb @@ -95,9 +95,8 @@ before do stub_saas_features(subscriptions_trials: true) - allow(GitlabSubscriptions::Trials::DuoPro).to receive(:add_on_purchase_for_namespace) allow(GitlabSubscriptions::Trials::DuoPro) - .to receive(:add_on_purchase_for_namespace).with(root_group).and_return(add_on_purchase) + .to receive(:any_add_on_purchase_for_namespace).with(root_group).and_return(add_on_purchase) end describe 'does not return trial status widget data' do diff --git a/ee/spec/models/gitlab_subscriptions/trials/duo_enterprise_spec.rb b/ee/spec/models/gitlab_subscriptions/trials/duo_enterprise_spec.rb index ecfd2e14f2d41986dce02075006a1931e52af9bb..8217780da8666a3f85e04f6884c8478cdc64b11c 100644 --- a/ee/spec/models/gitlab_subscriptions/trials/duo_enterprise_spec.rb +++ b/ee/spec/models/gitlab_subscriptions/trials/duo_enterprise_spec.rb @@ -3,8 +3,8 @@ require 'spec_helper' RSpec.describe GitlabSubscriptions::Trials::DuoEnterprise, feature_category: :subscription_management do - describe '.add_on_purchase_for_namespace' do - subject(:add_on_purchase_for_namespace) { described_class.add_on_purchase_for_namespace(namespace) } + describe '.any_add_on_purchase_for_namespace' do + subject(:any_add_on_purchase_for_namespace) { described_class.any_add_on_purchase_for_namespace(namespace) } let_it_be(:namespace) { create(:group) } @@ -14,7 +14,7 @@ end it 'returns the add_on_purchase' do - expect(add_on_purchase_for_namespace).to eq(add_on_purchase) + expect(any_add_on_purchase_for_namespace).to eq(add_on_purchase) end end @@ -24,13 +24,13 @@ end it 'returns nil' do - expect(add_on_purchase_for_namespace).to be_nil + expect(any_add_on_purchase_for_namespace).to be_nil end end context 'when there are no add_on_purchases' do it 'returns nil' do - expect(add_on_purchase_for_namespace).to be_nil + expect(any_add_on_purchase_for_namespace).to be_nil end end end diff --git a/ee/spec/models/gitlab_subscriptions/trials/duo_pro_spec.rb b/ee/spec/models/gitlab_subscriptions/trials/duo_pro_spec.rb index f6c0ac7fb4676807ca2d56459e7e57284f5e26e8..2f802774682134ddb63dbc9ab7c79dea74fbd1f3 100644 --- a/ee/spec/models/gitlab_subscriptions/trials/duo_pro_spec.rb +++ b/ee/spec/models/gitlab_subscriptions/trials/duo_pro_spec.rb @@ -159,8 +159,8 @@ end end - describe '.add_on_purchase_for_namespace' do - subject(:add_on_purchase_for_namespace) { described_class.add_on_purchase_for_namespace(namespace) } + describe '.any_add_on_purchase_for_namespace' do + subject(:any_add_on_purchase_for_namespace) { described_class.any_add_on_purchase_for_namespace(namespace) } context 'when there is an add_on_purchase' do let_it_be(:add_on_purchase) do @@ -168,7 +168,7 @@ end it 'returns the add_on_purchase' do - expect(add_on_purchase_for_namespace).to eq(add_on_purchase) + expect(any_add_on_purchase_for_namespace).to eq(add_on_purchase) end end @@ -178,13 +178,13 @@ end it 'returns nil' do - expect(add_on_purchase_for_namespace).to be_nil + expect(any_add_on_purchase_for_namespace).to be_nil end end context 'when there are no add_on_purchases' do it 'returns nil' do - expect(add_on_purchase_for_namespace).to be_nil + expect(any_add_on_purchase_for_namespace).to be_nil end end end diff --git a/ee/spec/presenters/gitlab_subscriptions/trials/duo_enterprise_status_widget_presenter_spec.rb b/ee/spec/presenters/gitlab_subscriptions/trials/duo_enterprise_status_widget_presenter_spec.rb index 0acad9fec4372f78ac6773e971adb64c7239a96c..cb7b7e96d5f9015b1522a50547e6f32d21577664 100644 --- a/ee/spec/presenters/gitlab_subscriptions/trials/duo_enterprise_status_widget_presenter_spec.rb +++ b/ee/spec/presenters/gitlab_subscriptions/trials/duo_enterprise_status_widget_presenter_spec.rb @@ -15,9 +15,8 @@ before do build(:gitlab_subscription, :ultimate, namespace: namespace) - allow(GitlabSubscriptions::Trials::DuoEnterprise).to receive(:add_on_purchase_for_namespace) allow(GitlabSubscriptions::Trials::DuoEnterprise) - .to receive(:add_on_purchase_for_namespace).with(namespace).and_return(add_on_purchase) + .to receive(:any_add_on_purchase_for_namespace).with(namespace).and_return(add_on_purchase) end describe '#eligible_for_widget?' do diff --git a/ee/spec/presenters/gitlab_subscriptions/trials/duo_pro_status_widget_presenter_spec.rb b/ee/spec/presenters/gitlab_subscriptions/trials/duo_pro_status_widget_presenter_spec.rb index 30f793c686de83624c35b8fcc8be538804083210..3266861096f4c6dc11470145a9b307b2e555aaaa 100644 --- a/ee/spec/presenters/gitlab_subscriptions/trials/duo_pro_status_widget_presenter_spec.rb +++ b/ee/spec/presenters/gitlab_subscriptions/trials/duo_pro_status_widget_presenter_spec.rb @@ -13,9 +13,9 @@ before do build(:gitlab_subscription, :ultimate, namespace: group) - allow(GitlabSubscriptions::Trials::DuoPro).to receive(:add_on_purchase_for_namespace) + allow(GitlabSubscriptions::Trials::DuoPro).to receive(:any_add_on_purchase_for_namespace) allow(GitlabSubscriptions::Trials::DuoPro) - .to receive(:add_on_purchase_for_namespace).with(group).and_return(add_on_purchase) + .to receive(:any_add_on_purchase_for_namespace).with(group).and_return(add_on_purchase) end describe '#attributes' do diff --git a/ee/spec/presenters/gitlab_subscriptions/trials/status_widget_presenter_spec.rb b/ee/spec/presenters/gitlab_subscriptions/trials/status_widget_presenter_spec.rb index bf9d541525327a282710a6560ac8e4dd7f96f1b8..a75b6f0efa03ff0c3327937d4985f93b25707822 100644 --- a/ee/spec/presenters/gitlab_subscriptions/trials/status_widget_presenter_spec.rb +++ b/ee/spec/presenters/gitlab_subscriptions/trials/status_widget_presenter_spec.rb @@ -91,9 +91,8 @@ context 'when duo enterprise is available' do before do - allow(GitlabSubscriptions::Trials::DuoEnterprise).to receive(:add_on_purchase_for_namespace) allow(GitlabSubscriptions::Trials::DuoEnterprise) - .to receive(:add_on_purchase_for_namespace).with(group).and_return(add_on_purchase) + .to receive(:any_add_on_purchase_for_namespace).with(group).and_return(add_on_purchase) end it 'returns ultimate type and correct discover page path for bundled trials' do diff --git a/ee/spec/presenters/gitlab_subscriptions/trials/widget_presenter_spec.rb b/ee/spec/presenters/gitlab_subscriptions/trials/widget_presenter_spec.rb index 33b0f6d691a3f9faa81b8ff9817f2e08725d0552..f55c0dcfcdf8d328dc411ec9410da29cd74d50d4 100644 --- a/ee/spec/presenters/gitlab_subscriptions/trials/widget_presenter_spec.rb +++ b/ee/spec/presenters/gitlab_subscriptions/trials/widget_presenter_spec.rb @@ -70,7 +70,7 @@ before do allow(GitlabSubscriptions::Trials::DuoEnterprise) - .to receive(:add_on_purchase_for_namespace).with(current_group).and_return(add_on_purchase) + .to receive(:any_add_on_purchase_for_namespace).with(current_group).and_return(add_on_purchase) end it { is_expected.to match_array(duo_enterprise_trial_widget_attribute_keys) }