From 640e72ca920642c86eeef05e6b4e6ebeb66e6ddf Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 4 Jun 2020 03:08:05 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .../monitoring/github_imports.md | 6 ++++ .../gitlab_self_monitoring_project/index.md | 6 ++++ doc/administration/monitoring/index.md | 6 ++++ doc/administration/monitoring/ip_whitelist.md | 6 ++++ .../performance/gitlab_configuration.md | 6 ++++ .../performance/grafana_configuration.md | 6 ++++ .../monitoring/performance/index.md | 6 ++++ .../monitoring/performance/performance_bar.md | 6 ++++ .../performance/request_profiling.md | 6 ++++ doc/ci/jenkins/index.md | 2 +- .../img/group_stats_table.png | Bin 8473 -> 22691 bytes .../group/contribution_analytics/index.md | 2 +- locale/gitlab.pot | 12 +++---- spec/bin/changelog_spec.rb | 2 +- spec/bin/sidekiq_cluster_spec.rb | 2 +- .../application_cable/connection_spec.rb | 2 +- spec/channels/issues_channel_spec.rb | 2 +- spec/config/application_spec.rb | 2 +- spec/config/mail_room_spec.rb | 2 +- spec/config/object_store_settings_spec.rb | 2 +- spec/config/settings_spec.rb | 2 +- spec/config/smime_signature_settings_spec.rb | 2 +- .../abuse_reports_controller_spec.rb | 2 +- .../acme_challenges_controller_spec.rb | 2 +- .../admin/appearances_controller_spec.rb | 2 +- .../application_settings_controller_spec.rb | 2 +- .../admin/applications_controller_spec.rb | 2 +- .../admin/ci/variables_controller_spec.rb | 2 +- .../clusters/applications_controller_spec.rb | 2 +- .../admin/clusters_controller_spec.rb | 2 +- .../admin/dashboard_controller_spec.rb | 2 +- .../admin/gitaly_servers_controller_spec.rb | 2 +- .../admin/groups_controller_spec.rb | 2 +- .../admin/health_check_controller_spec.rb | 2 +- .../admin/hooks_controller_spec.rb | 2 +- .../admin/identities_controller_spec.rb | 2 +- .../admin/impersonations_controller_spec.rb | 2 +- .../admin/integrations_controller_spec.rb | 2 +- .../admin/projects_controller_spec.rb | 2 +- .../requests_profiles_controller_spec.rb | 2 +- .../admin/runners_controller_spec.rb | 2 +- .../serverless/domains_controller_spec.rb | 2 +- .../admin/services_controller_spec.rb | 2 +- .../admin/sessions_controller_spec.rb | 2 +- .../admin/spam_logs_controller_spec.rb | 2 +- .../admin/users_controller_spec.rb | 2 +- .../application_controller_spec.rb | 2 +- .../autocomplete_controller_spec.rb | 2 +- .../boards/issues_controller_spec.rb | 2 +- .../boards/lists_controller_spec.rb | 2 +- spec/controllers/chaos_controller_spec.rb | 2 +- .../concerns/boards_responses_spec.rb | 2 +- .../concerns/checks_collaboration_spec.rb | 2 +- .../concerns/confirm_email_warning_spec.rb | 2 +- .../concerns/continue_params_spec.rb | 2 +- ...er_with_cross_project_access_check_spec.rb | 2 +- .../enforces_admin_authentication_spec.rb | 2 +- spec/controllers/concerns/group_tree_spec.rb | 2 +- .../concerns/import_url_params_spec.rb | 2 +- .../concerns/internal_redirect_spec.rb | 2 +- .../concerns/issuable_actions_spec.rb | 2 +- .../concerns/issuable_collections_spec.rb | 2 +- spec/controllers/concerns/lfs_request_spec.rb | 2 +- .../concerns/metrics_dashboard_spec.rb | 2 +- .../controllers/concerns/page_limiter_spec.rb | 2 +- .../concerns/project_unauthorized_spec.rb | 2 +- ...redirects_for_missing_path_on_tree_spec.rb | 2 +- .../concerns/renders_commits_spec.rb | 2 +- .../concerns/routable_actions_spec.rb | 2 +- .../concerns/send_file_upload_spec.rb | 2 +- .../concerns/sorting_preference_spec.rb | 2 +- .../concerns/sourcegraph_decorator_spec.rb | 2 +- .../static_object_external_storage_spec.rb | 2 +- .../dashboard/groups_controller_spec.rb | 2 +- .../dashboard/labels_controller_spec.rb | 2 +- .../dashboard/milestones_controller_spec.rb | 2 +- .../dashboard/projects_controller_spec.rb | 2 +- .../dashboard/snippets_controller_spec.rb | 2 +- .../dashboard/todos_controller_spec.rb | 2 +- spec/controllers/dashboard_controller_spec.rb | 2 +- .../explore/groups_controller_spec.rb | 2 +- .../explore/projects_controller_spec.rb | 2 +- .../explore/snippets_controller_spec.rb | 2 +- .../authorizations_controller_spec.rb | 2 +- spec/controllers/graphql_controller_spec.rb | 2 +- .../groups/avatars_controller_spec.rb | 2 +- .../groups/boards_controller_spec.rb | 2 +- .../groups/children_controller_spec.rb | 2 +- .../clusters/applications_controller_spec.rb | 2 +- .../groups/clusters_controller_spec.rb | 2 +- .../groups/group_links_controller_spec.rb | 2 +- .../groups/group_members_controller_spec.rb | 2 +- .../groups/labels_controller_spec.rb | 2 +- .../groups/milestones_controller_spec.rb | 2 +- .../registry/repositories_controller_spec.rb | 2 +- .../groups/runners_controller_spec.rb | 2 +- .../groups/settings/ci_cd_controller_spec.rb | 2 +- .../settings/integrations_controller_spec.rb | 2 +- .../settings/repository_controller_spec.rb | 2 +- .../groups/shared_projects_controller_spec.rb | 2 +- .../groups/uploads_controller_spec.rb | 2 +- .../groups/variables_controller_spec.rb | 2 +- spec/controllers/groups_controller_spec.rb | 2 +- .../health_check_controller_spec.rb | 2 +- spec/controllers/help_controller_spec.rb | 2 +- spec/controllers/ide_controller_spec.rb | 2 +- .../import/bitbucket_controller_spec.rb | 2 +- .../bitbucket_server_controller_spec.rb | 2 +- .../import/fogbugz_controller_spec.rb | 2 +- .../import/gitea_controller_spec.rb | 2 +- .../import/github_controller_spec.rb | 2 +- .../import/gitlab_controller_spec.rb | 2 +- .../import/google_code_controller_spec.rb | 2 +- .../import/phabricator_controller_spec.rb | 2 +- .../cohorts_controller_spec.rb | 2 +- spec/models/user_spec.rb | 32 +++++++++++++++++- 116 files changed, 195 insertions(+), 111 deletions(-) diff --git a/doc/administration/monitoring/github_imports.md b/doc/administration/monitoring/github_imports.md index 6d5915930b2..21cc4c708a8 100644 --- a/doc/administration/monitoring/github_imports.md +++ b/doc/administration/monitoring/github_imports.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # Monitoring GitHub imports >**Note:** diff --git a/doc/administration/monitoring/gitlab_self_monitoring_project/index.md b/doc/administration/monitoring/gitlab_self_monitoring_project/index.md index 2b2c94e9ce8..3fe77425c3d 100644 --- a/doc/administration/monitoring/gitlab_self_monitoring_project/index.md +++ b/doc/administration/monitoring/gitlab_self_monitoring_project/index.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # GitLab self monitoring project > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/32351) in GitLab 12.7, behind a disabled feature flag (`self_monitoring_project`). diff --git a/doc/administration/monitoring/index.md b/doc/administration/monitoring/index.md index 1d7c52a198f..a54c25450c6 100644 --- a/doc/administration/monitoring/index.md +++ b/doc/administration/monitoring/index.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # Monitoring GitLab Explore our features to monitor your GitLab instance: diff --git a/doc/administration/monitoring/ip_whitelist.md b/doc/administration/monitoring/ip_whitelist.md index 1b0ea1744d9..862a9368be8 100644 --- a/doc/administration/monitoring/ip_whitelist.md +++ b/doc/administration/monitoring/ip_whitelist.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # IP whitelist > Introduced in GitLab 9.4. diff --git a/doc/administration/monitoring/performance/gitlab_configuration.md b/doc/administration/monitoring/performance/gitlab_configuration.md index 14119a5d8f3..d09dabab40d 100644 --- a/doc/administration/monitoring/performance/gitlab_configuration.md +++ b/doc/administration/monitoring/performance/gitlab_configuration.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # GitLab Configuration GitLab Performance Monitoring is disabled by default. To enable it and change any of its diff --git a/doc/administration/monitoring/performance/grafana_configuration.md b/doc/administration/monitoring/performance/grafana_configuration.md index e753a2554ec..4dbe3aed84e 100644 --- a/doc/administration/monitoring/performance/grafana_configuration.md +++ b/doc/administration/monitoring/performance/grafana_configuration.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # Grafana Configuration [Grafana](https://grafana.com/) is a tool that allows you to visualize time diff --git a/doc/administration/monitoring/performance/index.md b/doc/administration/monitoring/performance/index.md index 02070287611..6f22327e499 100644 --- a/doc/administration/monitoring/performance/index.md +++ b/doc/administration/monitoring/performance/index.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # GitLab Performance Monitoring GitLab comes with its own application performance measuring system as of GitLab diff --git a/doc/administration/monitoring/performance/performance_bar.md b/doc/administration/monitoring/performance/performance_bar.md index 89246bc9782..5c6c85c7356 100644 --- a/doc/administration/monitoring/performance/performance_bar.md +++ b/doc/administration/monitoring/performance/performance_bar.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # Performance Bar A Performance Bar can be displayed, to dig into the performance of a page. When diff --git a/doc/administration/monitoring/performance/request_profiling.md b/doc/administration/monitoring/performance/request_profiling.md index c32edb60f9d..98774930cd2 100644 --- a/doc/administration/monitoring/performance/request_profiling.md +++ b/doc/administration/monitoring/performance/request_profiling.md @@ -1,3 +1,9 @@ +--- +stage: Monitor +group: APM +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers +--- + # Request Profiling ## Procedure diff --git a/doc/ci/jenkins/index.md b/doc/ci/jenkins/index.md index 7fd93fbc7df..daa6739f503 100644 --- a/doc/ci/jenkins/index.md +++ b/doc/ci/jenkins/index.md @@ -124,7 +124,7 @@ There are some important differences in the way Runners work in comparison to ag associate runners with specific jobs. For example, you can use a tag for jobs that require dedicated, more powerful, or specific hardware. - GitLab has [autoscaling for Runners](https://docs.gitlab.com/runner/configuration/autoscale.html) - which will let configure them to be provisioned as needed, and scaled down when not. + which will let you configure them to be provisioned as needed, and scaled down when not. This is similar to ephemeral agents in Jenkins. If you are using `gitlab.com`, you can take advantage of our [shared Runner fleet](../../user/gitlab_com/index.md#shared-runners) diff --git a/doc/user/group/contribution_analytics/img/group_stats_table.png b/doc/user/group/contribution_analytics/img/group_stats_table.png index f1d1031fa184842f97394f66144c5541cb89ef22..1f58b9717d0ccb5828054d70864bda4410b7e6f1 100644 GIT binary patch literal 22691 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 diff --git a/doc/user/group/contribution_analytics/index.md b/doc/user/group/contribution_analytics/index.md index 01698edeadf..70e63f551cb 100644 --- a/doc/user/group/contribution_analytics/index.md +++ b/doc/user/group/contribution_analytics/index.md @@ -63,7 +63,7 @@ Contributions per group member are also presented in tabular format. Click a col - Number of opened issues - Number of closed issues - Number of opened MRs -- Number of accepted MRs +- Number of merged MRs - Number of total contributions ![Contribution analytics contributions table](img/group_stats_table.png) diff --git a/locale/gitlab.pot b/locale/gitlab.pot index e47e59c9e98..fd224069c64 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -1033,9 +1033,6 @@ msgstr "" msgid "Acceptable for use in this project" msgstr "" -msgid "Accepted MR" -msgstr "" - msgid "Access Tokens" msgstr "" @@ -6124,10 +6121,10 @@ msgstr "" msgid "Contribution Analytics" msgstr "" -msgid "ContributionAnalytics|%{created_count} created, %{accepted_count} accepted." +msgid "ContributionAnalytics|%{created_count} created, %{closed_count} closed." msgstr "" -msgid "ContributionAnalytics|%{created_count} created, %{closed_count} closed." +msgid "ContributionAnalytics|%{created_count} created, %{merged_count} merged." msgstr "" msgid "ContributionAnalytics|%{pushes} pushes, more than %{commits} commits by %{people} contributors." @@ -13734,6 +13731,9 @@ msgstr "" msgid "Merged" msgstr "" +msgid "Merged MRs" +msgstr "" + msgid "Merged branches are being deleted. This can take some time depending on the number of branches. Please refresh the page to see changes." msgstr "" @@ -15215,7 +15215,7 @@ msgstr "" msgid "Opened" msgstr "" -msgid "Opened MR" +msgid "Opened MRs" msgstr "" msgid "Opened issues" diff --git a/spec/bin/changelog_spec.rb b/spec/bin/changelog_spec.rb index ce7f7648c0c..8a86f574bf5 100644 --- a/spec/bin/changelog_spec.rb +++ b/spec/bin/changelog_spec.rb @@ -4,7 +4,7 @@ require 'spec_helper' load File.expand_path('../../bin/changelog', __dir__) -describe 'bin/changelog' do +RSpec.describe 'bin/changelog' do let(:options) { OpenStruct.new(title: 'Test title', type: 'fixed', dry_run: true) } describe ChangelogEntry do diff --git a/spec/bin/sidekiq_cluster_spec.rb b/spec/bin/sidekiq_cluster_spec.rb index c0240214a6b..fc5e2ae861a 100644 --- a/spec/bin/sidekiq_cluster_spec.rb +++ b/spec/bin/sidekiq_cluster_spec.rb @@ -3,7 +3,7 @@ require 'spec_helper' require 'shellwords' -describe 'bin/sidekiq-cluster' do +RSpec.describe 'bin/sidekiq-cluster' do using RSpec::Parameterized::TableSyntax context 'when selecting some queues and excluding others' do diff --git a/spec/channels/application_cable/connection_spec.rb b/spec/channels/application_cable/connection_spec.rb index f3d67133528..e5f7ea1103c 100644 --- a/spec/channels/application_cable/connection_spec.rb +++ b/spec/channels/application_cable/connection_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe ApplicationCable::Connection, :clean_gitlab_redis_shared_state do +RSpec.describe ApplicationCable::Connection, :clean_gitlab_redis_shared_state do let(:session_id) { Rack::Session::SessionId.new('6919a6f1bb119dd7396fadc38fd18d0d') } before do diff --git a/spec/channels/issues_channel_spec.rb b/spec/channels/issues_channel_spec.rb index d87541cad46..4c860402f03 100644 --- a/spec/channels/issues_channel_spec.rb +++ b/spec/channels/issues_channel_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe IssuesChannel do +RSpec.describe IssuesChannel do let_it_be(:issue) { create(:issue) } it 'rejects when project path is invalid' do diff --git a/spec/config/application_spec.rb b/spec/config/application_spec.rb index e6b8da690a2..94fecc26e7f 100644 --- a/spec/config/application_spec.rb +++ b/spec/config/application_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Gitlab::Application do # rubocop:disable RSpec/FilePath +RSpec.describe Gitlab::Application do # rubocop:disable RSpec/FilePath using RSpec::Parameterized::TableSyntax filtered_param = ActiveSupport::ParameterFilter::FILTERED diff --git a/spec/config/mail_room_spec.rb b/spec/config/mail_room_spec.rb index bd8269fb2c5..206f2744281 100644 --- a/spec/config/mail_room_spec.rb +++ b/spec/config/mail_room_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe 'mail_room.yml' do +RSpec.describe 'mail_room.yml' do include StubENV let(:mailroom_config_path) { 'config/mail_room.yml' } diff --git a/spec/config/object_store_settings_spec.rb b/spec/config/object_store_settings_spec.rb index c38910cff0a..67e77aa4466 100644 --- a/spec/config/object_store_settings_spec.rb +++ b/spec/config/object_store_settings_spec.rb @@ -3,7 +3,7 @@ require 'spec_helper' require Rails.root.join('config', 'object_store_settings.rb') -describe ObjectStoreSettings do +RSpec.describe ObjectStoreSettings do describe '.parse' do it 'sets correct default values' do settings = described_class.parse(nil) diff --git a/spec/config/settings_spec.rb b/spec/config/settings_spec.rb index 20c0b92f135..9db3d35cbe5 100644 --- a/spec/config/settings_spec.rb +++ b/spec/config/settings_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Settings do +RSpec.describe Settings do describe 'omniauth' do it 'defaults to enabled' do expect(described_class.omniauth.enabled).to be true diff --git a/spec/config/smime_signature_settings_spec.rb b/spec/config/smime_signature_settings_spec.rb index 7e7b42b129a..5ce6fdd975b 100644 --- a/spec/config/smime_signature_settings_spec.rb +++ b/spec/config/smime_signature_settings_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe SmimeSignatureSettings do +RSpec.describe SmimeSignatureSettings do describe '.parse' do let(:default_smime_key) { Rails.root.join('.gitlab_smime_key') } let(:default_smime_cert) { Rails.root.join('.gitlab_smime_cert') } diff --git a/spec/controllers/abuse_reports_controller_spec.rb b/spec/controllers/abuse_reports_controller_spec.rb index 087b564dddb..da7577c371d 100644 --- a/spec/controllers/abuse_reports_controller_spec.rb +++ b/spec/controllers/abuse_reports_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe AbuseReportsController do +RSpec.describe AbuseReportsController do let(:reporter) { create(:user) } let(:user) { create(:user) } let(:attrs) do diff --git a/spec/controllers/acme_challenges_controller_spec.rb b/spec/controllers/acme_challenges_controller_spec.rb index be077a4b20d..e737999fa2d 100644 --- a/spec/controllers/acme_challenges_controller_spec.rb +++ b/spec/controllers/acme_challenges_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe AcmeChallengesController do +RSpec.describe AcmeChallengesController do describe '#show' do let!(:acme_order) { create(:pages_domain_acme_order) } diff --git a/spec/controllers/admin/appearances_controller_spec.rb b/spec/controllers/admin/appearances_controller_spec.rb index 621aa148301..ee6a4a4c7af 100644 --- a/spec/controllers/admin/appearances_controller_spec.rb +++ b/spec/controllers/admin/appearances_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::AppearancesController do +RSpec.describe Admin::AppearancesController do let(:admin) { create(:admin) } let(:header_message) { 'Header message' } let(:footer_message) { 'Footer' } diff --git a/spec/controllers/admin/application_settings_controller_spec.rb b/spec/controllers/admin/application_settings_controller_spec.rb index 9508e22906d..8ab29a72477 100644 --- a/spec/controllers/admin/application_settings_controller_spec.rb +++ b/spec/controllers/admin/application_settings_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::ApplicationSettingsController do +RSpec.describe Admin::ApplicationSettingsController do include StubENV include UsageDataHelpers diff --git a/spec/controllers/admin/applications_controller_spec.rb b/spec/controllers/admin/applications_controller_spec.rb index 163a2033b58..732d20666cb 100644 --- a/spec/controllers/admin/applications_controller_spec.rb +++ b/spec/controllers/admin/applications_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::ApplicationsController do +RSpec.describe Admin::ApplicationsController do let(:admin) { create(:admin) } let(:application) { create(:oauth_application, owner_id: nil, owner_type: nil) } diff --git a/spec/controllers/admin/ci/variables_controller_spec.rb b/spec/controllers/admin/ci/variables_controller_spec.rb index 57f2dd21f39..9f0a1bd3be1 100644 --- a/spec/controllers/admin/ci/variables_controller_spec.rb +++ b/spec/controllers/admin/ci/variables_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::Ci::VariablesController do +RSpec.describe Admin::Ci::VariablesController do let_it_be(:variable) { create(:ci_instance_variable) } before do diff --git a/spec/controllers/admin/clusters/applications_controller_spec.rb b/spec/controllers/admin/clusters/applications_controller_spec.rb index 44693505c4f..2a77693061c 100644 --- a/spec/controllers/admin/clusters/applications_controller_spec.rb +++ b/spec/controllers/admin/clusters/applications_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::Clusters::ApplicationsController do +RSpec.describe Admin::Clusters::ApplicationsController do include AccessMatchersForController def current_application diff --git a/spec/controllers/admin/clusters_controller_spec.rb b/spec/controllers/admin/clusters_controller_spec.rb index fc1328c887a..d899e86ae5f 100644 --- a/spec/controllers/admin/clusters_controller_spec.rb +++ b/spec/controllers/admin/clusters_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::ClustersController do +RSpec.describe Admin::ClustersController do include AccessMatchersForController include GoogleApi::CloudPlatformHelpers diff --git a/spec/controllers/admin/dashboard_controller_spec.rb b/spec/controllers/admin/dashboard_controller_spec.rb index 4de69a9aea1..283d82a3ab8 100644 --- a/spec/controllers/admin/dashboard_controller_spec.rb +++ b/spec/controllers/admin/dashboard_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::DashboardController do +RSpec.describe Admin::DashboardController do describe '#index' do context 'with pending_delete projects' do render_views diff --git a/spec/controllers/admin/gitaly_servers_controller_spec.rb b/spec/controllers/admin/gitaly_servers_controller_spec.rb index db94ea06f59..53f8a06ab52 100644 --- a/spec/controllers/admin/gitaly_servers_controller_spec.rb +++ b/spec/controllers/admin/gitaly_servers_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::GitalyServersController do +RSpec.describe Admin::GitalyServersController do describe '#index' do before do sign_in(create(:admin)) diff --git a/spec/controllers/admin/groups_controller_spec.rb b/spec/controllers/admin/groups_controller_spec.rb index 1123563c1e3..3f32209543f 100644 --- a/spec/controllers/admin/groups_controller_spec.rb +++ b/spec/controllers/admin/groups_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::GroupsController do +RSpec.describe Admin::GroupsController do let(:group) { create(:group) } let(:project) { create(:project, namespace: group) } let(:admin) { create(:admin) } diff --git a/spec/controllers/admin/health_check_controller_spec.rb b/spec/controllers/admin/health_check_controller_spec.rb index cf5b27156c0..06aace429e3 100644 --- a/spec/controllers/admin/health_check_controller_spec.rb +++ b/spec/controllers/admin/health_check_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::HealthCheckController do +RSpec.describe Admin::HealthCheckController do let(:admin) { create(:admin) } before do diff --git a/spec/controllers/admin/hooks_controller_spec.rb b/spec/controllers/admin/hooks_controller_spec.rb index 9973ef93cd9..8975f746dd7 100644 --- a/spec/controllers/admin/hooks_controller_spec.rb +++ b/spec/controllers/admin/hooks_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::HooksController do +RSpec.describe Admin::HooksController do let(:admin) { create(:admin) } before do diff --git a/spec/controllers/admin/identities_controller_spec.rb b/spec/controllers/admin/identities_controller_spec.rb index f483c88d18d..6ac5ce13884 100644 --- a/spec/controllers/admin/identities_controller_spec.rb +++ b/spec/controllers/admin/identities_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::IdentitiesController do +RSpec.describe Admin::IdentitiesController do let(:admin) { create(:admin) } before do diff --git a/spec/controllers/admin/impersonations_controller_spec.rb b/spec/controllers/admin/impersonations_controller_spec.rb index fa3923bca8c..326003acaf8 100644 --- a/spec/controllers/admin/impersonations_controller_spec.rb +++ b/spec/controllers/admin/impersonations_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::ImpersonationsController do +RSpec.describe Admin::ImpersonationsController do let(:impersonator) { create(:admin) } let(:user) { create(:user) } diff --git a/spec/controllers/admin/integrations_controller_spec.rb b/spec/controllers/admin/integrations_controller_spec.rb index cb8282a6c4a..ae938d4cc42 100644 --- a/spec/controllers/admin/integrations_controller_spec.rb +++ b/spec/controllers/admin/integrations_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::IntegrationsController do +RSpec.describe Admin::IntegrationsController do let(:admin) { create(:admin) } let(:integration) { create(:jira_service, :instance) } diff --git a/spec/controllers/admin/projects_controller_spec.rb b/spec/controllers/admin/projects_controller_spec.rb index f0157fb4260..b5f411c9121 100644 --- a/spec/controllers/admin/projects_controller_spec.rb +++ b/spec/controllers/admin/projects_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::ProjectsController do +RSpec.describe Admin::ProjectsController do let!(:project) { create(:project, :public) } before do diff --git a/spec/controllers/admin/requests_profiles_controller_spec.rb b/spec/controllers/admin/requests_profiles_controller_spec.rb index 629233b04e7..7ee46b5b28a 100644 --- a/spec/controllers/admin/requests_profiles_controller_spec.rb +++ b/spec/controllers/admin/requests_profiles_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::RequestsProfilesController do +RSpec.describe Admin::RequestsProfilesController do let_it_be(:admin) { create(:admin) } before do diff --git a/spec/controllers/admin/runners_controller_spec.rb b/spec/controllers/admin/runners_controller_spec.rb index 803fcf90135..013eee19409 100644 --- a/spec/controllers/admin/runners_controller_spec.rb +++ b/spec/controllers/admin/runners_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::RunnersController do +RSpec.describe Admin::RunnersController do let_it_be(:runner) { create(:ci_runner) } before do diff --git a/spec/controllers/admin/serverless/domains_controller_spec.rb b/spec/controllers/admin/serverless/domains_controller_spec.rb index 43c3f0117bc..e7503fb37fa 100644 --- a/spec/controllers/admin/serverless/domains_controller_spec.rb +++ b/spec/controllers/admin/serverless/domains_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::Serverless::DomainsController do +RSpec.describe Admin::Serverless::DomainsController do let(:admin) { create(:admin) } let(:user) { create(:user) } diff --git a/spec/controllers/admin/services_controller_spec.rb b/spec/controllers/admin/services_controller_spec.rb index 5dde0d57293..2ad4989af4f 100644 --- a/spec/controllers/admin/services_controller_spec.rb +++ b/spec/controllers/admin/services_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::ServicesController do +RSpec.describe Admin::ServicesController do let(:admin) { create(:admin) } before do diff --git a/spec/controllers/admin/sessions_controller_spec.rb b/spec/controllers/admin/sessions_controller_spec.rb index 351148dbc65..82366cc6952 100644 --- a/spec/controllers/admin/sessions_controller_spec.rb +++ b/spec/controllers/admin/sessions_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::SessionsController, :do_not_mock_admin_mode do +RSpec.describe Admin::SessionsController, :do_not_mock_admin_mode do include_context 'custom session' let(:user) { create(:user) } diff --git a/spec/controllers/admin/spam_logs_controller_spec.rb b/spec/controllers/admin/spam_logs_controller_spec.rb index ec0d8c47660..13038339d08 100644 --- a/spec/controllers/admin/spam_logs_controller_spec.rb +++ b/spec/controllers/admin/spam_logs_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::SpamLogsController do +RSpec.describe Admin::SpamLogsController do let(:admin) { create(:admin) } let(:user) { create(:user) } let!(:first_spam) { create(:spam_log, user: user) } diff --git a/spec/controllers/admin/users_controller_spec.rb b/spec/controllers/admin/users_controller_spec.rb index 1576f6abf5e..08a1d7c9fa9 100644 --- a/spec/controllers/admin/users_controller_spec.rb +++ b/spec/controllers/admin/users_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Admin::UsersController do +RSpec.describe Admin::UsersController do let(:user) { create(:user) } let_it_be(:admin) { create(:admin) } diff --git a/spec/controllers/application_controller_spec.rb b/spec/controllers/application_controller_spec.rb index ca04e2d0578..4002b7aca63 100644 --- a/spec/controllers/application_controller_spec.rb +++ b/spec/controllers/application_controller_spec.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true require 'spec_helper' -describe ApplicationController do +RSpec.describe ApplicationController do include TermsHelper let(:user) { create(:user) } diff --git a/spec/controllers/autocomplete_controller_spec.rb b/spec/controllers/autocomplete_controller_spec.rb index 7b1e9748268..aeb3f4dcb17 100644 --- a/spec/controllers/autocomplete_controller_spec.rb +++ b/spec/controllers/autocomplete_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe AutocompleteController do +RSpec.describe AutocompleteController do let(:project) { create(:project) } let(:user) { project.owner } diff --git a/spec/controllers/boards/issues_controller_spec.rb b/spec/controllers/boards/issues_controller_spec.rb index 8639b76ef0f..601b8d427e0 100644 --- a/spec/controllers/boards/issues_controller_spec.rb +++ b/spec/controllers/boards/issues_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Boards::IssuesController do +RSpec.describe Boards::IssuesController do include ExternalAuthorizationServiceHelpers let(:project) { create(:project, :private) } diff --git a/spec/controllers/boards/lists_controller_spec.rb b/spec/controllers/boards/lists_controller_spec.rb index d0b34b55c36..c72d9e5053a 100644 --- a/spec/controllers/boards/lists_controller_spec.rb +++ b/spec/controllers/boards/lists_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Boards::ListsController do +RSpec.describe Boards::ListsController do let(:project) { create(:project) } let(:board) { create(:board, project: project) } let(:user) { create(:user) } diff --git a/spec/controllers/chaos_controller_spec.rb b/spec/controllers/chaos_controller_spec.rb index 5812990ce7a..550303d292a 100644 --- a/spec/controllers/chaos_controller_spec.rb +++ b/spec/controllers/chaos_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe ChaosController do +RSpec.describe ChaosController do describe '#leakmem' do it 'calls synchronously' do expect(Gitlab::Chaos).to receive(:leak_mem).with(100, 30.seconds) diff --git a/spec/controllers/concerns/boards_responses_spec.rb b/spec/controllers/concerns/boards_responses_spec.rb index bdebdf94761..553a547d42c 100644 --- a/spec/controllers/concerns/boards_responses_spec.rb +++ b/spec/controllers/concerns/boards_responses_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe BoardsResponses do +RSpec.describe BoardsResponses do let(:controller_class) do Class.new do include BoardsResponses diff --git a/spec/controllers/concerns/checks_collaboration_spec.rb b/spec/controllers/concerns/checks_collaboration_spec.rb index 7187e239486..be8beff5dd6 100644 --- a/spec/controllers/concerns/checks_collaboration_spec.rb +++ b/spec/controllers/concerns/checks_collaboration_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe ChecksCollaboration do +RSpec.describe ChecksCollaboration do include ProjectForksHelper let(:helper) do diff --git a/spec/controllers/concerns/confirm_email_warning_spec.rb b/spec/controllers/concerns/confirm_email_warning_spec.rb index 93e3423261c..24ee6fb30d2 100644 --- a/spec/controllers/concerns/confirm_email_warning_spec.rb +++ b/spec/controllers/concerns/confirm_email_warning_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe ConfirmEmailWarning do +RSpec.describe ConfirmEmailWarning do before do stub_feature_flags(soft_email_confirmation: true) end diff --git a/spec/controllers/concerns/continue_params_spec.rb b/spec/controllers/concerns/continue_params_spec.rb index 6af01aa837c..c010e8ffbd0 100644 --- a/spec/controllers/concerns/continue_params_spec.rb +++ b/spec/controllers/concerns/continue_params_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe ContinueParams do +RSpec.describe ContinueParams do let(:controller_class) do Class.new(ActionController::Base) do include ContinueParams diff --git a/spec/controllers/concerns/controller_with_cross_project_access_check_spec.rb b/spec/controllers/concerns/controller_with_cross_project_access_check_spec.rb index 3f9d690837b..a58b83dc42c 100644 --- a/spec/controllers/concerns/controller_with_cross_project_access_check_spec.rb +++ b/spec/controllers/concerns/controller_with_cross_project_access_check_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe ControllerWithCrossProjectAccessCheck do +RSpec.describe ControllerWithCrossProjectAccessCheck do let(:user) { create(:user) } before do diff --git a/spec/controllers/concerns/enforces_admin_authentication_spec.rb b/spec/controllers/concerns/enforces_admin_authentication_spec.rb index 1809bb2d636..c6ad1a00484 100644 --- a/spec/controllers/concerns/enforces_admin_authentication_spec.rb +++ b/spec/controllers/concerns/enforces_admin_authentication_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe EnforcesAdminAuthentication do +RSpec.describe EnforcesAdminAuthentication do include AdminModeHelper let(:user) { create(:user) } diff --git a/spec/controllers/concerns/group_tree_spec.rb b/spec/controllers/concerns/group_tree_spec.rb index 543f0170be0..a0707688e54 100644 --- a/spec/controllers/concerns/group_tree_spec.rb +++ b/spec/controllers/concerns/group_tree_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe GroupTree do +RSpec.describe GroupTree do let(:group) { create(:group, :public) } let(:user) { create(:user) } diff --git a/spec/controllers/concerns/import_url_params_spec.rb b/spec/controllers/concerns/import_url_params_spec.rb index 41e29d71386..72f13cdcc94 100644 --- a/spec/controllers/concerns/import_url_params_spec.rb +++ b/spec/controllers/concerns/import_url_params_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe ImportUrlParams do +RSpec.describe ImportUrlParams do let(:import_url_params) do controller = OpenStruct.new(params: params).extend(described_class) controller.import_url_params diff --git a/spec/controllers/concerns/internal_redirect_spec.rb b/spec/controllers/concerns/internal_redirect_spec.rb index cc6422f2817..3741ff647e4 100644 --- a/spec/controllers/concerns/internal_redirect_spec.rb +++ b/spec/controllers/concerns/internal_redirect_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe InternalRedirect do +RSpec.describe InternalRedirect do let(:controller_class) do Class.new do include InternalRedirect diff --git a/spec/controllers/concerns/issuable_actions_spec.rb b/spec/controllers/concerns/issuable_actions_spec.rb index 2ab46992b99..c3fef591b91 100644 --- a/spec/controllers/concerns/issuable_actions_spec.rb +++ b/spec/controllers/concerns/issuable_actions_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe IssuableActions do +RSpec.describe IssuableActions do let(:project) { double('project') } let(:user) { double('user') } let(:issuable) { double('issuable') } diff --git a/spec/controllers/concerns/issuable_collections_spec.rb b/spec/controllers/concerns/issuable_collections_spec.rb index 7bdf5c49425..befdd760965 100644 --- a/spec/controllers/concerns/issuable_collections_spec.rb +++ b/spec/controllers/concerns/issuable_collections_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe IssuableCollections do +RSpec.describe IssuableCollections do let(:user) { create(:user) } let(:controller) do diff --git a/spec/controllers/concerns/lfs_request_spec.rb b/spec/controllers/concerns/lfs_request_spec.rb index f771a3438cf..3bafd761a3e 100644 --- a/spec/controllers/concerns/lfs_request_spec.rb +++ b/spec/controllers/concerns/lfs_request_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe LfsRequest do +RSpec.describe LfsRequest do include ProjectForksHelper controller(Repositories::GitHttpClientController) do diff --git a/spec/controllers/concerns/metrics_dashboard_spec.rb b/spec/controllers/concerns/metrics_dashboard_spec.rb index fb6b0f656b7..39ddf687dca 100644 --- a/spec/controllers/concerns/metrics_dashboard_spec.rb +++ b/spec/controllers/concerns/metrics_dashboard_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe MetricsDashboard do +RSpec.describe MetricsDashboard do include MetricsDashboardHelpers describe 'GET #metrics_dashboard' do diff --git a/spec/controllers/concerns/page_limiter_spec.rb b/spec/controllers/concerns/page_limiter_spec.rb index 287b62cb66c..a4177943c05 100644 --- a/spec/controllers/concerns/page_limiter_spec.rb +++ b/spec/controllers/concerns/page_limiter_spec.rb @@ -14,7 +14,7 @@ class PageLimiterSpecController < ApplicationController end end -describe PageLimiter do +RSpec.describe PageLimiter do let(:controller_class) do PageLimiterSpecController end diff --git a/spec/controllers/concerns/project_unauthorized_spec.rb b/spec/controllers/concerns/project_unauthorized_spec.rb index 9b40660811e..4fce160cdaf 100644 --- a/spec/controllers/concerns/project_unauthorized_spec.rb +++ b/spec/controllers/concerns/project_unauthorized_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe ProjectUnauthorized do +RSpec.describe ProjectUnauthorized do include ExternalAuthorizationServiceHelpers let(:user) { create(:user) } diff --git a/spec/controllers/concerns/redirects_for_missing_path_on_tree_spec.rb b/spec/controllers/concerns/redirects_for_missing_path_on_tree_spec.rb index 903100ba93f..5c3b6e13ee3 100644 --- a/spec/controllers/concerns/redirects_for_missing_path_on_tree_spec.rb +++ b/spec/controllers/concerns/redirects_for_missing_path_on_tree_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe RedirectsForMissingPathOnTree, type: :controller do +RSpec.describe RedirectsForMissingPathOnTree, type: :controller do controller(ActionController::Base) do include Gitlab::Routing.url_helpers include RedirectsForMissingPathOnTree diff --git a/spec/controllers/concerns/renders_commits_spec.rb b/spec/controllers/concerns/renders_commits_spec.rb index c43ceb6b795..0bffb39d608 100644 --- a/spec/controllers/concerns/renders_commits_spec.rb +++ b/spec/controllers/concerns/renders_commits_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe RendersCommits do +RSpec.describe RendersCommits do let_it_be(:project) { create(:project, :public, :repository) } let_it_be(:merge_request) { create(:merge_request, source_project: project) } let_it_be(:user) { create(:user) } diff --git a/spec/controllers/concerns/routable_actions_spec.rb b/spec/controllers/concerns/routable_actions_spec.rb index 80c67022219..f28f990ecbb 100644 --- a/spec/controllers/concerns/routable_actions_spec.rb +++ b/spec/controllers/concerns/routable_actions_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe RoutableActions do +RSpec.describe RoutableActions do controller(::ApplicationController) do include RoutableActions diff --git a/spec/controllers/concerns/send_file_upload_spec.rb b/spec/controllers/concerns/send_file_upload_spec.rb index 3cfb7b5a488..7cfaf1b248f 100644 --- a/spec/controllers/concerns/send_file_upload_spec.rb +++ b/spec/controllers/concerns/send_file_upload_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe SendFileUpload do +RSpec.describe SendFileUpload do let(:uploader_class) do Class.new(GitlabUploader) do include ObjectStorage::Concern diff --git a/spec/controllers/concerns/sorting_preference_spec.rb b/spec/controllers/concerns/sorting_preference_spec.rb index a36124c6776..4f9506d4675 100644 --- a/spec/controllers/concerns/sorting_preference_spec.rb +++ b/spec/controllers/concerns/sorting_preference_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe SortingPreference do +RSpec.describe SortingPreference do let(:user) { create(:user) } let(:controller_class) do diff --git a/spec/controllers/concerns/sourcegraph_decorator_spec.rb b/spec/controllers/concerns/sourcegraph_decorator_spec.rb index fc0ad0a70f9..2fca5a606d8 100644 --- a/spec/controllers/concerns/sourcegraph_decorator_spec.rb +++ b/spec/controllers/concerns/sourcegraph_decorator_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe SourcegraphDecorator do +RSpec.describe SourcegraphDecorator do let_it_be(:enabled_user) { create(:user, sourcegraph_enabled: true) } let_it_be(:disabled_user) { create(:user, sourcegraph_enabled: false) } let_it_be(:public_project) { create(:project, :public) } diff --git a/spec/controllers/concerns/static_object_external_storage_spec.rb b/spec/controllers/concerns/static_object_external_storage_spec.rb index d3ece587ef7..afb43d531c0 100644 --- a/spec/controllers/concerns/static_object_external_storage_spec.rb +++ b/spec/controllers/concerns/static_object_external_storage_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe StaticObjectExternalStorage do +RSpec.describe StaticObjectExternalStorage do controller(Projects::ApplicationController) do include StaticObjectExternalStorage diff --git a/spec/controllers/dashboard/groups_controller_spec.rb b/spec/controllers/dashboard/groups_controller_spec.rb index b615bcc1e6b..f246d7bcaf1 100644 --- a/spec/controllers/dashboard/groups_controller_spec.rb +++ b/spec/controllers/dashboard/groups_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Dashboard::GroupsController do +RSpec.describe Dashboard::GroupsController do include ExternalAuthorizationServiceHelpers let(:user) { create(:user) } diff --git a/spec/controllers/dashboard/labels_controller_spec.rb b/spec/controllers/dashboard/labels_controller_spec.rb index cb9c3660b9b..415cb821545 100644 --- a/spec/controllers/dashboard/labels_controller_spec.rb +++ b/spec/controllers/dashboard/labels_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Dashboard::LabelsController do +RSpec.describe Dashboard::LabelsController do let(:project) { create(:project) } let(:user) { create(:user) } let!(:label) { create(:label, project: project) } diff --git a/spec/controllers/dashboard/milestones_controller_spec.rb b/spec/controllers/dashboard/milestones_controller_spec.rb index 36c1e2d7169..899aa7a41c1 100644 --- a/spec/controllers/dashboard/milestones_controller_spec.rb +++ b/spec/controllers/dashboard/milestones_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Dashboard::MilestonesController do +RSpec.describe Dashboard::MilestonesController do let(:project) { create(:project) } let(:group) { create(:group) } let(:user) { create(:user) } diff --git a/spec/controllers/dashboard/projects_controller_spec.rb b/spec/controllers/dashboard/projects_controller_spec.rb index eeac696c3f2..ee043fde0ff 100644 --- a/spec/controllers/dashboard/projects_controller_spec.rb +++ b/spec/controllers/dashboard/projects_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Dashboard::ProjectsController do +RSpec.describe Dashboard::ProjectsController do include ExternalAuthorizationServiceHelpers describe '#index' do diff --git a/spec/controllers/dashboard/snippets_controller_spec.rb b/spec/controllers/dashboard/snippets_controller_spec.rb index d5e3a348cd2..3c316d07408 100644 --- a/spec/controllers/dashboard/snippets_controller_spec.rb +++ b/spec/controllers/dashboard/snippets_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Dashboard::SnippetsController do +RSpec.describe Dashboard::SnippetsController do let(:user) { create(:user) } before do diff --git a/spec/controllers/dashboard/todos_controller_spec.rb b/spec/controllers/dashboard/todos_controller_spec.rb index 004eef1873e..f0aa351bee0 100644 --- a/spec/controllers/dashboard/todos_controller_spec.rb +++ b/spec/controllers/dashboard/todos_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Dashboard::TodosController do +RSpec.describe Dashboard::TodosController do let(:user) { create(:user) } let(:author) { create(:user) } let(:project) { create(:project) } diff --git a/spec/controllers/dashboard_controller_spec.rb b/spec/controllers/dashboard_controller_spec.rb index a280d829d83..d27817c0a82 100644 --- a/spec/controllers/dashboard_controller_spec.rb +++ b/spec/controllers/dashboard_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe DashboardController do +RSpec.describe DashboardController do context 'signed in' do let(:user) { create(:user) } let(:project) { create(:project) } diff --git a/spec/controllers/explore/groups_controller_spec.rb b/spec/controllers/explore/groups_controller_spec.rb index eccbd7fa14d..310fe609cf1 100644 --- a/spec/controllers/explore/groups_controller_spec.rb +++ b/spec/controllers/explore/groups_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Explore::GroupsController do +RSpec.describe Explore::GroupsController do let(:user) { create(:user) } before do diff --git a/spec/controllers/explore/projects_controller_spec.rb b/spec/controllers/explore/projects_controller_spec.rb index 00cc2d5a81c..fd86501ff5d 100644 --- a/spec/controllers/explore/projects_controller_spec.rb +++ b/spec/controllers/explore/projects_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Explore::ProjectsController do +RSpec.describe Explore::ProjectsController do shared_examples 'explore projects' do describe 'GET #index.json' do render_views diff --git a/spec/controllers/explore/snippets_controller_spec.rb b/spec/controllers/explore/snippets_controller_spec.rb index ab91faa6cef..f7bd2ba917e 100644 --- a/spec/controllers/explore/snippets_controller_spec.rb +++ b/spec/controllers/explore/snippets_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Explore::SnippetsController do +RSpec.describe Explore::SnippetsController do describe 'GET #index' do let!(:project_snippet) { create_list(:project_snippet, 3, :public) } let!(:personal_snippet) { create_list(:personal_snippet, 3, :public) } diff --git a/spec/controllers/google_api/authorizations_controller_spec.rb b/spec/controllers/google_api/authorizations_controller_spec.rb index 9d0e0d92978..3dd2cc307d5 100644 --- a/spec/controllers/google_api/authorizations_controller_spec.rb +++ b/spec/controllers/google_api/authorizations_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe GoogleApi::AuthorizationsController do +RSpec.describe GoogleApi::AuthorizationsController do describe 'GET|POST #callback' do let(:user) { create(:user) } let(:token) { 'token' } diff --git a/spec/controllers/graphql_controller_spec.rb b/spec/controllers/graphql_controller_spec.rb index 68150504fe3..c5643f96b7a 100644 --- a/spec/controllers/graphql_controller_spec.rb +++ b/spec/controllers/graphql_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe GraphqlController do +RSpec.describe GraphqlController do include GraphqlHelpers before do diff --git a/spec/controllers/groups/avatars_controller_spec.rb b/spec/controllers/groups/avatars_controller_spec.rb index 1229328000b..18b116831b2 100644 --- a/spec/controllers/groups/avatars_controller_spec.rb +++ b/spec/controllers/groups/avatars_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::AvatarsController do +RSpec.describe Groups::AvatarsController do include ExternalAuthorizationServiceHelpers let(:user) { create(:user) } diff --git a/spec/controllers/groups/boards_controller_spec.rb b/spec/controllers/groups/boards_controller_spec.rb index b556af0eedc..66595c27531 100644 --- a/spec/controllers/groups/boards_controller_spec.rb +++ b/spec/controllers/groups/boards_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::BoardsController do +RSpec.describe Groups::BoardsController do let(:group) { create(:group) } let(:user) { create(:user) } diff --git a/spec/controllers/groups/children_controller_spec.rb b/spec/controllers/groups/children_controller_spec.rb index a8921300e6b..e97fe50c468 100644 --- a/spec/controllers/groups/children_controller_spec.rb +++ b/spec/controllers/groups/children_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::ChildrenController do +RSpec.describe Groups::ChildrenController do include ExternalAuthorizationServiceHelpers let(:group) { create(:group, :public) } diff --git a/spec/controllers/groups/clusters/applications_controller_spec.rb b/spec/controllers/groups/clusters/applications_controller_spec.rb index bab9e64cfdb..c1d170edce3 100644 --- a/spec/controllers/groups/clusters/applications_controller_spec.rb +++ b/spec/controllers/groups/clusters/applications_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::Clusters::ApplicationsController do +RSpec.describe Groups::Clusters::ApplicationsController do include AccessMatchersForController def current_application diff --git a/spec/controllers/groups/clusters_controller_spec.rb b/spec/controllers/groups/clusters_controller_spec.rb index 57a6db54338..6765cf0990a 100644 --- a/spec/controllers/groups/clusters_controller_spec.rb +++ b/spec/controllers/groups/clusters_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::ClustersController do +RSpec.describe Groups::ClustersController do include AccessMatchersForController include GoogleApi::CloudPlatformHelpers diff --git a/spec/controllers/groups/group_links_controller_spec.rb b/spec/controllers/groups/group_links_controller_spec.rb index ca430414d17..07299382230 100644 --- a/spec/controllers/groups/group_links_controller_spec.rb +++ b/spec/controllers/groups/group_links_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::GroupLinksController do +RSpec.describe Groups::GroupLinksController do let(:shared_with_group) { create(:group, :private) } let(:shared_group) { create(:group, :private) } let(:user) { create(:user) } diff --git a/spec/controllers/groups/group_members_controller_spec.rb b/spec/controllers/groups/group_members_controller_spec.rb index f69d0602404..85f1b247ee9 100644 --- a/spec/controllers/groups/group_members_controller_spec.rb +++ b/spec/controllers/groups/group_members_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::GroupMembersController do +RSpec.describe Groups::GroupMembersController do include ExternalAuthorizationServiceHelpers let(:user) { create(:user) } diff --git a/spec/controllers/groups/labels_controller_spec.rb b/spec/controllers/groups/labels_controller_spec.rb index 90f91a4ff72..20ee19b01d1 100644 --- a/spec/controllers/groups/labels_controller_spec.rb +++ b/spec/controllers/groups/labels_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::LabelsController do +RSpec.describe Groups::LabelsController do let_it_be(:group) { create(:group) } let_it_be(:user) { create(:user) } let_it_be(:project) { create(:project, namespace: group) } diff --git a/spec/controllers/groups/milestones_controller_spec.rb b/spec/controllers/groups/milestones_controller_spec.rb index fa297fa2b5e..e47bb75af22 100644 --- a/spec/controllers/groups/milestones_controller_spec.rb +++ b/spec/controllers/groups/milestones_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::MilestonesController do +RSpec.describe Groups::MilestonesController do let(:group) { create(:group, :public) } let!(:project) { create(:project, :public, group: group) } let!(:project2) { create(:project, group: group) } diff --git a/spec/controllers/groups/registry/repositories_controller_spec.rb b/spec/controllers/groups/registry/repositories_controller_spec.rb index 94fb7bdfe87..ddac8fc5002 100644 --- a/spec/controllers/groups/registry/repositories_controller_spec.rb +++ b/spec/controllers/groups/registry/repositories_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::Registry::RepositoriesController do +RSpec.describe Groups::Registry::RepositoriesController do let_it_be(:user) { create(:user) } let_it_be(:guest) { create(:user) } let_it_be(:group, reload: true) { create(:group) } diff --git a/spec/controllers/groups/runners_controller_spec.rb b/spec/controllers/groups/runners_controller_spec.rb index bf556078eec..376cd569952 100644 --- a/spec/controllers/groups/runners_controller_spec.rb +++ b/spec/controllers/groups/runners_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::RunnersController do +RSpec.describe Groups::RunnersController do let(:user) { create(:user) } let(:group) { create(:group) } let(:runner) { create(:ci_runner, :group, groups: [group]) } diff --git a/spec/controllers/groups/settings/ci_cd_controller_spec.rb b/spec/controllers/groups/settings/ci_cd_controller_spec.rb index 45d62a7e6cf..55c19de4aa1 100644 --- a/spec/controllers/groups/settings/ci_cd_controller_spec.rb +++ b/spec/controllers/groups/settings/ci_cd_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::Settings::CiCdController do +RSpec.describe Groups::Settings::CiCdController do include ExternalAuthorizationServiceHelpers let(:group) { create(:group) } diff --git a/spec/controllers/groups/settings/integrations_controller_spec.rb b/spec/controllers/groups/settings/integrations_controller_spec.rb index 29c93c621bd..d079f3f077e 100644 --- a/spec/controllers/groups/settings/integrations_controller_spec.rb +++ b/spec/controllers/groups/settings/integrations_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::Settings::IntegrationsController do +RSpec.describe Groups::Settings::IntegrationsController do let_it_be(:project) { create(:project) } let(:user) { create(:user) } let(:group) { create(:group) } diff --git a/spec/controllers/groups/settings/repository_controller_spec.rb b/spec/controllers/groups/settings/repository_controller_spec.rb index 9523d404538..6d0caf6d655 100644 --- a/spec/controllers/groups/settings/repository_controller_spec.rb +++ b/spec/controllers/groups/settings/repository_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::Settings::RepositoryController do +RSpec.describe Groups::Settings::RepositoryController do include ExternalAuthorizationServiceHelpers let(:group) { create(:group) } diff --git a/spec/controllers/groups/shared_projects_controller_spec.rb b/spec/controllers/groups/shared_projects_controller_spec.rb index a31b5682ae0..dafce094b14 100644 --- a/spec/controllers/groups/shared_projects_controller_spec.rb +++ b/spec/controllers/groups/shared_projects_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::SharedProjectsController do +RSpec.describe Groups::SharedProjectsController do def get_shared_projects(params = {}) get :index, params: params.reverse_merge(format: :json, group_id: group.full_path) end diff --git a/spec/controllers/groups/uploads_controller_spec.rb b/spec/controllers/groups/uploads_controller_spec.rb index 8abebd04e8b..ea6a5ce8841 100644 --- a/spec/controllers/groups/uploads_controller_spec.rb +++ b/spec/controllers/groups/uploads_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::UploadsController do +RSpec.describe Groups::UploadsController do include WorkhorseHelpers let(:model) { create(:group, :public) } diff --git a/spec/controllers/groups/variables_controller_spec.rb b/spec/controllers/groups/variables_controller_spec.rb index d6c790ae7b8..e2a14165cb4 100644 --- a/spec/controllers/groups/variables_controller_spec.rb +++ b/spec/controllers/groups/variables_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Groups::VariablesController do +RSpec.describe Groups::VariablesController do include ExternalAuthorizationServiceHelpers let(:group) { create(:group) } diff --git a/spec/controllers/groups_controller_spec.rb b/spec/controllers/groups_controller_spec.rb index 82998f84802..6b84f3b7460 100644 --- a/spec/controllers/groups_controller_spec.rb +++ b/spec/controllers/groups_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe GroupsController do +RSpec.describe GroupsController do include ExternalAuthorizationServiceHelpers let(:user) { create(:user) } diff --git a/spec/controllers/health_check_controller_spec.rb b/spec/controllers/health_check_controller_spec.rb index d1de669ad43..32b72eec0d6 100644 --- a/spec/controllers/health_check_controller_spec.rb +++ b/spec/controllers/health_check_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe HealthCheckController, :request_store do +RSpec.describe HealthCheckController, :request_store do include StubENV let(:xml_response) { Hash.from_xml(response.body)['hash'] } diff --git a/spec/controllers/help_controller_spec.rb b/spec/controllers/help_controller_spec.rb index fafbe6bffe1..6c0b3efa53b 100644 --- a/spec/controllers/help_controller_spec.rb +++ b/spec/controllers/help_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe HelpController do +RSpec.describe HelpController do let(:user) { create(:user) } before do diff --git a/spec/controllers/ide_controller_spec.rb b/spec/controllers/ide_controller_spec.rb index 0462f9520d5..39d92846863 100644 --- a/spec/controllers/ide_controller_spec.rb +++ b/spec/controllers/ide_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe IdeController do +RSpec.describe IdeController do let(:user) { create(:user) } before do diff --git a/spec/controllers/import/bitbucket_controller_spec.rb b/spec/controllers/import/bitbucket_controller_spec.rb index d44edb63635..000a2ca3b8c 100644 --- a/spec/controllers/import/bitbucket_controller_spec.rb +++ b/spec/controllers/import/bitbucket_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Import::BitbucketController do +RSpec.describe Import::BitbucketController do include ImportSpecHelper let(:user) { create(:user) } diff --git a/spec/controllers/import/bitbucket_server_controller_spec.rb b/spec/controllers/import/bitbucket_server_controller_spec.rb index 3a347368884..cb70ea4b979 100644 --- a/spec/controllers/import/bitbucket_server_controller_spec.rb +++ b/spec/controllers/import/bitbucket_server_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Import::BitbucketServerController do +RSpec.describe Import::BitbucketServerController do let(:user) { create(:user) } let(:project_key) { 'test-project' } let(:repo_slug) { 'some-repo' } diff --git a/spec/controllers/import/fogbugz_controller_spec.rb b/spec/controllers/import/fogbugz_controller_spec.rb index c833fbfaea5..96a1b8c0594 100644 --- a/spec/controllers/import/fogbugz_controller_spec.rb +++ b/spec/controllers/import/fogbugz_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Import::FogbugzController do +RSpec.describe Import::FogbugzController do include ImportSpecHelper let(:user) { create(:user) } diff --git a/spec/controllers/import/gitea_controller_spec.rb b/spec/controllers/import/gitea_controller_spec.rb index 006b423ce5f..9001faef408 100644 --- a/spec/controllers/import/gitea_controller_spec.rb +++ b/spec/controllers/import/gitea_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Import::GiteaController do +RSpec.describe Import::GiteaController do include ImportSpecHelper let(:provider) { :gitea } diff --git a/spec/controllers/import/github_controller_spec.rb b/spec/controllers/import/github_controller_spec.rb index 40ea0bb3a44..a5a3dc463d3 100644 --- a/spec/controllers/import/github_controller_spec.rb +++ b/spec/controllers/import/github_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Import::GithubController do +RSpec.describe Import::GithubController do include ImportSpecHelper let(:provider) { :github } diff --git a/spec/controllers/import/gitlab_controller_spec.rb b/spec/controllers/import/gitlab_controller_spec.rb index 96a8eb99d5c..f4ec1cb1192 100644 --- a/spec/controllers/import/gitlab_controller_spec.rb +++ b/spec/controllers/import/gitlab_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Import::GitlabController do +RSpec.describe Import::GitlabController do include ImportSpecHelper let(:user) { create(:user) } diff --git a/spec/controllers/import/google_code_controller_spec.rb b/spec/controllers/import/google_code_controller_spec.rb index 3773f691ed0..0fda111c029 100644 --- a/spec/controllers/import/google_code_controller_spec.rb +++ b/spec/controllers/import/google_code_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Import::GoogleCodeController do +RSpec.describe Import::GoogleCodeController do include ImportSpecHelper let(:user) { create(:user) } diff --git a/spec/controllers/import/phabricator_controller_spec.rb b/spec/controllers/import/phabricator_controller_spec.rb index d29a06efbb5..9827a6d077c 100644 --- a/spec/controllers/import/phabricator_controller_spec.rb +++ b/spec/controllers/import/phabricator_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe Import::PhabricatorController do +RSpec.describe Import::PhabricatorController do let(:current_user) { create(:user) } before do diff --git a/spec/controllers/instance_statistics/cohorts_controller_spec.rb b/spec/controllers/instance_statistics/cohorts_controller_spec.rb index 596d3c7abe5..b92fcb2575c 100644 --- a/spec/controllers/instance_statistics/cohorts_controller_spec.rb +++ b/spec/controllers/instance_statistics/cohorts_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -describe InstanceStatistics::CohortsController do +RSpec.describe InstanceStatistics::CohortsController do let(:user) { create(:user) } before do diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index a8936be8118..a83ebdfc076 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -23,8 +23,38 @@ describe User do describe 'delegations' do it { is_expected.to delegate_method(:path).to(:namespace).with_prefix } + it { is_expected.to delegate_method(:notes_filter_for).to(:user_preference) } + it { is_expected.to delegate_method(:set_notes_filter).to(:user_preference) } + + it { is_expected.to delegate_method(:first_day_of_week).to(:user_preference) } + it { is_expected.to delegate_method(:first_day_of_week=).to(:user_preference).with_arguments(:args) } + + it { is_expected.to delegate_method(:timezone).to(:user_preference) } + it { is_expected.to delegate_method(:timezone=).to(:user_preference).with_arguments(:args) } + + it { is_expected.to delegate_method(:time_display_relative).to(:user_preference) } + it { is_expected.to delegate_method(:time_display_relative=).to(:user_preference).with_arguments(:args) } + + it { is_expected.to delegate_method(:time_format_in_24h).to(:user_preference) } + it { is_expected.to delegate_method(:time_format_in_24h=).to(:user_preference).with_arguments(:args) } + + it { is_expected.to delegate_method(:show_whitespace_in_diffs).to(:user_preference) } + it { is_expected.to delegate_method(:show_whitespace_in_diffs=).to(:user_preference).with_arguments(:args) } + it { is_expected.to delegate_method(:tab_width).to(:user_preference) } - it { is_expected.to delegate_method(:tab_width=).to(:user_preference).with_arguments(5) } + it { is_expected.to delegate_method(:tab_width=).to(:user_preference).with_arguments(:args) } + + it { is_expected.to delegate_method(:sourcegraph_enabled).to(:user_preference) } + it { is_expected.to delegate_method(:sourcegraph_enabled=).to(:user_preference).with_arguments(:args) } + + it { is_expected.to delegate_method(:setup_for_company).to(:user_preference) } + it { is_expected.to delegate_method(:setup_for_company=).to(:user_preference).with_arguments(:args) } + + it { is_expected.to delegate_method(:render_whitespace_in_code).to(:user_preference) } + it { is_expected.to delegate_method(:render_whitespace_in_code=).to(:user_preference).with_arguments(:args) } + + it { is_expected.to delegate_method(:job_title).to(:user_detail).allow_nil } + it { is_expected.to delegate_method(:job_title=).to(:user_detail).with_arguments(:args).allow_nil } end describe 'associations' do