Commit addf261d authored by Jose Ivan Vargas's avatar Jose Ivan Vargas

Merge branch '321364-update-rspecs-with-new-plans' into 'master'

Update codebase with use of new "Ultimate" plan along with the deprecated "Gold" plan

See merge request gitlab-org/gitlab!54333
parents a8ae15e7 9e447544
...@@ -781,7 +781,7 @@ RSpec/AnyInstanceOf: ...@@ -781,7 +781,7 @@ RSpec/AnyInstanceOf:
- 'ee/spec/services/slash_commands/global_slack_handler_spec.rb' - 'ee/spec/services/slash_commands/global_slack_handler_spec.rb'
- 'ee/spec/support/helpers/ee/stub_configuration.rb' - 'ee/spec/support/helpers/ee/stub_configuration.rb'
- 'ee/spec/support/shared_examples/controllers/analytics/cycle_analytics/shared_stage_shared_examples.rb' - 'ee/spec/support/shared_examples/controllers/analytics/cycle_analytics/shared_stage_shared_examples.rb'
- 'ee/spec/support/shared_examples/features/gold_trial_callout_shared_examples.rb' - 'ee/spec/support/shared_examples/features/ultimate_trial_callout_shared_examples.rb'
- 'ee/spec/support/shared_examples/lib/gitlab/geo/geo_logs_event_source_info_shared_examples.rb' - 'ee/spec/support/shared_examples/lib/gitlab/geo/geo_logs_event_source_info_shared_examples.rb'
- 'ee/spec/support/shared_examples/models/member_shared_examples.rb' - 'ee/spec/support/shared_examples/models/member_shared_examples.rb'
- 'ee/spec/support/shared_examples/services/base_sync_service_shared_examples.rb' - 'ee/spec/support/shared_examples/services/base_sync_service_shared_examples.rb'
......
...@@ -47,7 +47,7 @@ module InProductMarketingHelper ...@@ -47,7 +47,7 @@ module InProductMarketingHelper
s_('InProductMarketing|Are your runners ready?') s_('InProductMarketing|Are your runners ready?')
], ],
trial: [ trial: [
s_('InProductMarketing|Start a free trial of GitLab Gold – no CC required'), s_('InProductMarketing|Start a free trial of GitLab Ultimate – no CC required'),
s_('InProductMarketing|Improve app security with a 30-day trial'), s_('InProductMarketing|Improve app security with a 30-day trial'),
s_('InProductMarketing|Start with a GitLab Gold free trial') s_('InProductMarketing|Start with a GitLab Gold free trial')
], ],
......
...@@ -31,7 +31,7 @@ module UserCalloutsHelper ...@@ -31,7 +31,7 @@ module UserCalloutsHelper
render 'shared/flash_user_callout', flash_type: flash_type, message: message, feature_name: feature_name render 'shared/flash_user_callout', flash_type: flash_type, message: message, feature_name: feature_name
end end
def render_dashboard_gold_trial(user) def render_dashboard_ultimate_trial(user)
end end
def render_account_recovery_regular_check def render_account_recovery_regular_check
......
...@@ -7,7 +7,7 @@ class UserCallout < ApplicationRecord ...@@ -7,7 +7,7 @@ class UserCallout < ApplicationRecord
gke_cluster_integration: 1, gke_cluster_integration: 1,
gcp_signup_offer: 2, gcp_signup_offer: 2,
cluster_security_warning: 3, cluster_security_warning: 3,
gold_trial: 4, # EE-only ultimate_trial: 4, # EE-only
geo_enable_hashed_storage: 5, # EE-only geo_enable_hashed_storage: 5, # EE-only
geo_migrate_hashed_storage: 6, # EE-only geo_migrate_hashed_storage: 6, # EE-only
canary_deployment: 7, # EE-only canary_deployment: 7, # EE-only
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
= content_for :meta_tags do = content_for :meta_tags do
= auto_discovery_link_tag(:atom, dashboard_projects_url(rss_url_options), title: "All activity") = auto_discovery_link_tag(:atom, dashboard_projects_url(rss_url_options), title: "All activity")
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
- page_title _("Activity") - page_title _("Activity")
- header_title _("Activity"), activity_dashboard_path - header_title _("Activity"), activity_dashboard_path
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
- page_title _("Groups") - page_title _("Groups")
- header_title _("Groups"), dashboard_groups_path - header_title _("Groups"), dashboard_groups_path
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
= render 'dashboard/groups_head' = render 'dashboard/groups_head'
- if params[:filter].blank? && @groups.empty? - if params[:filter].blank? && @groups.empty?
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
= content_for :meta_tags do = content_for :meta_tags do
= auto_discovery_link_tag(:atom, safe_params.merge(rss_url_options).to_h, title: "#{current_user.name} issues") = auto_discovery_link_tag(:atom, safe_params.merge(rss_url_options).to_h, title: "#{current_user.name} issues")
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
.page-title-holder.d-flex.align-items-center .page-title-holder.d-flex.align-items-center
%h1.page-title= _('Issues') %h1.page-title= _('Issues')
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
- page_title _("Merge Requests") - page_title _("Merge Requests")
- @breadcrumb_link = merge_requests_dashboard_path(assignee_username: current_user.username) - @breadcrumb_link = merge_requests_dashboard_path(assignee_username: current_user.username)
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
.page-title-holder.d-flex.align-items-start.flex-column.flex-sm-row.align-items-sm-center .page-title-holder.d-flex.align-items-start.flex-column.flex-sm-row.align-items-sm-center
%h1.page-title= _('Merge Requests') %h1.page-title= _('Merge Requests')
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
callouts_feature_id: UserCalloutsHelper::CUSTOMIZE_HOMEPAGE, callouts_feature_id: UserCalloutsHelper::CUSTOMIZE_HOMEPAGE,
track_label: 'home_page' } } track_label: 'home_page' } }
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
- page_title _("Projects") - page_title _("Projects")
- header_title _("Projects"), dashboard_projects_path - header_title _("Projects"), dashboard_projects_path
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
- breadcrumb_title _("Projects") - breadcrumb_title _("Projects")
- header_title _("Projects"), dashboard_projects_path - header_title _("Projects"), dashboard_projects_path
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
= render "projects/last_push" = render "projects/last_push"
= render 'dashboard/projects_head', project_tab_filter: :starred = render 'dashboard/projects_head', project_tab_filter: :starred
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
- page_title _("To-Do List") - page_title _("To-Do List")
- header_title _("To-Do List"), dashboard_todos_path - header_title _("To-Do List"), dashboard_todos_path
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
- add_page_specific_style 'page_bundles/todos' - add_page_specific_style 'page_bundles/todos'
.page-title-holder.d-flex.align-items-center .page-title-holder.d-flex.align-items-center
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
- page_title _("Groups") - page_title _("Groups")
- header_title _("Groups"), dashboard_groups_path - header_title _("Groups"), dashboard_groups_path
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
- if current_user - if current_user
= render 'dashboard/groups_head' = render 'dashboard/groups_head'
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
- header_title _("Projects"), dashboard_projects_path - header_title _("Projects"), dashboard_projects_path
- page_canonical_link explore_projects_url - page_canonical_link explore_projects_url
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
- if current_user - if current_user
= render 'dashboard/projects_head', project_tab_filter: :explore = render 'dashboard/projects_head', project_tab_filter: :explore
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
- page_title _("Projects") - page_title _("Projects")
- header_title _("Projects"), dashboard_projects_path - header_title _("Projects"), dashboard_projects_path
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
- if current_user - if current_user
= render 'dashboard/projects_head', project_tab_filter: :explore = render 'dashboard/projects_head', project_tab_filter: :explore
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
- page_title _("Projects") - page_title _("Projects")
- header_title _("Projects"), dashboard_projects_path - header_title _("Projects"), dashboard_projects_path
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
- if current_user - if current_user
= render 'dashboard/projects_head', project_tab_filter: :starred = render 'dashboard/projects_head', project_tab_filter: :starred
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
- page_title _("Projects") - page_title _("Projects")
- header_title _("Projects"), dashboard_projects_path - header_title _("Projects"), dashboard_projects_path
= render_dashboard_gold_trial(current_user) = render_dashboard_ultimate_trial(current_user)
- if current_user - if current_user
= render 'dashboard/projects_head', project_tab_filter: :explore_trending = render 'dashboard/projects_head', project_tab_filter: :explore_trending
......
...@@ -99,7 +99,7 @@ export default { ...@@ -99,7 +99,7 @@ export default {
), ),
], ],
discoverPlanCaption: s__( discoverPlanCaption: s__(
'Discover|See the other features of the %{linkStart}gold plan%{linkEnd}', 'Discover|See the other features of the %{linkStart}ultimate plan%{linkEnd}',
), ),
}, },
}; };
......
...@@ -49,7 +49,7 @@ module Registrations ...@@ -49,7 +49,7 @@ module Registrations
def create_learn_gitlab_project def create_learn_gitlab_project
title, filename = if helpers.in_trial_onboarding_flow? title, filename = if helpers.in_trial_onboarding_flow?
[s_('Learn GitLab - Ultimate trial'), 'learn_gitlab_gold_trial.tar.gz'] [s_('Learn GitLab - Ultimate trial'), 'learn_gitlab_ultimate_trial.tar.gz']
else else
[s_('Learn GitLab'), 'learn_gitlab.tar.gz'] [s_('Learn GitLab'), 'learn_gitlab.tar.gz']
end end
......
...@@ -47,7 +47,7 @@ module Mutations ...@@ -47,7 +47,7 @@ module Mutations
if result.duplicate_project_ids.include?(project.id) if result.duplicate_project_ids.include?(project.id)
_('The project has already been added to your dashboard.') _('The project has already been added to your dashboard.')
elsif result.not_licensed_project_ids.include?(project.id) elsif result.not_licensed_project_ids.include?(project.id)
_('Only projects created under a Gold license are available in Security Dashboards.') _('Only projects created under a Ultimate license are available in Security Dashboards.')
else else
_('Project was not found or you do not have permission to add this project to Security Dashboards.') _('Project was not found or you do not have permission to add this project to Security Dashboards.')
end end
......
...@@ -8,7 +8,7 @@ module EE ...@@ -8,7 +8,7 @@ module EE
ACTIVE_USER_COUNT_THRESHOLD = 'active_user_count_threshold' ACTIVE_USER_COUNT_THRESHOLD = 'active_user_count_threshold'
GEO_ENABLE_HASHED_STORAGE = 'geo_enable_hashed_storage' GEO_ENABLE_HASHED_STORAGE = 'geo_enable_hashed_storage'
GEO_MIGRATE_HASHED_STORAGE = 'geo_migrate_hashed_storage' GEO_MIGRATE_HASHED_STORAGE = 'geo_migrate_hashed_storage'
GOLD_TRIAL = 'gold_trial' ULTIMATE_TRIAL = 'ultimate_trial'
NEW_USER_SIGNUPS_CAP_REACHED = 'new_user_signups_cap_reached' NEW_USER_SIGNUPS_CAP_REACHED = 'new_user_signups_cap_reached'
PERSONAL_ACCESS_TOKEN_EXPIRY = 'personal_access_token_expiry' PERSONAL_ACCESS_TOKEN_EXPIRY = 'personal_access_token_expiry'
THREAT_MONITORING_INFO = 'threat_monitoring_info' THREAT_MONITORING_INFO = 'threat_monitoring_info'
...@@ -43,14 +43,14 @@ module EE ...@@ -43,14 +43,14 @@ module EE
any_project_not_in_hashed_storage? any_project_not_in_hashed_storage?
end end
override :render_dashboard_gold_trial override :render_dashboard_ultimate_trial
def render_dashboard_gold_trial(user) def render_dashboard_ultimate_trial(user)
return unless show_gold_trial?(user, GOLD_TRIAL) && return unless show_ultimate_trial?(user, ULTIMATE_TRIAL) &&
user_default_dashboard?(user) && user_default_dashboard?(user) &&
!user.owns_paid_namespace? && !user.owns_paid_namespace? &&
user.any_namespace_without_trial? user.any_namespace_without_trial?
render 'shared/gold_trial_callout_content' render 'shared/ultimate_trial_callout_content'
end end
def render_account_recovery_regular_check def render_account_recovery_regular_check
...@@ -125,15 +125,15 @@ module EE ...@@ -125,15 +125,15 @@ module EE
linked_message.html_safe linked_message.html_safe
end end
def show_gold_trial?(user, callout = GOLD_TRIAL) def show_ultimate_trial?(user, callout = ULTIMATE_TRIAL)
return false unless user return false unless user
return false unless show_gold_trial_suitable_env? return false unless show_ultimate_trial_suitable_env?
return false if user_dismissed?(callout) return false if user_dismissed?(callout)
true true
end end
def show_gold_trial_suitable_env? def show_ultimate_trial_suitable_env?
::Gitlab.com? && !::Gitlab::Database.read_only? ::Gitlab.com? && !::Gitlab::Database.read_only?
end end
......
- is_dismissable = local_assigns.fetch(:is_dismissable, true) - is_dismissable = local_assigns.fetch(:is_dismissable, true)
- callout = local_assigns.fetch(:callout, UserCalloutsHelper::GOLD_TRIAL) - callout = local_assigns.fetch(:callout, UserCalloutsHelper::ULTIMATE_TRIAL)
- button_css_class = is_dismissable ? 'mr-3' : '' - button_css_class = is_dismissable ? 'mr-3' : ''
.pt-1.d-none.d-md-block{ class: container_class } .pt-1.d-none.d-md-block{ class: container_class }
......
...@@ -102,7 +102,7 @@ module Gitlab ...@@ -102,7 +102,7 @@ module Gitlab
def expiring_features_message def expiring_features_message
case plan_name case plan_name
when 'Gold' when 'Gold', 'Ultimate'
_('After that, you will not be able to use merge approvals or epics as well as many security features.') _('After that, you will not be able to use merge approvals or epics as well as many security features.')
when 'Silver' when 'Silver'
_('After that, you will not be able to use merge approvals or epics as well as many other features.') _('After that, you will not be able to use merge approvals or epics as well as many other features.')
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
FactoryBot.define do FactoryBot.define do
factory :gitlab_subscription do factory :gitlab_subscription do
namespace namespace
association :hosted_plan, factory: :gold_plan association :hosted_plan, factory: :ultimate_plan
seats { 10 } seats { 10 }
start_date { Date.current } start_date { Date.current }
end_date { Date.current.advance(years: 1) } end_date { Date.current.advance(years: 1) }
......
...@@ -11,7 +11,7 @@ RSpec.describe 'Billing plan pages', :feature do ...@@ -11,7 +11,7 @@ RSpec.describe 'Billing plan pages', :feature do
let(:free_plan) { create(:free_plan) } let(:free_plan) { create(:free_plan) }
let(:bronze_plan) { create(:bronze_plan) } let(:bronze_plan) { create(:bronze_plan) }
let(:silver_plan) { create(:silver_plan) } let(:silver_plan) { create(:silver_plan) }
let(:gold_plan) { create(:gold_plan) } let(:ultimate_plan) { create(:ultimate_plan) }
let(:plans_data) do let(:plans_data) do
Gitlab::Json.parse(File.read(Rails.root.join('ee/spec/fixtures/gitlab_com_plans.json'))).map do |data| Gitlab::Json.parse(File.read(Rails.root.join('ee/spec/fixtures/gitlab_com_plans.json'))).map do |data|
data.deep_symbolize_keys data.deep_symbolize_keys
...@@ -201,8 +201,8 @@ RSpec.describe 'Billing plan pages', :feature do ...@@ -201,8 +201,8 @@ RSpec.describe 'Billing plan pages', :feature do
it_behaves_like 'plan with subscription table' it_behaves_like 'plan with subscription table'
end end
context 'on gold plan' do context 'on ultimate plan' do
let(:plan) { gold_plan } let(:plan) { ultimate_plan }
let!(:subscription) do let!(:subscription) do
create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, seats: 15) create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, seats: 15)
...@@ -279,8 +279,8 @@ RSpec.describe 'Billing plan pages', :feature do ...@@ -279,8 +279,8 @@ RSpec.describe 'Billing plan pages', :feature do
it_behaves_like 'can contact sales' it_behaves_like 'can contact sales'
end end
context 'on gold plan' do context 'on ultimate plan' do
let(:plan) { gold_plan } let(:plan) { ultimate_plan }
let!(:subscription) do let!(:subscription) do
create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, seats: 15) create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, seats: 15)
...@@ -299,8 +299,8 @@ RSpec.describe 'Billing plan pages', :feature do ...@@ -299,8 +299,8 @@ RSpec.describe 'Billing plan pages', :feature do
context 'top-most group' do context 'top-most group' do
let(:page_path) { group_billings_path(namespace) } let(:page_path) { group_billings_path(namespace) }
context 'on gold' do context 'on ultimate' do
let(:plan) { gold_plan } let(:plan) { ultimate_plan }
let!(:subscription) do let!(:subscription) do
create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, seats: 15) create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, seats: 15)
...@@ -312,7 +312,7 @@ RSpec.describe 'Billing plan pages', :feature do ...@@ -312,7 +312,7 @@ RSpec.describe 'Billing plan pages', :feature do
it 'displays plan header' do it 'displays plan header' do
page.within('.billing-plan-header') do page.within('.billing-plan-header') do
expect(page).to have_content("#{namespace.name} is currently using the Gold Plan") expect(page).to have_content("#{namespace.name} is currently using the Ultimate Plan")
expect(page).to have_css('.billing-plan-logo .identicon') expect(page).to have_css('.billing-plan-logo .identicon')
end end
...@@ -378,8 +378,8 @@ RSpec.describe 'Billing plan pages', :feature do ...@@ -378,8 +378,8 @@ RSpec.describe 'Billing plan pages', :feature do
context 'top-most group' do context 'top-most group' do
let(:page_path) { group_billings_path(namespace) } let(:page_path) { group_billings_path(namespace) }
context 'on gold' do context 'on ultimate' do
let(:plan) { gold_plan } let(:plan) { ultimate_plan }
let!(:subscription) do let!(:subscription) do
create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, create(:gitlab_subscription, namespace: namespace, hosted_plan: plan,
...@@ -392,7 +392,7 @@ RSpec.describe 'Billing plan pages', :feature do ...@@ -392,7 +392,7 @@ RSpec.describe 'Billing plan pages', :feature do
it 'displays plan header' do it 'displays plan header' do
page.within('.billing-plan-header') do page.within('.billing-plan-header') do
expect(page).to have_content("#{namespace.name} is currently using the Gold Plan") expect(page).to have_content("#{namespace.name} is currently using the Ultimate Plan")
expect(page).to have_css('.billing-plan-logo .identicon') expect(page).to have_css('.billing-plan-logo .identicon')
end end
......
...@@ -30,34 +30,34 @@ RSpec.describe 'Dashboard operations', :js do ...@@ -30,34 +30,34 @@ RSpec.describe 'Dashboard operations', :js do
it 'masks projects without valid license' do it 'masks projects without valid license' do
user = create(:user) user = create(:user)
gold_group = create(:group) ultimate_group = create(:group)
bronze_group = create(:group) bronze_group = create(:group)
create(:gitlab_subscription, :gold, namespace: gold_group) create(:gitlab_subscription, :ultimate, namespace: ultimate_group)
create(:gitlab_subscription, :bronze, namespace: bronze_group) create(:gitlab_subscription, :bronze, namespace: bronze_group)
gold_project = create(:project, :repository, namespace: gold_group, name: 'Gold Project') ultimate_project = create(:project, :repository, namespace: ultimate_group, name: 'Ultimate Project')
bronze_project = create(:project, :repository, namespace: bronze_group, name: 'Bronze Project') bronze_project = create(:project, :repository, namespace: bronze_group, name: 'Bronze Project')
public_project = create(:project, :repository, :public, namespace: bronze_group, name: 'Public Bronze Project') public_project = create(:project, :repository, :public, namespace: bronze_group, name: 'Public Bronze Project')
gold_pipeline = create(:ci_pipeline, project: gold_project, sha: gold_project.commit.sha, status: :running) ultimate_pipeline = create(:ci_pipeline, project: ultimate_project, sha: ultimate_project.commit.sha, status: :running)
bronze_pipeline = create(:ci_pipeline, project: bronze_project, sha: bronze_project.commit.sha, status: :running) bronze_pipeline = create(:ci_pipeline, project: bronze_project, sha: bronze_project.commit.sha, status: :running)
public_pipeline = create(:ci_pipeline, project: public_project, sha: public_project.commit.sha, status: :running) public_pipeline = create(:ci_pipeline, project: public_project, sha: public_project.commit.sha, status: :running)
gold_project.add_developer(user) ultimate_project.add_developer(user)
bronze_group.add_developer(user) bronze_group.add_developer(user)
user.update!(ops_dashboard_projects: [gold_project, bronze_project, public_project]) user.update!(ops_dashboard_projects: [ultimate_project, bronze_project, public_project])
sign_in(user) sign_in(user)
visit operations_path visit operations_path
bronze_card = project_card(bronze_project) bronze_card = project_card(bronze_project)
gold_card = project_card(gold_project) ultimate_card = project_card(ultimate_project)
public_card = project_card(public_project) public_card = project_card(public_project)
assert_masked(bronze_card, bronze_project, bronze_pipeline, bronze_group) assert_masked(bronze_card, bronze_project, bronze_pipeline, bronze_group)
assert_available(gold_card, gold_project, gold_pipeline) assert_available(ultimate_card, ultimate_project, ultimate_pipeline)
assert_available(public_card, public_project, public_pipeline) assert_available(public_card, public_project, public_pipeline)
end end
......
...@@ -223,7 +223,7 @@ RSpec.describe 'Edit group settings' do ...@@ -223,7 +223,7 @@ RSpec.describe 'Edit group settings' do
end end
context 'namespace is on the proper plan' do context 'namespace is on the proper plan' do
let(:plan) { create(:gold_plan) } let(:plan) { create(:ultimate_plan) }
context 'when the group is a top parent group' do context 'when the group is a top parent group' do
let(:selected_group) { group } let(:selected_group) { group }
......
...@@ -59,7 +59,7 @@ RSpec.describe 'Groups > Push Rules', :js do ...@@ -59,7 +59,7 @@ RSpec.describe 'Groups > Push Rules', :js do
context 'when enabled' do context 'when enabled' do
it 'renders the setting checkbox' do it 'renders the setting checkbox' do
create(:gitlab_subscription, :gold, namespace: group) create(:gitlab_subscription, :ultimate, namespace: group)
visit edit_group_push_rules_path(group) visit edit_group_push_rules_path(group)
......
...@@ -96,7 +96,7 @@ RSpec.describe 'Epic in issue sidebar', :js do ...@@ -96,7 +96,7 @@ RSpec.describe 'Epic in issue sidebar', :js do
context 'group has license' do context 'group has license' do
before do before do
create(:gitlab_subscription, :gold, namespace: group) create(:gitlab_subscription, :ultimate, namespace: group)
end end
it_behaves_like 'epic in issue sidebar' it_behaves_like 'epic in issue sidebar'
......
...@@ -361,7 +361,7 @@ RSpec.describe 'New project', :js do ...@@ -361,7 +361,7 @@ RSpec.describe 'New project', :js do
before do before do
allow(Gitlab::CurrentSettings).to receive(:should_check_namespace_plan?) { true } allow(Gitlab::CurrentSettings).to receive(:should_check_namespace_plan?) { true }
create(:gitlab_subscription, :gold, namespace: group1) create(:gitlab_subscription, :ultimate, namespace: group1)
end end
it 'show Group tab in Templates section' do it 'show Group tab in Templates section' do
......
...@@ -33,7 +33,7 @@ RSpec.describe 'Projects > Push Rules', :js do ...@@ -33,7 +33,7 @@ RSpec.describe 'Projects > Push Rules', :js do
context 'licensed' do context 'licensed' do
let(:bronze_plan) { create(:bronze_plan) } let(:bronze_plan) { create(:bronze_plan) }
let(:gold_plan) { create(:gold_plan) } let(:ultimate_plan) { create(:ultimate_plan) }
before do before do
stub_licensed_features(rule_attr => true) stub_licensed_features(rule_attr => true)
...@@ -62,7 +62,7 @@ RSpec.describe 'Projects > Push Rules', :js do ...@@ -62,7 +62,7 @@ RSpec.describe 'Projects > Push Rules', :js do
context 'when enabled' do context 'when enabled' do
it 'renders the setting checkbox' do it 'renders the setting checkbox' do
create(:gitlab_subscription, :gold, namespace: project.namespace) create(:gitlab_subscription, :ultimate, namespace: project.namespace)
visit project_settings_repository_path(project) visit project_settings_repository_path(project)
......
...@@ -7,7 +7,7 @@ RSpec.describe 'Show trial banner', :js do ...@@ -7,7 +7,7 @@ RSpec.describe 'Show trial banner', :js do
let!(:user) { create(:user) } let!(:user) { create(:user) }
let!(:group) { create(:group) } let!(:group) { create(:group) }
let!(:gold_plan) { create(:gold_plan) } let!(:ultimate_plan) { create(:ultimate_plan) }
let(:plans_data) do let(:plans_data) do
Gitlab::Json.parse(File.read(Rails.root.join('ee/spec/fixtures/gitlab_com_plans.json'))).map do |data| Gitlab::Json.parse(File.read(Rails.root.join('ee/spec/fixtures/gitlab_com_plans.json'))).map do |data|
data.deep_symbolize_keys data.deep_symbolize_keys
...@@ -21,8 +21,8 @@ RSpec.describe 'Show trial banner', :js do ...@@ -21,8 +21,8 @@ RSpec.describe 'Show trial banner', :js do
.to_return(status: 200, body: plans_data.to_json) .to_return(status: 200, body: plans_data.to_json)
group.add_owner(user) group.add_owner(user)
create(:gitlab_subscription, namespace: user.namespace, hosted_plan: gold_plan, trial: true, trial_ends_on: Date.current + 1.month) create(:gitlab_subscription, namespace: user.namespace, hosted_plan: ultimate_plan, trial: true, trial_ends_on: Date.current + 1.month)
create(:gitlab_subscription, namespace: group, hosted_plan: gold_plan, trial: true, trial_ends_on: Date.current + 1.month) create(:gitlab_subscription, namespace: group, hosted_plan: ultimate_plan, trial: true, trial_ends_on: Date.current + 1.month)
gitlab_sign_in(user) gitlab_sign_in(user)
end end
......
...@@ -13,21 +13,21 @@ RSpec.describe ProjectsFinder do ...@@ -13,21 +13,21 @@ RSpec.describe ProjectsFinder do
let(:params) { { plans: plans } } let(:params) { { plans: plans } }
let(:project_ids_relation) { nil } let(:project_ids_relation) { nil }
let_it_be(:gold_project) { create_project(:gold_plan) } let_it_be(:ultimate_project) { create_project(:ultimate_plan) }
let_it_be(:gold_project2) { create_project(:gold_plan) } let_it_be(:ultimate_project2) { create_project(:ultimate_plan) }
let_it_be(:silver_project) { create_project(:silver_plan) } let_it_be(:silver_project) { create_project(:silver_plan) }
let_it_be(:no_plan_project) { create_project(nil) } let_it_be(:no_plan_project) { create_project(nil) }
context 'with gold plan' do context 'with ultimate plan' do
let(:plans) { ['gold'] } let(:plans) { ['ultimate'] }
it { is_expected.to contain_exactly(gold_project, gold_project2) } it { is_expected.to contain_exactly(ultimate_project, ultimate_project2) }
end end
context 'with multiple plans' do context 'with multiple plans' do
let(:plans) { %w[gold silver] } let(:plans) { %w[ultimate silver] }
it { is_expected.to contain_exactly(gold_project, gold_project2, silver_project) } it { is_expected.to contain_exactly(ultimate_project, ultimate_project2, silver_project) }
end end
context 'with other plans' do context 'with other plans' do
...@@ -39,13 +39,13 @@ RSpec.describe ProjectsFinder do ...@@ -39,13 +39,13 @@ RSpec.describe ProjectsFinder do
context 'without plans' do context 'without plans' do
let(:plans) { nil } let(:plans) { nil }
it { is_expected.to contain_exactly(gold_project, gold_project2, silver_project, no_plan_project) } it { is_expected.to contain_exactly(ultimate_project, ultimate_project2, silver_project, no_plan_project) }
end end
context 'with empty plans' do context 'with empty plans' do
let(:plans) { [] } let(:plans) { [] }
it { is_expected.to contain_exactly(gold_project, gold_project2, silver_project, no_plan_project) } it { is_expected.to contain_exactly(ultimate_project, ultimate_project2, silver_project, no_plan_project) }
end end
context 'filter by aimed for deletion' do context 'filter by aimed for deletion' do
......
...@@ -195,7 +195,7 @@ RSpec.describe EpicsFinder do ...@@ -195,7 +195,7 @@ RSpec.describe EpicsFinder do
.to receive(:should_check_namespace_plan?) .to receive(:should_check_namespace_plan?)
.and_return(true) .and_return(true)
create(:gitlab_subscription, :gold, namespace: group) create(:gitlab_subscription, :ultimate, namespace: group)
expect { epics.to_a }.not_to exceed_all_query_limit(6) expect { epics.to_a }.not_to exceed_all_query_limit(6)
end end
......
...@@ -39,7 +39,7 @@ RSpec.describe GroupProjectsFinder do ...@@ -39,7 +39,7 @@ RSpec.describe GroupProjectsFinder do
end end
context 'when security dashboard is enabled for a group' do context 'when security dashboard is enabled for a group' do
let(:group) { create(:group_with_plan, plan: :gold_plan) } # overriding group from 'GroupProjectsFinder context' let(:group) { create(:group_with_plan, plan: :ultimate_plan) } # overriding group from 'GroupProjectsFinder context'
before do before do
stub_licensed_features(security_dashboard: true) stub_licensed_features(security_dashboard: true)
......
...@@ -22,7 +22,7 @@ RSpec.describe GroupsWithTemplatesFinder do ...@@ -22,7 +22,7 @@ RSpec.describe GroupsWithTemplatesFinder do
create(:project, namespace: subgroup_1) create(:project, namespace: subgroup_1)
create(:project, namespace: subgroup_2) create(:project, namespace: subgroup_2)
create(:project, namespace: subgroup_3) create(:project, namespace: subgroup_3)
create(:gitlab_subscription, :gold, namespace: group_1) create(:gitlab_subscription, :ultimate, namespace: group_1)
create(:gitlab_subscription, :silver, namespace: group_2) create(:gitlab_subscription, :silver, namespace: group_2)
end end
...@@ -36,7 +36,7 @@ RSpec.describe GroupsWithTemplatesFinder do ...@@ -36,7 +36,7 @@ RSpec.describe GroupsWithTemplatesFinder do
allow(Gitlab::CurrentSettings).to receive(:should_check_namespace_plan?) { true } allow(Gitlab::CurrentSettings).to receive(:should_check_namespace_plan?) { true }
end end
it 'returns groups on gold/silver plan' do it 'returns groups on ultimate/silver plan' do
expect(described_class.new.execute).to contain_exactly(group_1, group_2) expect(described_class.new.execute).to contain_exactly(group_1, group_2)
end end
...@@ -46,7 +46,7 @@ RSpec.describe GroupsWithTemplatesFinder do ...@@ -46,7 +46,7 @@ RSpec.describe GroupsWithTemplatesFinder do
create(:project, namespace: subgroup_5) create(:project, namespace: subgroup_5)
end end
it 'returns groups on gold/silver plan' do it 'returns groups on ultimate/silver plan' do
expect(described_class.new.execute).to contain_exactly(group_1, group_2, subgroup_4) expect(described_class.new.execute).to contain_exactly(group_1, group_2, subgroup_4)
end end
end end
......
...@@ -129,9 +129,9 @@ ...@@ -129,9 +129,9 @@
} }
}, },
{ {
"id": "gold-external-id", "id": "ultimate-external-id",
"about_page_href": "https://about.gitlab.com/gitlab-com/", "about_page_href": "https://about.gitlab.com/gitlab-com/",
"code": "gold", "code": "ultimate",
"features": [ "features": [
{ {
"highlight": false, "highlight": false,
...@@ -159,12 +159,12 @@ ...@@ -159,12 +159,12 @@
} }
], ],
"free": false, "free": false,
"name": "Gold Plan", "name": "Ultimate Plan",
"price_per_month": 99.0, "price_per_month": 99.0,
"price_per_year": 1188.0, "price_per_year": 1188.0,
"purchase_link": { "purchase_link": {
"action": "upgrade", "action": "upgrade",
"href": "http://customers.gitlab.com/subscriptions/new?plan_id=2c92a0fc5a83f01d015aa6db83c45aac" "href": "http://customers.gitlab.com/subscriptions/new?plan_id=2c92a0ff76f0d5250176f2f8c86f305a"
} }
} }
] ]
...@@ -43,7 +43,7 @@ RSpec.describe Mutations::InstanceSecurityDashboard::AddProject do ...@@ -43,7 +43,7 @@ RSpec.describe Mutations::InstanceSecurityDashboard::AddProject do
it 'does not add project to the security dashboard', :aggregate_failures do it 'does not add project to the security dashboard', :aggregate_failures do
expect(subject[:project]).to be_nil expect(subject[:project]).to be_nil
expect(subject[:errors]).to include('Only projects created under a Gold license are available in Security Dashboards.') expect(subject[:errors]).to include('Only projects created under a Ultimate license are available in Security Dashboards.')
expect(user.security_dashboard_projects).to include(already_added_project) expect(user.security_dashboard_projects).to include(already_added_project)
end end
end end
......
...@@ -422,14 +422,14 @@ RSpec.describe BillingPlansHelper do ...@@ -422,14 +422,14 @@ RSpec.describe BillingPlansHelper do
describe '#subscription_plan_info' do describe '#subscription_plan_info' do
it 'returns the current plan' do it 'returns the current plan' do
other_plan = Hashie::Mash.new(code: 'bronze') other_plan = Hashie::Mash.new(code: 'bronze')
current_plan = Hashie::Mash.new(code: 'gold') current_plan = Hashie::Mash.new(code: 'ultimate')
expect(helper.subscription_plan_info([other_plan, current_plan], 'gold')).to eq(current_plan) expect(helper.subscription_plan_info([other_plan, current_plan], 'ultimate')).to eq(current_plan)
end end
it 'returns nil if no plan matches the code' do it 'returns nil if no plan matches the code' do
plan_a = Hashie::Mash.new(code: 'bronze') plan_a = Hashie::Mash.new(code: 'bronze')
plan_b = Hashie::Mash.new(code: 'gold') plan_b = Hashie::Mash.new(code: 'ultimate')
expect(helper.subscription_plan_info([plan_a, plan_b], 'default')).to be_nil expect(helper.subscription_plan_info([plan_a, plan_b], 'default')).to be_nil
end end
......
...@@ -132,12 +132,12 @@ RSpec.describe EE::UserCalloutsHelper do ...@@ -132,12 +132,12 @@ RSpec.describe EE::UserCalloutsHelper do
end end
end end
describe '#render_dashboard_gold_trial' do describe '#render_dashboard_ultimate_trial' do
let_it_be(:namespace) { create(:namespace) } let_it_be(:namespace) { create(:namespace) }
let_it_be(:gold_plan) { create(:gold_plan) } let_it_be(:ultimate_plan) { create(:ultimate_plan) }
let(:user) { namespace.owner } let(:user) { namespace.owner }
where(:any_namespace_without_trial?, :show_gold_trial?, :user_default_dashboard?, :has_no_trial_or_paid_plan?, :should_render?) do where(:any_namespace_without_trial?, :show_ultimate_trial?, :user_default_dashboard?, :has_no_trial_or_paid_plan?, :should_render?) do
true | true | true | true | true true | true | true | true | true
true | true | true | false | false true | true | true | false | false
true | true | false | true | false true | true | false | true | false
...@@ -158,23 +158,23 @@ RSpec.describe EE::UserCalloutsHelper do ...@@ -158,23 +158,23 @@ RSpec.describe EE::UserCalloutsHelper do
with_them do with_them do
before do before do
allow(helper).to receive(:show_gold_trial?) { show_gold_trial? } allow(helper).to receive(:show_ultimate_trial?) { show_ultimate_trial? }
allow(helper).to receive(:user_default_dashboard?) { user_default_dashboard? } allow(helper).to receive(:user_default_dashboard?) { user_default_dashboard? }
allow(user).to receive(:any_namespace_without_trial?) { any_namespace_without_trial? } allow(user).to receive(:any_namespace_without_trial?) { any_namespace_without_trial? }
unless has_no_trial_or_paid_plan? unless has_no_trial_or_paid_plan?
create(:gitlab_subscription, hosted_plan: gold_plan, namespace: namespace) create(:gitlab_subscription, hosted_plan: ultimate_plan, namespace: namespace)
end end
end end
it do it do
if should_render? if should_render?
expect(helper).to receive(:render).with('shared/gold_trial_callout_content') expect(helper).to receive(:render).with('shared/ultimate_trial_callout_content')
else else
expect(helper).not_to receive(:render) expect(helper).not_to receive(:render)
end end
helper.render_dashboard_gold_trial(user) helper.render_dashboard_ultimate_trial(user)
end end
end end
end end
......
...@@ -69,7 +69,7 @@ RSpec.describe TrialStatusWidgetHelper do ...@@ -69,7 +69,7 @@ RSpec.describe TrialStatusWidgetHelper do
subscription.trial_ends_on = Date.current subscription.trial_ends_on = Date.current
end end
it { is_expected.to eq('Gold Trial – 0 days left') } it { is_expected.to eq('Ultimate Trial – 0 days left') }
end end
context 'when there is 1 day remaining' do context 'when there is 1 day remaining' do
...@@ -77,7 +77,7 @@ RSpec.describe TrialStatusWidgetHelper do ...@@ -77,7 +77,7 @@ RSpec.describe TrialStatusWidgetHelper do
subscription.trial_ends_on = Date.current.advance(days: 1) subscription.trial_ends_on = Date.current.advance(days: 1)
end end
it { is_expected.to eq('Gold Trial – 1 day left') } it { is_expected.to eq('Ultimate Trial – 1 day left') }
end end
context 'when there are 2+ days remaining' do context 'when there are 2+ days remaining' do
...@@ -85,7 +85,7 @@ RSpec.describe TrialStatusWidgetHelper do ...@@ -85,7 +85,7 @@ RSpec.describe TrialStatusWidgetHelper do
subscription.trial_ends_on = Date.current.advance(days: 13) subscription.trial_ends_on = Date.current.advance(days: 13)
end end
it { is_expected.to eq('Gold Trial – 13 days left') } it { is_expected.to eq('Ultimate Trial – 13 days left') }
end end
end end
end end
...@@ -5,9 +5,9 @@ require 'spec_helper' ...@@ -5,9 +5,9 @@ require 'spec_helper'
RSpec.describe EE::Gitlab::Ci::Pipeline::Quota::Activity do RSpec.describe EE::Gitlab::Ci::Pipeline::Quota::Activity do
let_it_be(:namespace) { create(:namespace) } let_it_be(:namespace) { create(:namespace) }
let_it_be(:project, reload: true) { create(:project, namespace: namespace) } let_it_be(:project, reload: true) { create(:project, namespace: namespace) }
let_it_be(:gold_plan, reload: true) { create(:gold_plan) } let_it_be(:ultimate_plan, reload: true) { create(:ultimate_plan) }
let(:plan_limits) { create(:plan_limits, plan: gold_plan) } let(:plan_limits) { create(:plan_limits, plan: ultimate_plan) }
let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) } let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan) }
subject { described_class.new(namespace, project) } subject { described_class.new(namespace, project) }
......
...@@ -5,9 +5,9 @@ require 'spec_helper' ...@@ -5,9 +5,9 @@ require 'spec_helper'
RSpec.describe EE::Gitlab::Ci::Pipeline::Quota::JobActivity do RSpec.describe EE::Gitlab::Ci::Pipeline::Quota::JobActivity do
let_it_be(:namespace) { create(:namespace) } let_it_be(:namespace) { create(:namespace) }
let_it_be(:project, reload: true) { create(:project, namespace: namespace) } let_it_be(:project, reload: true) { create(:project, namespace: namespace) }
let_it_be(:gold_plan, reload: true) { create(:gold_plan) } let_it_be(:ultimate_plan, reload: true) { create(:ultimate_plan) }
let_it_be(:plan_limits, reload: true) { create(:plan_limits, plan: gold_plan) } let_it_be(:plan_limits, reload: true) { create(:plan_limits, plan: ultimate_plan) }
let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) } let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan) }
subject { described_class.new(namespace, project) } subject { described_class.new(namespace, project) }
......
...@@ -4,10 +4,10 @@ require 'spec_helper' ...@@ -4,10 +4,10 @@ require 'spec_helper'
RSpec.describe EE::Gitlab::Ci::Pipeline::Quota::Size do RSpec.describe EE::Gitlab::Ci::Pipeline::Quota::Size do
let_it_be(:namespace) { create(:namespace) } let_it_be(:namespace) { create(:namespace) }
let_it_be(:gold_plan, reload: true) { create(:gold_plan) } let_it_be(:ultimate_plan, reload: true) { create(:ultimate_plan) }
let_it_be(:project, reload: true) { create(:project, :repository, namespace: namespace) } let_it_be(:project, reload: true) { create(:project, :repository, namespace: namespace) }
let_it_be(:plan_limits) { create(:plan_limits, plan: gold_plan) } let_it_be(:plan_limits) { create(:plan_limits, plan: ultimate_plan) }
let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) } let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan) }
let(:pipeline) { build_stubbed(:ci_pipeline, project: project) } let(:pipeline) { build_stubbed(:ci_pipeline, project: project) }
......
...@@ -10,11 +10,11 @@ RSpec.describe Gitlab::HookData::GroupMemberBuilder do ...@@ -10,11 +10,11 @@ RSpec.describe Gitlab::HookData::GroupMemberBuilder do
context 'data' do context 'data' do
context 'group_plan attribute' do context 'group_plan attribute' do
let(:group) { create(:group_with_plan, plan: :gold_plan) } let(:group) { create(:group_with_plan, plan: :ultimate_plan) }
it 'returns correct group_plan' do it 'returns correct group_plan' do
expect(data).to include(:group_plan) expect(data).to include(:group_plan)
expect(data[:group_plan]).to eq('gold') expect(data[:group_plan]).to eq('ultimate')
end end
end end
end end
......
...@@ -21,9 +21,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::Activity do ...@@ -21,9 +21,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::Activity do
context 'when active pipelines limit is exceeded' do context 'when active pipelines limit is exceeded' do
before do before do
gold_plan = create(:gold_plan) ultimate_plan = create(:ultimate_plan)
create(:plan_limits, plan: gold_plan, ci_active_pipelines: 1) create(:plan_limits, plan: ultimate_plan, ci_active_pipelines: 1)
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
create(:ci_pipeline, project: project, status: 'pending') create(:ci_pipeline, project: project, status: 'pending')
create(:ci_pipeline, project: project, status: 'running') create(:ci_pipeline, project: project, status: 'running')
...@@ -65,9 +65,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::Activity do ...@@ -65,9 +65,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::Activity do
context 'when pipeline activity limit is not exceeded' do context 'when pipeline activity limit is not exceeded' do
before do before do
gold_plan = create(:gold_plan) ultimate_plan = create(:ultimate_plan)
create(:plan_limits, plan: gold_plan, ci_active_pipelines: 100) create(:plan_limits, plan: ultimate_plan, ci_active_pipelines: 100)
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
end end
it 'does not break the chain' do it 'does not break the chain' do
......
...@@ -21,9 +21,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::JobActivity do ...@@ -21,9 +21,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::JobActivity do
context 'when active jobs limit is exceeded' do context 'when active jobs limit is exceeded' do
before do before do
gold_plan = create(:gold_plan) ultimate_plan = create(:ultimate_plan)
create(:plan_limits, plan: gold_plan, ci_active_jobs: 2) create(:plan_limits, plan: ultimate_plan, ci_active_jobs: 2)
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
pipeline = create(:ci_pipeline, project: project, status: 'running', created_at: Time.now) pipeline = create(:ci_pipeline, project: project, status: 'running', created_at: Time.now)
create(:ci_build, pipeline: pipeline) create(:ci_build, pipeline: pipeline)
...@@ -67,9 +67,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::JobActivity do ...@@ -67,9 +67,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::JobActivity do
context 'when job activity limit is not exceeded' do context 'when job activity limit is not exceeded' do
before do before do
gold_plan = create(:gold_plan) ultimate_plan = create(:ultimate_plan)
create(:plan_limits, plan: gold_plan, ci_active_jobs: 100) create(:plan_limits, plan: ultimate_plan, ci_active_jobs: 100)
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
end end
it 'does not break the chain' do it 'does not break the chain' do
......
...@@ -22,9 +22,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::Size do ...@@ -22,9 +22,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::Size do
context 'when pipeline size limit is exceeded' do context 'when pipeline size limit is exceeded' do
before do before do
gold_plan = create(:gold_plan) ultimate_plan = create(:ultimate_plan)
create(:plan_limits, plan: gold_plan, ci_pipeline_size: 1) create(:plan_limits, plan: ultimate_plan, ci_pipeline_size: 1)
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
end end
context 'when saving incomplete pipelines' do context 'when saving incomplete pipelines' do
...@@ -102,9 +102,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::Size do ...@@ -102,9 +102,9 @@ RSpec.describe ::Gitlab::Ci::Pipeline::Chain::Limit::Size do
context 'when pipeline size limit is not exceeded' do context 'when pipeline size limit is not exceeded' do
before do before do
gold_plan = create(:gold_plan) ultimate_plan = create(:ultimate_plan)
create(:plan_limits, plan: gold_plan, ci_pipeline_size: 100) create(:plan_limits, plan: ultimate_plan, ci_pipeline_size: 100)
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
end end
it 'does not break the chain' do it 'does not break the chain' do
......
...@@ -182,12 +182,18 @@ RSpec.describe Gitlab::ExpiringSubscriptionMessage do ...@@ -182,12 +182,18 @@ RSpec.describe Gitlab::ExpiringSubscriptionMessage do
end end
context 'with namespace' do context 'with namespace' do
using RSpec::Parameterized::TableSyntax
let(:namespace) { double(:namespace, name: 'No Limit Records') } let(:namespace) { double(:namespace, name: 'No Limit Records') }
it 'has gold plan specific messaging' do where plan: %w(gold ultimate)
allow(subscribable).to receive(:plan).and_return('gold')
with_them do
it 'has plan specific messaging' do
allow(subscribable).to receive(:plan).and_return(plan)
expect(subject).to include('Your Gold subscription for No Limit Records will expire on 2020-03-09. After that, you will not be able to use merge approvals or epics as well as many security features.') expect(subject).to include("Your #{plan.capitalize} subscription for No Limit Records will expire on 2020-03-09. After that, you will not be able to use merge approvals or epics as well as many security features.")
end
end end
it 'has silver plan specific messaging' do it 'has silver plan specific messaging' do
......
...@@ -7,9 +7,9 @@ RSpec.describe EE::Namespace::RootStorageSize do ...@@ -7,9 +7,9 @@ RSpec.describe EE::Namespace::RootStorageSize do
let(:current_size) { 50.megabytes } let(:current_size) { 50.megabytes }
let(:model) { described_class.new(namespace) } let(:model) { described_class.new(namespace) }
let(:create_statistics) { create(:namespace_root_storage_statistics, namespace: namespace, storage_size: current_size)} let(:create_statistics) { create(:namespace_root_storage_statistics, namespace: namespace, storage_size: current_size)}
let_it_be(:gold_plan, reload: true) { create(:gold_plan) } let_it_be(:ultimate_plan, reload: true) { create(:ultimate_plan) }
let_it_be(:plan_limits, reload: true) { create(:plan_limits, plan: gold_plan, storage_size_limit: 100) } let_it_be(:plan_limits, reload: true) { create(:plan_limits, plan: ultimate_plan, storage_size_limit: 100) }
let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) } let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan) }
before do before do
create_statistics create_statistics
......
...@@ -12,7 +12,7 @@ RSpec.describe Namespace do ...@@ -12,7 +12,7 @@ RSpec.describe Namespace do
let(:free_plan) { create(:free_plan) } let(:free_plan) { create(:free_plan) }
let!(:bronze_plan) { create(:bronze_plan) } let!(:bronze_plan) { create(:bronze_plan) }
let!(:silver_plan) { create(:silver_plan) } let!(:silver_plan) { create(:silver_plan) }
let!(:gold_plan) { create(:gold_plan) } let!(:ultimate_plan) { create(:ultimate_plan) }
it { is_expected.to have_one(:namespace_statistics) } it { is_expected.to have_one(:namespace_statistics) }
it { is_expected.to have_one(:namespace_limit) } it { is_expected.to have_one(:namespace_limit) }
...@@ -166,10 +166,10 @@ RSpec.describe Namespace do ...@@ -166,10 +166,10 @@ RSpec.describe Namespace do
end end
context 'when there is a subscription' do context 'when there is a subscription' do
let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan_id: gold_plan.id) } let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan_id: ultimate_plan.id) }
it 'returns namespace with subscription set' do it 'returns namespace with subscription set' do
is_expected.to eq(gold_plan.id) is_expected.to eq(ultimate_plan.id)
end end
end end
end end
...@@ -264,7 +264,7 @@ RSpec.describe Namespace do ...@@ -264,7 +264,7 @@ RSpec.describe Namespace do
end end
end end
context 'in active trial gold plan' do context 'in active trial ultimate plan' do
using RSpec::Parameterized::TableSyntax using RSpec::Parameterized::TableSyntax
where(:plan_name) do where(:plan_name) do
...@@ -468,7 +468,7 @@ RSpec.describe Namespace do ...@@ -468,7 +468,7 @@ RSpec.describe Namespace do
end end
context 'when feature available on the plan' do context 'when feature available on the plan' do
let(:hosted_plan) { create(:gold_plan) } let(:hosted_plan) { create(:ultimate_plan) }
context 'when feature available for current group' do context 'when feature available for current group' do
it 'returns true' do it 'returns true' do
...@@ -597,7 +597,7 @@ RSpec.describe Namespace do ...@@ -597,7 +597,7 @@ RSpec.describe Namespace do
end end
context 'when subscription plan is defined in the system' do context 'when subscription plan is defined in the system' do
let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) } let!(:subscription) { create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan) }
context 'when limits are not set for the plan' do context 'when limits are not set for the plan' do
it_behaves_like 'uses an implied configuration' it_behaves_like 'uses an implied configuration'
...@@ -606,7 +606,7 @@ RSpec.describe Namespace do ...@@ -606,7 +606,7 @@ RSpec.describe Namespace do
context 'when limits are set for the plan' do context 'when limits are set for the plan' do
let!(:subscription_limits) do let!(:subscription_limits) do
create(:plan_limits, create(:plan_limits,
plan: gold_plan, plan: ultimate_plan,
ci_active_pipelines: 5, ci_active_pipelines: 5,
ci_pipeline_size: 6, ci_pipeline_size: 6,
ci_active_jobs: 7) ci_active_jobs: 7)
...@@ -704,14 +704,14 @@ RSpec.describe Namespace do ...@@ -704,14 +704,14 @@ RSpec.describe Namespace do
context 'when namespace has a subscription associated' do context 'when namespace has a subscription associated' do
before do before do
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan, start_date: start_date) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan, start_date: start_date)
end end
context 'when this subscription was purchased before EoA rollout (legacy)' do context 'when this subscription was purchased before EoA rollout (legacy)' do
let(:start_date) { GitlabSubscription::EOA_ROLLOUT_DATE.to_date - 3.days } let(:start_date) { GitlabSubscription::EOA_ROLLOUT_DATE.to_date - 3.days }
it 'returns the legacy plan from the subscription' do it 'returns the legacy plan from the subscription' do
expect(namespace.actual_plan).to eq(gold_plan) expect(namespace.actual_plan).to eq(ultimate_plan)
expect(namespace.gitlab_subscription).to be_present expect(namespace.gitlab_subscription).to be_present
end end
end end
...@@ -759,11 +759,11 @@ RSpec.describe Namespace do ...@@ -759,11 +759,11 @@ RSpec.describe Namespace do
context 'when namespace has a subscription associated' do context 'when namespace has a subscription associated' do
before do before do
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
end end
it 'returns the plan from the subscription' do it 'returns the plan from the subscription' do
expect(subgroup.actual_plan).to eq(gold_plan) expect(subgroup.actual_plan).to eq(ultimate_plan)
expect(subgroup.gitlab_subscription).not_to be_present expect(subgroup.gitlab_subscription).not_to be_present
end end
end end
...@@ -786,11 +786,11 @@ RSpec.describe Namespace do ...@@ -786,11 +786,11 @@ RSpec.describe Namespace do
context 'when namespace has a subscription associated' do context 'when namespace has a subscription associated' do
before do before do
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
end end
it 'returns an associated plan name' do it 'returns an associated plan name' do
expect(namespace.actual_plan_name).to eq 'gold' expect(namespace.actual_plan_name).to eq 'ultimate'
end end
end end
...@@ -805,11 +805,11 @@ RSpec.describe Namespace do ...@@ -805,11 +805,11 @@ RSpec.describe Namespace do
context 'when namespace has a subscription associated' do context 'when namespace has a subscription associated' do
before do before do
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
end end
it 'returns an associated plan name' do it 'returns an associated plan name' do
expect(subgroup.actual_plan_name).to eq 'gold' expect(subgroup.actual_plan_name).to eq 'ultimate'
end end
end end
...@@ -850,9 +850,9 @@ RSpec.describe Namespace do ...@@ -850,9 +850,9 @@ RSpec.describe Namespace do
group.add_guest(guest) group.add_guest(guest)
end end
context 'with a gold plan' do context 'with a ultimate plan' do
before do before do
create(:gitlab_subscription, namespace: group, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: group, hosted_plan: ultimate_plan)
end end
it 'does not include guest users and only active users' do it 'does not include guest users and only active users' do
...@@ -1068,9 +1068,9 @@ RSpec.describe Namespace do ...@@ -1068,9 +1068,9 @@ RSpec.describe Namespace do
group.add_guest(create(:user)) group.add_guest(create(:user))
end end
context 'with a gold plan' do context 'with a ultimate plan' do
before do before do
create(:gitlab_subscription, namespace: group, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: group, hosted_plan: ultimate_plan)
end end
it 'does not count guest users and counts only active users' do it 'does not count guest users and counts only active users' do
......
...@@ -509,11 +509,11 @@ RSpec.describe User do ...@@ -509,11 +509,11 @@ RSpec.describe User do
context 'when namespace plan is checked' do context 'when namespace plan is checked' do
before do before do
create(:gitlab_subscription, namespace: group_1, hosted_plan: create(:bronze_plan)) create(:gitlab_subscription, namespace: group_1, hosted_plan: create(:bronze_plan))
create(:gitlab_subscription, namespace: group_2, hosted_plan: create(:gold_plan)) create(:gitlab_subscription, namespace: group_2, hosted_plan: create(:ultimate_plan))
allow(Gitlab::CurrentSettings).to receive(:should_check_namespace_plan?) { true } allow(Gitlab::CurrentSettings).to receive(:should_check_namespace_plan?) { true }
end end
it 'returns groups on gold or silver plans' do it 'returns groups on ultimate or silver plans' do
groups = user.available_subgroups_with_custom_project_templates groups = user.available_subgroups_with_custom_project_templates
expect(groups.size).to eq(1) expect(groups.size).to eq(1)
...@@ -876,9 +876,9 @@ RSpec.describe User do ...@@ -876,9 +876,9 @@ RSpec.describe User do
it { is_expected.to be_falsey } it { is_expected.to be_falsey }
end end
context 'when namespace is on a gold plan' do context 'when namespace is on a ultimate plan' do
before do before do
create(:gitlab_subscription, namespace: namespace.root_ancestor, hosted_plan: create(:gold_plan)) create(:gitlab_subscription, namespace: namespace.root_ancestor, hosted_plan: create(:ultimate_plan))
end end
context 'user is a guest' do context 'user is a guest' do
...@@ -920,7 +920,7 @@ RSpec.describe User do ...@@ -920,7 +920,7 @@ RSpec.describe User do
end end
end end
context 'when namespace is on a plan that is not free or gold' do context 'when namespace is on a plan that is not free or ultimate' do
before do before do
create(:gitlab_subscription, namespace: namespace, hosted_plan: create(:silver_plan)) create(:gitlab_subscription, namespace: namespace, hosted_plan: create(:silver_plan))
end end
...@@ -1007,7 +1007,7 @@ RSpec.describe User do ...@@ -1007,7 +1007,7 @@ RSpec.describe User do
let_it_be(:free_group_z) { create(:group, name: 'AZ', gitlab_subscription: create(:gitlab_subscription, :free)) } let_it_be(:free_group_z) { create(:group, name: 'AZ', gitlab_subscription: create(:gitlab_subscription, :free)) }
let_it_be(:free_group_a) { create(:group, name: 'AA', gitlab_subscription: create(:gitlab_subscription, :free)) } let_it_be(:free_group_a) { create(:group, name: 'AA', gitlab_subscription: create(:gitlab_subscription, :free)) }
let_it_be(:sub_group) { create(:group, name: 'SubGroup', parent: free_group_a) } let_it_be(:sub_group) { create(:group, name: 'SubGroup', parent: free_group_a) }
let_it_be(:trial_group) { create(:group, name: 'AB', gitlab_subscription: create(:gitlab_subscription, :active_trial, :gold)) } let_it_be(:trial_group) { create(:group, name: 'AB', gitlab_subscription: create(:gitlab_subscription, :active_trial, :ultimate)) }
subject { user.manageable_groups_eligible_for_subscription } subject { user.manageable_groups_eligible_for_subscription }
...@@ -1187,7 +1187,7 @@ RSpec.describe User do ...@@ -1187,7 +1187,7 @@ RSpec.describe User do
allow(Gitlab::CurrentSettings) allow(Gitlab::CurrentSettings)
.to receive(:should_check_namespace_plan?) .to receive(:should_check_namespace_plan?)
.and_return(true) .and_return(true)
create(:gitlab_subscription, :gold, namespace: minimal_access_group) create(:gitlab_subscription, :ultimate, namespace: minimal_access_group)
create(:group_member, :minimal_access, user: user, source: create(:group)) create(:group_member, :minimal_access, user: user, source: create(:group))
end end
...@@ -1221,7 +1221,7 @@ RSpec.describe User do ...@@ -1221,7 +1221,7 @@ RSpec.describe User do
context 'paid namespaces' do context 'paid namespaces' do
let_it_be(:user) { create(:user) } let_it_be(:user) { create(:user) }
let_it_be(:gold_group) { create(:group_with_plan, plan: :gold_plan) } let_it_be(:ultimate_group) { create(:group_with_plan, plan: :ultimate_plan) }
let_it_be(:bronze_group) { create(:group_with_plan, plan: :bronze_plan) } let_it_be(:bronze_group) { create(:group_with_plan, plan: :bronze_plan) }
let_it_be(:free_group) { create(:group_with_plan, plan: :free_plan) } let_it_be(:free_group) { create(:group_with_plan, plan: :free_plan) }
let_it_be(:group_without_plan) { create(:group) } let_it_be(:group_without_plan) { create(:group) }
...@@ -1229,7 +1229,7 @@ RSpec.describe User do ...@@ -1229,7 +1229,7 @@ RSpec.describe User do
describe '#has_paid_namespace?' do describe '#has_paid_namespace?' do
context 'when the user has Reporter or higher on at least one paid group' do context 'when the user has Reporter or higher on at least one paid group' do
it 'returns true' do it 'returns true' do
gold_group.add_reporter(user) ultimate_group.add_reporter(user)
bronze_group.add_guest(user) bronze_group.add_guest(user)
expect(user.has_paid_namespace?).to eq(true) expect(user.has_paid_namespace?).to eq(true)
...@@ -1238,7 +1238,7 @@ RSpec.describe User do ...@@ -1238,7 +1238,7 @@ RSpec.describe User do
context 'when the user is only a Guest on paid groups' do context 'when the user is only a Guest on paid groups' do
it 'returns false' do it 'returns false' do
gold_group.add_guest(user) ultimate_group.add_guest(user)
bronze_group.add_guest(user) bronze_group.add_guest(user)
free_group.add_owner(user) free_group.add_owner(user)
...@@ -1258,7 +1258,7 @@ RSpec.describe User do ...@@ -1258,7 +1258,7 @@ RSpec.describe User do
describe '#owns_paid_namespace?' do describe '#owns_paid_namespace?' do
context 'when the user is an owner of at least one paid group' do context 'when the user is an owner of at least one paid group' do
it 'returns true' do it 'returns true' do
gold_group.add_owner(user) ultimate_group.add_owner(user)
bronze_group.add_owner(user) bronze_group.add_owner(user)
expect(user.owns_paid_namespace?).to eq(true) expect(user.owns_paid_namespace?).to eq(true)
...@@ -1267,7 +1267,7 @@ RSpec.describe User do ...@@ -1267,7 +1267,7 @@ RSpec.describe User do
context 'when the user is only a Maintainer on paid groups' do context 'when the user is only a Maintainer on paid groups' do
it 'returns false' do it 'returns false' do
gold_group.add_maintainer(user) ultimate_group.add_maintainer(user)
bronze_group.add_maintainer(user) bronze_group.add_maintainer(user)
free_group.add_owner(user) free_group.add_owner(user)
...@@ -1503,7 +1503,7 @@ RSpec.describe User do ...@@ -1503,7 +1503,7 @@ RSpec.describe User do
where(:hosted_plan, :result) do where(:hosted_plan, :result) do
:bronze_plan | true :bronze_plan | true
:silver_plan | true :silver_plan | true
:gold_plan | false :ultimate_plan | false
:free_plan | false :free_plan | false
:default_plan | false :default_plan | false
end end
...@@ -1527,10 +1527,10 @@ RSpec.describe User do ...@@ -1527,10 +1527,10 @@ RSpec.describe User do
expect(subject).to be false expect(subject).to be false
end end
it 'returns false when the user has multiple groups and any group has gold' do it 'returns false when the user has multiple groups and any group has ultimate' do
create(:group_with_plan, plan: :bronze_plan).add_owner(user) create(:group_with_plan, plan: :bronze_plan).add_owner(user)
create(:group_with_plan, plan: :silver_plan).add_owner(user) create(:group_with_plan, plan: :silver_plan).add_owner(user)
create(:group_with_plan, plan: :gold_plan).add_owner(user) create(:group_with_plan, plan: :ultimate_plan).add_owner(user)
user.namespace.plans.reload user.namespace.plans.reload
......
...@@ -65,12 +65,12 @@ RSpec.describe ElasticsearchIndexedNamespace do ...@@ -65,12 +65,12 @@ RSpec.describe ElasticsearchIndexedNamespace do
ids = namespaces.map(&:id) ids = namespaces.map(&:id)
described_class.index_first_n_namespaces_of_plan('gold', 1) described_class.index_first_n_namespaces_of_plan('ultimate', 1)
expect(get_indexed_namespaces).to eq([ids[0]]) expect(get_indexed_namespaces).to eq([ids[0]])
expect_queue_to_contain(ids[0], "index") expect_queue_to_contain(ids[0], "index")
described_class.index_first_n_namespaces_of_plan('gold', 2) described_class.index_first_n_namespaces_of_plan('ultimate', 2)
expect(get_indexed_namespaces).to eq([ids[0], ids[2]]) expect(get_indexed_namespaces).to eq([ids[0], ids[2]])
expect_queue_to_contain(ids[2], "index") expect_queue_to_contain(ids[2], "index")
...@@ -84,7 +84,7 @@ RSpec.describe ElasticsearchIndexedNamespace do ...@@ -84,7 +84,7 @@ RSpec.describe ElasticsearchIndexedNamespace do
describe '.unindex_last_n_namespaces_of_plan' do describe '.unindex_last_n_namespaces_of_plan' do
before do before do
described_class.index_first_n_namespaces_of_plan('gold', 2) described_class.index_first_n_namespaces_of_plan('ultimate', 2)
described_class.index_first_n_namespaces_of_plan('silver', 1) described_class.index_first_n_namespaces_of_plan('silver', 1)
end end
...@@ -95,7 +95,7 @@ RSpec.describe ElasticsearchIndexedNamespace do ...@@ -95,7 +95,7 @@ RSpec.describe ElasticsearchIndexedNamespace do
expect(get_indexed_namespaces).to contain_exactly(ids[0], ids[2], ids[1]) expect(get_indexed_namespaces).to contain_exactly(ids[0], ids[2], ids[1])
described_class.unindex_last_n_namespaces_of_plan('gold', 1) described_class.unindex_last_n_namespaces_of_plan('ultimate', 1)
expect(get_indexed_namespaces).to contain_exactly(ids[0], ids[1]) expect(get_indexed_namespaces).to contain_exactly(ids[0], ids[1])
expect_queue_to_contain(ids[2], "delete") expect_queue_to_contain(ids[2], "delete")
...@@ -105,7 +105,7 @@ RSpec.describe ElasticsearchIndexedNamespace do ...@@ -105,7 +105,7 @@ RSpec.describe ElasticsearchIndexedNamespace do
expect(get_indexed_namespaces).to contain_exactly(ids[0]) expect(get_indexed_namespaces).to contain_exactly(ids[0])
expect_queue_to_contain(ids[1], "delete") expect_queue_to_contain(ids[1], "delete")
described_class.unindex_last_n_namespaces_of_plan('gold', 1) described_class.unindex_last_n_namespaces_of_plan('ultimate', 1)
expect(get_indexed_namespaces).to be_empty expect(get_indexed_namespaces).to be_empty
expect_queue_to_contain(ids[0], "delete") expect_queue_to_contain(ids[0], "delete")
......
...@@ -5,7 +5,7 @@ require 'spec_helper' ...@@ -5,7 +5,7 @@ require 'spec_helper'
RSpec.describe GitlabSubscription do RSpec.describe GitlabSubscription do
using RSpec::Parameterized::TableSyntax using RSpec::Parameterized::TableSyntax
%i[free_plan bronze_plan silver_plan gold_plan].each do |plan| %i[free_plan bronze_plan silver_plan ultimate_plan].each do |plan|
let_it_be(plan) { create(plan) } let_it_be(plan) { create(plan) }
end end
...@@ -34,13 +34,13 @@ RSpec.describe GitlabSubscription do ...@@ -34,13 +34,13 @@ RSpec.describe GitlabSubscription do
describe 'scopes' do describe 'scopes' do
describe '.with_hosted_plan' do describe '.with_hosted_plan' do
let!(:gold_subscription) { create(:gitlab_subscription, hosted_plan: gold_plan) } let!(:ultimate_subscription) { create(:gitlab_subscription, hosted_plan: ultimate_plan) }
let!(:silver_subscription) { create(:gitlab_subscription, hosted_plan: silver_plan) } let!(:silver_subscription) { create(:gitlab_subscription, hosted_plan: silver_plan) }
let!(:trial_subscription) { create(:gitlab_subscription, hosted_plan: gold_plan, trial: true) } let!(:trial_subscription) { create(:gitlab_subscription, hosted_plan: ultimate_plan, trial: true) }
it 'scopes to the plan' do it 'scopes to the plan' do
expect(described_class.with_hosted_plan('gold')).to contain_exactly(gold_subscription) expect(described_class.with_hosted_plan('ultimate')).to contain_exactly(ultimate_subscription)
expect(described_class.with_hosted_plan('silver')).to contain_exactly(silver_subscription) expect(described_class.with_hosted_plan('silver')).to contain_exactly(silver_subscription)
expect(described_class.with_hosted_plan('bronze')).to be_empty expect(described_class.with_hosted_plan('bronze')).to be_empty
end end
...@@ -93,9 +93,9 @@ RSpec.describe GitlabSubscription do ...@@ -93,9 +93,9 @@ RSpec.describe GitlabSubscription do
group.add_guest(user_1) group.add_guest(user_1)
end end
context 'with a gold plan' do context 'with a ultimate plan' do
it 'excludes these members' do it 'excludes these members' do
gitlab_subscription.update!(plan_code: 'gold') gitlab_subscription.update!(plan_code: 'ultimate')
expect(gitlab_subscription.calculate_seats_in_use).to eq(0) expect(gitlab_subscription.calculate_seats_in_use).to eq(0)
end end
...@@ -121,7 +121,7 @@ RSpec.describe GitlabSubscription do ...@@ -121,7 +121,7 @@ RSpec.describe GitlabSubscription do
end end
it 'always returns 1 seat' do it 'always returns 1 seat' do
[bronze_plan, silver_plan, gold_plan].each do |plan| [bronze_plan, silver_plan, ultimate_plan].each do |plan|
gitlab_subscription.update!(hosted_plan: plan) gitlab_subscription.update!(hosted_plan: plan)
expect(gitlab_subscription.calculate_seats_in_use).to eq(1) expect(gitlab_subscription.calculate_seats_in_use).to eq(1)
...@@ -222,7 +222,7 @@ RSpec.describe GitlabSubscription do ...@@ -222,7 +222,7 @@ RSpec.describe GitlabSubscription do
subject { gitlab_subscription.seats_in_use } subject { gitlab_subscription.seats_in_use }
context 'with a paid hosted plan' do context 'with a paid hosted plan' do
let(:hosted_plan) { gold_plan } let(:hosted_plan) { ultimate_plan }
it 'returns the previously calculated seats in use' do it 'returns the previously calculated seats in use' do
expect(subject).to eq(5) expect(subject).to eq(5)
...@@ -238,7 +238,7 @@ RSpec.describe GitlabSubscription do ...@@ -238,7 +238,7 @@ RSpec.describe GitlabSubscription do
end end
context 'with a trial plan' do context 'with a trial plan' do
let(:hosted_plan) { gold_plan } let(:hosted_plan) { ultimate_plan }
let(:trial) { true } let(:trial) { true }
it 'returns the current seats in use' do it 'returns the current seats in use' do
...@@ -324,10 +324,10 @@ RSpec.describe GitlabSubscription do ...@@ -324,10 +324,10 @@ RSpec.describe GitlabSubscription do
let(:subscription) { build(:gitlab_subscription) } let(:subscription) { build(:gitlab_subscription) }
where(:plan_name, :paid_hosted_plan, :expired, :result) do where(:plan_name, :paid_hosted_plan, :expired, :result) do
'bronze' | true | false | true 'bronze' | true | false | true
'bronze' | true | true | false 'bronze' | true | true | false
'silver' | true | false | true 'silver' | true | false | true
'gold' | true | false | false 'ultimate' | true | false | false
end end
with_them do with_them do
......
...@@ -254,7 +254,7 @@ RSpec.describe GroupMember do ...@@ -254,7 +254,7 @@ RSpec.describe GroupMember do
end end
context 'group member webhooks', :sidekiq_inline do context 'group member webhooks', :sidekiq_inline do
let_it_be(:group) { create(:group_with_plan, plan: :gold_plan) } let_it_be(:group) { create(:group_with_plan, plan: :ultimate_plan) }
let_it_be(:group_hook) { create(:group_hook, group: group, member_events: true) } let_it_be(:group_hook) { create(:group_hook, group: group, member_events: true) }
let_it_be(:user) { create(:user) } let_it_be(:user) { create(:user) }
...@@ -361,7 +361,7 @@ RSpec.describe GroupMember do ...@@ -361,7 +361,7 @@ RSpec.describe GroupMember do
end end
context 'group member welcome email', :sidekiq_inline do context 'group member welcome email', :sidekiq_inline do
let_it_be(:group) { create(:group_with_plan, plan: :gold_plan) } let_it_be(:group) { create(:group_with_plan, plan: :ultimate_plan) }
let(:user) { create(:user) } let(:user) { create(:user) }
context 'when user is provisioned by group' do context 'when user is provisioned by group' do
...@@ -406,7 +406,7 @@ RSpec.describe GroupMember do ...@@ -406,7 +406,7 @@ RSpec.describe GroupMember do
user_id: group_member.user.id, user_id: group_member.user.id,
group_access: group_member.human_access, group_access: group_member.human_access,
expires_at: group_member.expires_at&.xmlschema, expires_at: group_member.expires_at&.xmlschema,
group_plan: 'gold', group_plan: 'ultimate',
event_name: event event_name: event
}.to_json }.to_json
} }
......
...@@ -649,7 +649,7 @@ RSpec.describe Group do ...@@ -649,7 +649,7 @@ RSpec.describe Group do
end end
it 'returns true for groups in proper plan' do it 'returns true for groups in proper plan' do
create(:gitlab_subscription, namespace: group, hosted_plan: create(:gold_plan)) create(:gitlab_subscription, namespace: group, hosted_plan: create(:ultimate_plan))
is_expected.to be true is_expected.to be true
end end
......
...@@ -861,7 +861,7 @@ RSpec.describe Project do ...@@ -861,7 +861,7 @@ RSpec.describe Project do
context 'allowed by Plan License AND Global License' do context 'allowed by Plan License AND Global License' do
let(:allowed_on_global_license) { true } let(:allowed_on_global_license) { true }
let(:plan_license) { build(:gold_plan) } let(:plan_license) { build(:ultimate_plan) }
before do before do
allow(namespace).to receive(:plans) { [plan_license] } allow(namespace).to receive(:plans) { [plan_license] }
...@@ -905,7 +905,7 @@ RSpec.describe Project do ...@@ -905,7 +905,7 @@ RSpec.describe Project do
context 'not allowed by Global License' do context 'not allowed by Global License' do
let(:allowed_on_global_license) { false } let(:allowed_on_global_license) { false }
let(:plan_license) { build(:gold_plan) } let(:plan_license) { build(:ultimate_plan) }
it 'returns false' do it 'returns false' do
is_expected.to eq(false) is_expected.to eq(false)
...@@ -1495,7 +1495,7 @@ RSpec.describe Project do ...@@ -1495,7 +1495,7 @@ RSpec.describe Project do
before do before do
allow(License).to receive(:current).and_return(global_license) allow(License).to receive(:current).and_return(global_license)
allow(global_license).to receive(:features).and_return([ allow(global_license).to receive(:features).and_return([
:subepics, # Gold only :subepics, # Ultimate only
:epics, # Silver and up :epics, # Silver and up
:push_rules, # Silver and up :push_rules, # Silver and up
:audit_events, # Bronze and up :audit_events, # Bronze and up
...@@ -1526,10 +1526,10 @@ RSpec.describe Project do ...@@ -1526,10 +1526,10 @@ RSpec.describe Project do
end end
end end
context 'when gold' do context 'when ultimate' do
let(:plan_license) { :gold } let(:plan_license) { :ultimate }
it 'filters for gold features' do it 'filters for ultimate features' do
is_expected.to contain_exactly(:epics, :push_rules, :audit_events, :geo, :subepics) is_expected.to contain_exactly(:epics, :push_rules, :audit_events, :geo, :subepics)
end end
end end
......
...@@ -304,8 +304,8 @@ RSpec.describe PushRule do ...@@ -304,8 +304,8 @@ RSpec.describe PushRule do
it_behaves_like 'an available push_rule' it_behaves_like 'an available push_rule'
end end
context 'with a Gold plan' do context 'with a Ultimate plan' do
let(:plan) { :gold } let(:plan) { :ultimate }
it_behaves_like 'an available push_rule' it_behaves_like 'an available push_rule'
end end
......
...@@ -9,7 +9,7 @@ RSpec.describe SubscriptionPresenter do ...@@ -9,7 +9,7 @@ RSpec.describe SubscriptionPresenter do
describe '#plan' do describe '#plan' do
subject { presenter.plan } subject { presenter.plan }
it { is_expected.to eq('gold') } it { is_expected.to eq('ultimate') }
end end
describe '#notify_admins?' do describe '#notify_admins?' do
......
...@@ -11,9 +11,9 @@ RSpec.describe API::ElasticsearchIndexedNamespaces do ...@@ -11,9 +11,9 @@ RSpec.describe API::ElasticsearchIndexedNamespaces do
using RSpec::Parameterized::TableSyntax using RSpec::Parameterized::TableSyntax
where(:percentage, :plan) do where(:percentage, :plan) do
-1 | 'gold' -1 | 'ultimate'
101 | 'gold' 101 | 'ultimate'
nil | 'gold' nil | 'ultimate'
1 | nil 1 | nil
1 | 'foobar' 1 | 'foobar'
end end
...@@ -27,7 +27,7 @@ RSpec.describe API::ElasticsearchIndexedNamespaces do ...@@ -27,7 +27,7 @@ RSpec.describe API::ElasticsearchIndexedNamespaces do
end end
it 'prohibits non-admin' do it 'prohibits non-admin' do
put api(path, non_admin), params: { plan: 'gold', percentage: 50 } put api(path, non_admin), params: { plan: 'ultimate', percentage: 50 }
expect(response).to have_gitlab_http_status(:forbidden) expect(response).to have_gitlab_http_status(:forbidden)
end end
end end
...@@ -38,9 +38,9 @@ RSpec.describe API::ElasticsearchIndexedNamespaces do ...@@ -38,9 +38,9 @@ RSpec.describe API::ElasticsearchIndexedNamespaces do
include_context 'rollout related' include_context 'rollout related'
it 'invokes ElasticNamespaceRolloutWorker rollout' do it 'invokes ElasticNamespaceRolloutWorker rollout' do
expect(ElasticNamespaceRolloutWorker).to receive(:perform_async).with('gold', 50, ElasticNamespaceRolloutWorker::ROLLOUT) expect(ElasticNamespaceRolloutWorker).to receive(:perform_async).with('ultimate', 50, ElasticNamespaceRolloutWorker::ROLLOUT)
put api(path, admin), params: { plan: 'gold', percentage: 50 } put api(path, admin), params: { plan: 'ultimate', percentage: 50 }
expect(response).to have_gitlab_http_status(:ok) expect(response).to have_gitlab_http_status(:ok)
end end
...@@ -52,9 +52,9 @@ RSpec.describe API::ElasticsearchIndexedNamespaces do ...@@ -52,9 +52,9 @@ RSpec.describe API::ElasticsearchIndexedNamespaces do
include_context 'rollout related' include_context 'rollout related'
it 'invokes ElasticNamespaceRolloutWorker rollback' do it 'invokes ElasticNamespaceRolloutWorker rollback' do
expect(ElasticNamespaceRolloutWorker).to receive(:perform_async).with('gold', 50, ElasticNamespaceRolloutWorker::ROLLBACK) expect(ElasticNamespaceRolloutWorker).to receive(:perform_async).with('ultimate', 50, ElasticNamespaceRolloutWorker::ROLLBACK)
put api(path, admin), params: { plan: 'gold', percentage: 50 } put api(path, admin), params: { plan: 'ultimate', percentage: 50 }
expect(response).to have_gitlab_http_status(:ok) expect(response).to have_gitlab_http_status(:ok)
end end
......
...@@ -519,7 +519,7 @@ RSpec.describe API::Groups do ...@@ -519,7 +519,7 @@ RSpec.describe API::Groups do
subject { get api("/groups/#{group.id}/projects", user), params: { with_security_reports: true } } subject { get api("/groups/#{group.id}/projects", user), params: { with_security_reports: true } }
context 'when security dashboard is enabled for a group' do context 'when security dashboard is enabled for a group' do
let(:group) { create(:group_with_plan, plan: :gold_plan) } # overriding group from parent context let(:group) { create(:group_with_plan, plan: :ultimate_plan) } # overriding group from parent context
before do before do
stub_licensed_features(security_dashboard: true) stub_licensed_features(security_dashboard: true)
......
...@@ -8,7 +8,7 @@ RSpec.describe API::Namespaces do ...@@ -8,7 +8,7 @@ RSpec.describe API::Namespaces do
let_it_be(:group1, reload: true) { create(:group, name: 'test.test-group.2') } let_it_be(:group1, reload: true) { create(:group, name: 'test.test-group.2') }
let_it_be(:group2) { create(:group, :nested) } let_it_be(:group2) { create(:group, :nested) }
let_it_be(:gold_plan) { create(:gold_plan) } let_it_be(:ultimate_plan) { create(:ultimate_plan) }
describe "GET /namespaces" do describe "GET /namespaces" do
context "when authenticated as admin" do context "when authenticated as admin" do
...@@ -272,7 +272,7 @@ RSpec.describe API::Namespaces do ...@@ -272,7 +272,7 @@ RSpec.describe API::Namespaces do
{ {
start_date: '2019-06-01', start_date: '2019-06-01',
end_date: '2020-06-01', end_date: '2020-06-01',
plan_code: 'gold', plan_code: 'ultimate',
seats: 20, seats: 20,
max_seats_used: 10, max_seats_used: 10,
auto_renew: true, auto_renew: true,
......
...@@ -176,13 +176,13 @@ RSpec.describe API::Users do ...@@ -176,13 +176,13 @@ RSpec.describe API::Users do
context 'when authenticated' do context 'when authenticated' do
context 'as an admin' do context 'as an admin' do
context 'and user has a plan' do context 'and user has a plan' do
let!(:subscription) { create(:gitlab_subscription, :gold, namespace: user.namespace) } let!(:subscription) { create(:gitlab_subscription, :ultimate, namespace: user.namespace) }
context 'and user is not a trial user' do context 'and user is not a trial user' do
it 'contains plan and trial' do it 'contains plan and trial' do
get api("/users/#{user.id}", admin) get api("/users/#{user.id}", admin)
expect(json_response).to include('plan' => 'gold', 'trial' => false) expect(json_response).to include('plan' => 'ultimate', 'trial' => false)
end end
end end
...@@ -194,7 +194,7 @@ RSpec.describe API::Users do ...@@ -194,7 +194,7 @@ RSpec.describe API::Users do
it 'contains plan and trial' do it 'contains plan and trial' do
get api("/users/#{user.id}", admin) get api("/users/#{user.id}", admin)
expect(json_response).to include('plan' => 'gold', 'trial' => true) expect(json_response).to include('plan' => 'ultimate', 'trial' => true)
end end
end end
end end
......
...@@ -4,8 +4,8 @@ require 'spec_helper' ...@@ -4,8 +4,8 @@ require 'spec_helper'
RSpec.describe Ci::CreatePipelineService, '#execute' do RSpec.describe Ci::CreatePipelineService, '#execute' do
let_it_be(:namespace) { create(:namespace) } let_it_be(:namespace) { create(:namespace) }
let_it_be(:gold_plan) { create(:gold_plan) } let_it_be(:ultimate_plan) { create(:ultimate_plan) }
let_it_be(:plan_limits) { create(:plan_limits, plan: gold_plan) } let_it_be(:plan_limits) { create(:plan_limits, plan: ultimate_plan) }
let_it_be(:project, reload: true) { create(:project, :repository, namespace: namespace) } let_it_be(:project, reload: true) { create(:project, :repository, namespace: namespace) }
let_it_be(:user) { create(:user) } let_it_be(:user) { create(:user) }
let(:ref_name) { 'master' } let(:ref_name) { 'master' }
...@@ -20,7 +20,7 @@ RSpec.describe Ci::CreatePipelineService, '#execute' do ...@@ -20,7 +20,7 @@ RSpec.describe Ci::CreatePipelineService, '#execute' do
end end
before do before do
create(:gitlab_subscription, namespace: namespace, hosted_plan: gold_plan) create(:gitlab_subscription, namespace: namespace, hosted_plan: ultimate_plan)
project.add_developer(user) project.add_developer(user)
stub_ci_pipeline_to_return_yaml_file stub_ci_pipeline_to_return_yaml_file
......
...@@ -64,7 +64,7 @@ RSpec.describe Dashboard::Projects::ListService do ...@@ -64,7 +64,7 @@ RSpec.describe Dashboard::Projects::ListService do
before do before do
stub_application_setting(check_namespace_plan: true) stub_application_setting(check_namespace_plan: true)
create(:gitlab_subscription, :gold, namespace: namespace) create(:gitlab_subscription, :ultimate, namespace: namespace)
end end
where(:plan, :trial, :expired, :available) do where(:plan, :trial, :expired, :available) do
...@@ -93,12 +93,14 @@ RSpec.describe Dashboard::Projects::ListService do ...@@ -93,12 +93,14 @@ RSpec.describe Dashboard::Projects::ListService do
using RSpec::Parameterized::TableSyntax using RSpec::Parameterized::TableSyntax
where(:check_namespace_plan, :plan, :available) do where(:check_namespace_plan, :plan, :available) do
true | :gold | true true | :gold | true
true | :silver | true true | :silver | true
true | nil | false true | :ultimate | true
false | :gold | true true | nil | false
false | :silver | true false | :gold | true
false | nil | true false | :silver | true
false | :ultimate | true
false | nil | true
end end
with_them do with_them do
......
...@@ -12,11 +12,11 @@ RSpec.describe EE::SystemHooksService do ...@@ -12,11 +12,11 @@ RSpec.describe EE::SystemHooksService do
it { expect(event_data(group_member, :destroy)).to include(:event_name, :created_at, :updated_at, :group_name, :group_path, :group_plan, :group_id, :user_name, :user_username, :user_email, :user_id, :group_access) } it { expect(event_data(group_member, :destroy)).to include(:event_name, :created_at, :updated_at, :group_name, :group_path, :group_plan, :group_id, :user_name, :user_username, :user_email, :user_id, :group_access) }
end end
context 'with a Gold plan' do context 'with a Ultimate plan' do
let(:group) { create(:group_with_plan, plan: :gold_plan) } let(:group) { create(:group_with_plan, plan: :ultimate_plan) }
it 'returns correct group_plan' do it 'returns correct group_plan' do
expect(event_data(group_member, :create)[:group_plan]).to eq('gold') expect(event_data(group_member, :create)[:group_plan]).to eq('ultimate')
end end
end end
end end
......
...@@ -146,7 +146,7 @@ RSpec.describe Projects::CreateService, '#execute' do ...@@ -146,7 +146,7 @@ RSpec.describe Projects::CreateService, '#execute' do
context 'when licensed on a namespace' do context 'when licensed on a namespace' do
it 'allows enabling mirrors' do it 'allows enabling mirrors' do
create(:gitlab_subscription, :gold, namespace: user.namespace) create(:gitlab_subscription, :ultimate, namespace: user.namespace)
project = create_project(user, opts) project = create_project(user, opts)
......
...@@ -52,7 +52,7 @@ RSpec.shared_examples 'dashboard ultimate trial callout' do ...@@ -52,7 +52,7 @@ RSpec.shared_examples 'dashboard ultimate trial callout' do
it 'hides promotion callout if user owns a paid namespace', :js do it 'hides promotion callout if user owns a paid namespace', :js do
allow_any_instance_of(EE::DashboardHelper).to receive(:user_default_dashboard?).and_return(true) allow_any_instance_of(EE::DashboardHelper).to receive(:user_default_dashboard?).and_return(true)
group = create(:group_with_plan, name: 'gold group', plan: :gold_plan) group = create(:group_with_plan, name: 'ultimate group', plan: :ultimate_plan)
group.add_owner(user) group.add_owner(user)
visit page_path visit page_path
...@@ -107,7 +107,7 @@ RSpec.shared_examples 'billings ultimate trial callout' do ...@@ -107,7 +107,7 @@ RSpec.shared_examples 'billings ultimate trial callout' do
end end
context 'on a ultimate plan' do context 'on a ultimate plan' do
let(:plan) { gold_plan } let(:plan) { ultimate_plan }
let!(:subscription) do let!(:subscription) do
create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, seats: 15) create(:gitlab_subscription, namespace: namespace, hosted_plan: plan, seats: 15)
......
...@@ -122,7 +122,7 @@ RSpec.describe 'layouts/nav/sidebar/_group' do ...@@ -122,7 +122,7 @@ RSpec.describe 'layouts/nav/sidebar/_group' do
end end
describe 'security dashboard tab' do describe 'security dashboard tab' do
let(:group) { create(:group_with_plan, plan: :gold_plan) } let(:group) { create(:group_with_plan, plan: :ultimate_plan) }
before do before do
enable_namespace_license_check! enable_namespace_license_check!
......
...@@ -26,7 +26,7 @@ RSpec.describe 'shared/billings/_trial_status.html.haml' do ...@@ -26,7 +26,7 @@ RSpec.describe 'shared/billings/_trial_status.html.haml' do
let(:trial) { true } let(:trial) { true }
context 'with a ultimate trial' do context 'with a ultimate trial' do
let(:plan) { create(:gold_plan, title: 'Ultimate') } let(:plan) { create(:ultimate_plan, title: 'Ultimate') }
it 'displays expiry date and Ultimate' do it 'displays expiry date and Ultimate' do
render 'shared/billings/trial_status', namespace: group render 'shared/billings/trial_status', namespace: group
......
...@@ -20,10 +20,10 @@ RSpec.describe ElasticNamespaceRolloutWorker do ...@@ -20,10 +20,10 @@ RSpec.describe ElasticNamespaceRolloutWorker do
end end
def expect_percentage_to_result_in_records(percentage, record_count, mode) def expect_percentage_to_result_in_records(percentage, record_count, mode)
subject.perform('gold', percentage, mode) subject.perform('ultimate', percentage, mode)
namespace_ids = GitlabSubscription namespace_ids = GitlabSubscription
.with_hosted_plan('gold') .with_hosted_plan('ultimate')
.order(id: :asc) .order(id: :asc)
.pluck(:namespace_id) .pluck(:namespace_id)
...@@ -55,24 +55,24 @@ RSpec.describe ElasticNamespaceRolloutWorker do ...@@ -55,24 +55,24 @@ RSpec.describe ElasticNamespaceRolloutWorker do
it 'distinguishes different plans' do it 'distinguishes different plans' do
# Rollout # Rollout
subject.perform('gold', 50, ROLLOUT) subject.perform('ultimate', 50, ROLLOUT)
subject.perform('silver', 25, ROLLOUT) subject.perform('silver', 25, ROLLOUT)
expect( expect(
ElasticsearchIndexedNamespace.pluck(:namespace_id) ElasticsearchIndexedNamespace.pluck(:namespace_id)
).to contain_exactly( ).to contain_exactly(
*get_namespace_ids(:gold, 2), *get_namespace_ids(:ultimate, 2),
*get_namespace_ids(:silver, 1) *get_namespace_ids(:silver, 1)
) )
# Rollback # Rollback
subject.perform('gold', 25, ROLLBACK) subject.perform('ultimate', 25, ROLLBACK)
subject.perform('silver', 0, ROLLBACK) subject.perform('silver', 0, ROLLBACK)
expect( expect(
ElasticsearchIndexedNamespace.pluck(:namespace_id) ElasticsearchIndexedNamespace.pluck(:namespace_id)
).to contain_exactly( ).to contain_exactly(
*get_namespace_ids(:gold, 1) *get_namespace_ids(:ultimate, 1)
) )
end end
...@@ -85,11 +85,11 @@ RSpec.describe ElasticNamespaceRolloutWorker do ...@@ -85,11 +85,11 @@ RSpec.describe ElasticNamespaceRolloutWorker do
changes: 3, changes: 3,
expected_count: 3, expected_count: 3,
current_count: 0, current_count: 0,
plan: 'gold' plan: 'ultimate'
) )
).and_call_original ).and_call_original
subject.perform('gold', 75, ROLLOUT) subject.perform('ultimate', 75, ROLLOUT)
expect(logger).to receive(:info).with( expect(logger).to receive(:info).with(
hash_including( hash_including(
...@@ -97,10 +97,10 @@ RSpec.describe ElasticNamespaceRolloutWorker do ...@@ -97,10 +97,10 @@ RSpec.describe ElasticNamespaceRolloutWorker do
changes: 2, changes: 2,
expected_count: 1, expected_count: 1,
current_count: 3, current_count: 3,
plan: 'gold' plan: 'ultimate'
) )
).and_call_original ).and_call_original
subject.perform('gold', 25, ROLLBACK) subject.perform('ultimate', 25, ROLLBACK)
end end
end end
...@@ -10637,7 +10637,7 @@ msgstr "" ...@@ -10637,7 +10637,7 @@ msgstr ""
msgid "Discover|Security capabilities, integrated into your development lifecycle" msgid "Discover|Security capabilities, integrated into your development lifecycle"
msgstr "" msgstr ""
msgid "Discover|See the other features of the %{linkStart}gold plan%{linkEnd}" msgid "Discover|See the other features of the %{linkStart}ultimate plan%{linkEnd}"
msgstr "" msgstr ""
msgid "Discover|Start a free trial" msgid "Discover|Start a free trial"
...@@ -15646,7 +15646,7 @@ msgstr "" ...@@ -15646,7 +15646,7 @@ msgstr ""
msgid "InProductMarketing|Start a GitLab Gold trial today in less than one minute, no credit card required." msgid "InProductMarketing|Start a GitLab Gold trial today in less than one minute, no credit card required."
msgstr "" msgstr ""
msgid "InProductMarketing|Start a free trial of GitLab Gold – no CC required" msgid "InProductMarketing|Start a free trial of GitLab Ultimate – no CC required"
msgstr "" msgstr ""
msgid "InProductMarketing|Start a trial" msgid "InProductMarketing|Start a trial"
...@@ -21100,7 +21100,7 @@ msgstr "" ...@@ -21100,7 +21100,7 @@ msgstr ""
msgid "Only project members will be imported. Group members will be skipped." msgid "Only project members will be imported. Group members will be skipped."
msgstr "" msgstr ""
msgid "Only projects created under a Gold license are available in Security Dashboards." msgid "Only projects created under a Ultimate license are available in Security Dashboards."
msgstr "" msgstr ""
msgid "Only verified users with an email address in any of these domains can be added to the group." msgid "Only verified users with an email address in any of these domains can be added to the group."
......
...@@ -48,18 +48,18 @@ RSpec.describe 'admin/application_settings/_package_registry' do ...@@ -48,18 +48,18 @@ RSpec.describe 'admin/application_settings/_package_registry' do
end end
context 'with multiple plans' do context 'with multiple plans' do
let_it_be(:plan) { create(:plan, name: 'Gold') } let_it_be(:plan) { create(:plan, name: 'Ultimate') }
let_it_be(:gold_plan_limits) { create(:plan_limits, :with_package_file_sizes, plan: plan) } let_it_be(:ultimate_plan_limits) { create(:plan_limits, :with_package_file_sizes, plan: plan) }
before do before do
assign(:plans, [default_plan_limits.plan, gold_plan_limits.plan]) assign(:plans, [default_plan_limits.plan, ultimate_plan_limits.plan])
end end
it 'displays the plan name when there is more than one plan' do it 'displays the plan name when there is more than one plan' do
subject subject
expect(page).to have_content('Default') expect(page).to have_content('Default')
expect(page).to have_content('Gold') expect(page).to have_content('Ultimate')
end end
end end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment