From 2f345913eb7b71c8f3245a228d738f426cbcb3b0 Mon Sep 17 00:00:00 2001 From: Peter Leitzen <pleitzen@gitlab.com> Date: Fri, 12 Apr 2024 15:37:13 +0200 Subject: [PATCH] Resolve RuboCop TODOs for FactoryBot/CreateList --- .rubocop_todo/factory_bot/create_list.yml | 81 ------------------- ee/spec/lib/ee/gitlab/usage_data_spec.rb | 3 +- .../protected_environment_preloader_spec.rb | 2 +- ee/spec/models/protected_environment_spec.rb | 2 +- .../epics/epic_links/create_service_spec.rb | 2 +- .../clusters/agent_tokens_finder_spec.rb | 10 +-- spec/mailers/repository_check_mailer_spec.rb | 2 +- spec/models/concerns/issuable_spec.rb | 2 +- 8 files changed, 9 insertions(+), 95 deletions(-) delete mode 100644 .rubocop_todo/factory_bot/create_list.yml diff --git a/.rubocop_todo/factory_bot/create_list.yml b/.rubocop_todo/factory_bot/create_list.yml deleted file mode 100644 index 5d1f9e3e333cf..0000000000000 --- a/.rubocop_todo/factory_bot/create_list.yml +++ /dev/null @@ -1,81 +0,0 @@ ---- -# Cop supports --autocorrect. -FactoryBot/CreateList: - Exclude: - - 'ee/spec/controllers/ee/search_controller_spec.rb' - - 'ee/spec/controllers/projects/licenses_controller_spec.rb' - - 'ee/spec/factories/geo_nodes.rb' - - 'ee/spec/features/projects/environments/environments_spec.rb' - - 'ee/spec/features/projects/licenses/maintainer_views_policies_spec.rb' - - 'ee/spec/finders/security/findings_finder_spec.rb' - - 'ee/spec/finders/security/pipeline_vulnerabilities_finder_spec.rb' - - 'ee/spec/frontend/fixtures/dast_profiles.rb' - - 'ee/spec/frontend/fixtures/merge_requests.rb' - - 'ee/spec/graphql/types/pipeline_security_report_finding_type_spec.rb' - - 'ee/spec/helpers/ee/branches_helper_spec.rb' - - 'ee/spec/lib/ee/gitlab/background_migration/migrate_approver_to_approval_rules_spec.rb' - - 'ee/spec/lib/ee/gitlab/usage_data_spec.rb' - - 'ee/spec/lib/gitlab/ci/reports/security/vulnerability_reports_comparer_spec.rb' - - 'ee/spec/lib/gitlab/license_scanning/sbom_scanner_spec.rb' - - 'ee/spec/models/approval_project_rule_spec.rb' - - 'ee/spec/models/ci/build_spec.rb' - - 'ee/spec/models/ee/project_spec.rb' - - 'ee/spec/models/geo_node_spec.rb' - - 'ee/spec/models/label_note_spec.rb' - - 'ee/spec/models/merge_request_spec.rb' - - 'ee/spec/models/merge_requests/external_status_check_spec.rb' - - 'ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb' - - 'ee/spec/models/protected_environment_spec.rb' - - 'ee/spec/models/sca/license_compliance_spec.rb' - - 'ee/spec/models/visible_approvable_spec.rb' - - 'ee/spec/models/vulnerabilities/finding_spec.rb' - - 'ee/spec/presenters/merge_request_presenter_spec.rb' - - 'ee/spec/requests/api/search_spec.rb' - - 'ee/spec/requests/api/status_checks_spec.rb' - - 'ee/spec/requests/projects/pipelines_controller_spec.rb' - - 'ee/spec/serializers/license_compliance/collapsed_comparer_entity_spec.rb' - - 'ee/spec/serializers/license_compliance/comparer_entity_spec.rb' - - 'ee/spec/services/approval_rules/params_filtering_service_spec.rb' - - 'ee/spec/services/ci/compare_license_scanning_reports_service_spec.rb' - - 'ee/spec/services/ci/sync_reports_to_approval_rules_service_spec.rb' - - 'ee/spec/services/ee/issuable/bulk_update_service_spec.rb' - - 'ee/spec/services/epics/epic_links/create_service_spec.rb' - - 'ee/spec/services/geo/node_update_service_spec.rb' - - 'ee/spec/services/iterations/roll_over_issues_service_spec.rb' - - 'ee/spec/services/members/activate_service_spec.rb' - - 'ee/spec/services/sbom/ingestion/tasks/ingest_components_spec.rb' - - 'ee/spec/services/sbom/ingestion/tasks/ingest_sources_spec.rb' - - 'ee/spec/services/security/findings/dismiss_service_spec.rb' - - 'ee/spec/services/security/ingestion/ingest_report_slice_service_spec.rb' - - 'ee/spec/services/security/ingestion/mark_as_resolved_service_spec.rb' - - 'ee/spec/services/vulnerabilities/find_or_create_from_security_finding_service_spec.rb' - - 'ee/spec/support/shared_examples/requests/api/graphql/issue_list_shared_examples.rb' - - 'spec/controllers/groups/children_controller_spec.rb' - - 'spec/features/groups/milestone_spec.rb' - - 'spec/features/projects/environments/environments_spec.rb' - - 'spec/finders/clusters/agent_tokens_finder_spec.rb' - - 'spec/graphql/resolvers/design_management/design_resolver_spec.rb' - - 'spec/helpers/branches_helper_spec.rb' - - 'spec/helpers/groups/group_members_helper_spec.rb' - - 'spec/lib/atlassian/jira_connect/serializers/repository_entity_spec.rb' - - 'spec/lib/gitlab/ci/reports/security/report_spec.rb' - - 'spec/lib/gitlab/usage_data_spec.rb' - - 'spec/mailers/repository_check_mailer_spec.rb' - - 'spec/models/ci/group_spec.rb' - - 'spec/models/concerns/issuable_spec.rb' - - 'spec/models/deploy_key_spec.rb' - - 'spec/models/group_spec.rb' - - 'spec/models/label_note_spec.rb' - - 'spec/models/note_spec.rb' - - 'spec/models/work_items/widgets/assignees_spec.rb' - - 'spec/models/work_items/widgets/labels_spec.rb' - - 'spec/requests/api/graphql/project/pipeline_spec.rb' - - 'spec/requests/api/protected_branches_spec.rb' - - 'spec/requests/api/protected_tags_spec.rb' - - 'spec/services/clusters/management/validate_management_project_permissions_service_spec.rb' - - 'spec/services/issuable/bulk_update_service_spec.rb' - - 'spec/services/issues/resolve_discussions_spec.rb' - - 'spec/services/merge_requests/assign_issues_service_spec.rb' - - 'spec/services/projects/fork_service_spec.rb' - - 'spec/support/shared_examples/models/concerns/bulk_users_by_email_load_shared_examples.rb' - - 'spec/support/shared_examples/requests/api/graphql/issue_list_shared_examples.rb' diff --git a/ee/spec/lib/ee/gitlab/usage_data_spec.rb b/ee/spec/lib/ee/gitlab/usage_data_spec.rb index ebe9230c6fd09..dcafc15c92d9d 100644 --- a/ee/spec/lib/ee/gitlab/usage_data_spec.rb +++ b/ee/spec/lib/ee/gitlab/usage_data_spec.rb @@ -17,7 +17,8 @@ # using Array.new to create a different creator User for each of the projects let_it_be(:projects) do Array.new(3) do - create(:project, :repository, group: group, creator: create(:user, group_view: :security_dashboard)) + creator = create(:user, group_view: :security_dashboard) + create(:project, :repository, group: group, creator: creator) end end diff --git a/ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb b/ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb index c04e3aa469208..f0f3c683788a9 100644 --- a/ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb +++ b/ee/spec/models/preloaders/environments/protected_environment_preloader_spec.rb @@ -9,7 +9,7 @@ describe '#initialize' do it 'raises an error if environments belong to more than one project' do - expect { described_class.new([create(:environment), create(:environment)]) } + expect { described_class.new(create_list(:environment, 2)) } .to raise_error('This preloader supports only environments in the same project') end end diff --git a/ee/spec/models/protected_environment_spec.rb b/ee/spec/models/protected_environment_spec.rb index 77965519b0f53..bbeeb82fe0e98 100644 --- a/ee/spec/models/protected_environment_spec.rb +++ b/ee/spec/models/protected_environment_spec.rb @@ -363,7 +363,7 @@ it { is_expected.to match_array([protected_environment]) } it 'raises an error if environments belong to more than one project' do - expect { described_class.for_environments([create(:environment), create(:environment)]) } + expect { described_class.for_environments(create_list(:environment, 2)) } .to raise_error(ArgumentError, 'Environments must be in the same project') end diff --git a/ee/spec/services/epics/epic_links/create_service_spec.rb b/ee/spec/services/epics/epic_links/create_service_spec.rb index 98d210538a7c9..bc818ae2dac16 100644 --- a/ee/spec/services/epics/epic_links/create_service_spec.rb +++ b/ee/spec/services/epics/epic_links/create_service_spec.rb @@ -430,7 +430,7 @@ def add_epic(references) it 'avoids un-necessary database queries' do control = ActiveRecord::QueryRecorder.new { add_epic([valid_reference]) } - new_epics = [create(:epic, group: group), create(:epic, group: group)] + new_epics = Array.new(2) { create(:epic, group: group) } # threshold is 8 because # 1. we need to check hierarchy for each child epic (3 queries) diff --git a/spec/finders/clusters/agent_tokens_finder_spec.rb b/spec/finders/clusters/agent_tokens_finder_spec.rb index 654abfd381503..fdee51e7aff1d 100644 --- a/spec/finders/clusters/agent_tokens_finder_spec.rb +++ b/spec/finders/clusters/agent_tokens_finder_spec.rb @@ -9,17 +9,11 @@ let(:user) { create(:user, maintainer_of: project) } let_it_be(:active_agent_tokens) do - [ - create(:cluster_agent_token, agent: agent), - create(:cluster_agent_token, agent: agent) - ] + Array.new(2) { create(:cluster_agent_token, agent: agent) } end let_it_be(:revoked_agent_tokens) do - [ - create(:cluster_agent_token, :revoked, agent: agent), - create(:cluster_agent_token, :revoked, agent: agent) - ] + create_list(:cluster_agent_token, 2, :revoked, agent: agent) end before_all do diff --git a/spec/mailers/repository_check_mailer_spec.rb b/spec/mailers/repository_check_mailer_spec.rb index 5edd9c2d023ad..d6cd686ad4059 100644 --- a/spec/mailers/repository_check_mailer_spec.rb +++ b/spec/mailers/repository_check_mailer_spec.rb @@ -15,7 +15,7 @@ end it 'email with I18n.default_locale' do - admins = [create(:admin, preferred_language: :zh_CN), create(:admin, preferred_language: :zh_CN)] + admins = create_list(:admin, 2, preferred_language: :zh_CN) mail = described_class.notify(3) diff --git a/spec/models/concerns/issuable_spec.rb b/spec/models/concerns/issuable_spec.rb index 4b4d91ad6f6bc..fb1f46a6c0e18 100644 --- a/spec/models/concerns/issuable_spec.rb +++ b/spec/models/concerns/issuable_spec.rb @@ -162,7 +162,7 @@ describe '.any_label' do let_it_be(:issue_with_label) { create(:labeled_issue, labels: [create(:label)]) } - let_it_be(:issue_with_multiple_labels) { create(:labeled_issue, labels: [create(:label), create(:label)]) } + let_it_be(:issue_with_multiple_labels) { create(:labeled_issue, labels: create_list(:label, 2)) } let_it_be(:issue_without_label) { create(:issue) } it 'returns an issuable with at least one label' do -- GitLab