From 1d943c02953259188ffeaa15d60b41f89a305a31 Mon Sep 17 00:00:00 2001 From: Serhii Yarynovskyi <syarynovskyi@gitlab.com> Date: Thu, 24 Oct 2024 15:31:50 +0000 Subject: [PATCH] Rename Duo trials module methods Rename add_on_purchase_for_namespace method to any_add_on_purchase_for_namespace for Duo Pro and Duo Enterprise trial modules --- .../trials/duo_enterprise_controller.rb | 2 +- .../gitlab_subscriptions/trials/duo_pro_controller.rb | 2 +- .../gitlab_subscriptions/trials_controller.rb | 2 +- .../gitlab_subscriptions/trials/duo_enterprise.rb | 4 ++-- ee/app/models/gitlab_subscriptions/trials/duo_pro.rb | 4 ++-- .../trials/duo_enterprise_status_widget_presenter.rb | 2 +- .../trials/duo_pro_status_widget_presenter.rb | 2 +- .../trials/status_widget_presenter.rb | 2 +- ee/spec/helpers/sidebars_helper_spec.rb | 3 +-- .../gitlab_subscriptions/trials/duo_enterprise_spec.rb | 10 +++++----- .../models/gitlab_subscriptions/trials/duo_pro_spec.rb | 10 +++++----- .../duo_enterprise_status_widget_presenter_spec.rb | 3 +-- .../trials/duo_pro_status_widget_presenter_spec.rb | 4 ++-- .../trials/status_widget_presenter_spec.rb | 3 +-- .../trials/widget_presenter_spec.rb | 2 +- 15 files changed, 26 insertions(+), 29 deletions(-) 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 47d07895c9a33..e7ec75ce1aa68 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 68aa42e958e86..84126945f1df2 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 39288ce3fd732..c64d452a2db4a 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 a2a1061eef79a..cec86d1e107d2 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 a0f89a2973ca1..b7e561f4d13ec 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 839d1307c4af2..ae186942ada55 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 a005dcd5d0cf1..3797a161821de 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 1b062a7e7a418..22712a616875c 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 a7c6efff3f262..070cff5492d5b 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 ecfd2e14f2d41..8217780da8666 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 f6c0ac7fb4676..2f80277468213 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 0acad9fec4372..cb7b7e96d5f90 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 30f793c686de8..3266861096f4c 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 bf9d541525327..a75b6f0efa03f 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 33b0f6d691a3f..f55c0dcfcdf8d 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) } -- GitLab