From 3752f6d0fed618ae3d41868351f392c7d8f96e42 Mon Sep 17 00:00:00 2001 From: Mark Chao <mchao@gitlab.com> Date: Wed, 26 Aug 2020 13:47:48 +0800 Subject: [PATCH] Rename seat calculation methods to free up method names for to-be-added attributes --- ee/app/models/gitlab_subscription.rb | 4 ++-- ...sed_for_gitlab_com_subscriptions_worker.rb | 2 +- ee/lib/ee/api/entities/gitlab_subscription.rb | 4 ++-- ee/spec/models/gitlab_subscription_spec.rb | 22 +++++++++---------- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/ee/app/models/gitlab_subscription.rb b/ee/app/models/gitlab_subscription.rb index 87236faa23946..be0574eb131ff 100644 --- a/ee/app/models/gitlab_subscription.rb +++ b/ee/app/models/gitlab_subscription.rb @@ -42,7 +42,7 @@ def self.yield_long_expired_indexed_namespaces(&blk) end end - def seats_in_use + def calculate_seats_in_use namespace.billable_members_count end @@ -50,7 +50,7 @@ def seats_in_use # with the historical max. We want to know how many extra users the customer # has added to their group (users above the number purchased on their subscription). # Then, on the next month we're going to automatically charge the customers for those extra users. - def seats_owed + def calculate_seats_owed return 0 unless has_a_paid_hosted_plan? [0, max_seats_used - seats].max diff --git a/ee/app/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker.rb b/ee/app/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker.rb index 68986a38b89d1..8bd2d0b420e6e 100644 --- a/ee/app/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker.rb +++ b/ee/app/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker.rb @@ -16,7 +16,7 @@ def perform tuples = [] subscriptions.each do |subscription| - seats_in_use = subscription.seats_in_use + seats_in_use = subscription.calculate_seats_in_use next if subscription.max_seats_used >= seats_in_use diff --git a/ee/lib/ee/api/entities/gitlab_subscription.rb b/ee/lib/ee/api/entities/gitlab_subscription.rb index 72198b9f18496..6a35204c8bfea 100644 --- a/ee/lib/ee/api/entities/gitlab_subscription.rb +++ b/ee/lib/ee/api/entities/gitlab_subscription.rb @@ -14,9 +14,9 @@ class GitlabSubscription < Grape::Entity expose :usage do expose :seats, as: :seats_in_subscription - expose :seats_in_use + expose :calculate_seats_in_use, as: :seats_in_use expose :max_seats_used - expose :seats_owed + expose :calculate_seats_owed, as: :seats_owed end expose :billing do diff --git a/ee/spec/models/gitlab_subscription_spec.rb b/ee/spec/models/gitlab_subscription_spec.rb index 2305b4e33db05..1d860fbe7b800 100644 --- a/ee/spec/models/gitlab_subscription_spec.rb +++ b/ee/spec/models/gitlab_subscription_spec.rb @@ -53,7 +53,7 @@ end end - describe '#seats_in_use' do + describe '#calculate_seats_in_use' do let!(:user_1) { create(:user) } let!(:user_2) { create(:user) } let!(:blocked_user) { create(:user, :blocked) } @@ -68,14 +68,14 @@ it 'returns count of members' do group.add_developer(user_1) - expect(gitlab_subscription.seats_in_use).to eq(1) + expect(gitlab_subscription.calculate_seats_in_use).to eq(1) end it 'also counts users from subgroups' do group.add_developer(user_1) subgroup_1.add_developer(user_2) - expect(gitlab_subscription.seats_in_use).to eq(2) + expect(gitlab_subscription.calculate_seats_in_use).to eq(2) end it 'does not count duplicated members' do @@ -83,7 +83,7 @@ subgroup_1.add_developer(user_2) subgroup_2.add_developer(user_2) - expect(gitlab_subscription.seats_in_use).to eq(2) + expect(gitlab_subscription.calculate_seats_in_use).to eq(2) end it 'does not count blocked members' do @@ -91,7 +91,7 @@ group.add_developer(blocked_user) expect(group.member_count).to eq(2) - expect(gitlab_subscription.seats_in_use).to eq(1) + expect(gitlab_subscription.calculate_seats_in_use).to eq(1) end context 'with guest members' do @@ -103,7 +103,7 @@ it 'excludes these members' do gitlab_subscription.update!(plan_code: 'gold') - expect(gitlab_subscription.seats_in_use).to eq(0) + expect(gitlab_subscription.calculate_seats_in_use).to eq(0) end end @@ -112,7 +112,7 @@ it 'excludes these members' do gitlab_subscription.update!(plan_code: plan) - expect(gitlab_subscription.seats_in_use).to eq(1) + expect(gitlab_subscription.calculate_seats_in_use).to eq(1) end end end @@ -130,13 +130,13 @@ [bronze_plan, silver_plan, gold_plan].each do |plan| gitlab_subscription.update!(hosted_plan: plan) - expect(gitlab_subscription.seats_in_use).to eq(1) + expect(gitlab_subscription.calculate_seats_in_use).to eq(1) end end end end - describe '#seats_owed' do + describe '#calculate_seats_owed' do let!(:gitlab_subscription) { create(:gitlab_subscription, subscription_attrs) } before do @@ -145,7 +145,7 @@ shared_examples 'always returns a total of 0' do it 'does not update max_seats_used' do - expect(gitlab_subscription.seats_owed).to eq(0) + expect(gitlab_subscription.calculate_seats_owed).to eq(0) end end @@ -171,7 +171,7 @@ let(:subscription_attrs) { { hosted_plan: bronze_plan } } it 'calculates the number of owed seats' do - expect(gitlab_subscription.reload.seats_owed).to eq(5) + expect(gitlab_subscription.reload.calculate_seats_owed).to eq(5) end end end -- GitLab