diff --git a/.rubocop_todo/style/combinable_loops.yml b/.rubocop_todo/style/combinable_loops.yml deleted file mode 100644 index 3f4430f18ba1a90dfec62f543f61b151fd94bce7..0000000000000000000000000000000000000000 --- a/.rubocop_todo/style/combinable_loops.yml +++ /dev/null @@ -1,10 +0,0 @@ ---- -# Cop supports --autocorrect. -Style/CombinableLoops: - Exclude: - - 'ee/db/fixtures/development/30_customizable_cycle_analytics.rb' - - 'ee/lib/gitlab/audit/events/preloader.rb' - - 'ee/spec/finders/snippets_finder_spec.rb' - - 'spec/features/merge_request/user_suggests_changes_on_diff_spec.rb' - - 'spec/finders/packages/group_packages_finder_spec.rb' - - 'spec/requests/api/members_spec.rb' diff --git a/ee/db/fixtures/development/30_customizable_cycle_analytics.rb b/ee/db/fixtures/development/30_customizable_cycle_analytics.rb index 294ec4528dd2955a8089f19081e8edd4ec09a781..227b338b986a1efe803764734873007742e42b2e 100644 --- a/ee/db/fixtures/development/30_customizable_cycle_analytics.rb +++ b/ee/db/fixtures/development/30_customizable_cycle_analytics.rb @@ -174,9 +174,7 @@ def seed_merge_request_based_stages! merge_requests.pop(5).each do |mr| travel_to(get_date_after(mr.created_at)) MergeRequests::CloseService.new(project: project, current_user: user).execute(mr) - end - merge_requests.pop(5).each do |mr| travel_to(get_date_after(mr.created_at)) mr.metrics.update!(merged_at: Time.now) MergeRequestsClosingIssues.create!(issue: project.issues.sample, merge_request: mr) diff --git a/ee/lib/gitlab/audit/events/preloader.rb b/ee/lib/gitlab/audit/events/preloader.rb index a8b45eeebad50b1e54af13674727ba7583001ddf..284ec25cffde85951b5e685d516a44123275578c 100644 --- a/ee/lib/gitlab/audit/events/preloader.rb +++ b/ee/lib/gitlab/audit/events/preloader.rb @@ -19,6 +19,7 @@ def initialize(audit_events) def find_each(&block) @audit_events.each_batch(column: :created_at) do |relation| + # rubocop:disable Style/CombinableLoops -- BatchLoader must preload all associated records before yielding (https://gitlab.com/gitlab-org/gitlab/-/merge_requests/169977#note_2175391750) relation.each do |audit_event| audit_event.lazy_author audit_event.entity @@ -27,6 +28,7 @@ def find_each(&block) relation.each do |audit_event| yield(audit_event) end + # rubocop:enable Style/CombinableLoops BatchLoader::Executor.clear_current end diff --git a/ee/spec/finders/snippets_finder_spec.rb b/ee/spec/finders/snippets_finder_spec.rb index cf2886db1efd066baae4ab3754664fd216971842..185c32a5f00860d81dd6dd94d1a6ae752668b172 100644 --- a/ee/spec/finders/snippets_finder_spec.rb +++ b/ee/spec/finders/snippets_finder_spec.rb @@ -69,9 +69,7 @@ private_project_snippet ) end - end - [:guest, :reporter, :developer, :maintainer].each do |role| it 'returns all the authorized project snippets and authored personal ones' do project.add_role(user, role) other_project.add_role(user, role) diff --git a/spec/features/merge_request/user_suggests_changes_on_diff_spec.rb b/spec/features/merge_request/user_suggests_changes_on_diff_spec.rb index 6152d9f82598266c4b0f35b8bc4b6b3bead65b9f..24ef8fbc8d77de304acc048e9c1ff2b49b2b3223 100644 --- a/spec/features/merge_request/user_suggests_changes_on_diff_spec.rb +++ b/spec/features/merge_request/user_suggests_changes_on_diff_spec.rb @@ -135,6 +135,7 @@ def hash(path) end it 'can add and remove suggestions from a batch' do + # rubocop:disable Style/CombinableLoops -- "Add suggestion to batch" only exists with more than one suggestion files.each_with_index do |file, index| page.within("[id='#{file[:hash]}']") do find('.js-diff-more-actions').click @@ -166,6 +167,7 @@ def hash(path) expect(page).to have_content("Apply #{index + 1} suggestions") end end + # rubocop:enable Style/CombinableLoops end page.within("[id='#{files[0][:hash]}']") do diff --git a/spec/finders/packages/group_packages_finder_spec.rb b/spec/finders/packages/group_packages_finder_spec.rb index c83ccd9f1071a22850758432f3cae50c25a940b0..143fef91e5df3870530d8a5174c0af9c9b4b1043 100644 --- a/spec/finders/packages/group_packages_finder_spec.rb +++ b/spec/finders/packages/group_packages_finder_spec.rb @@ -252,12 +252,10 @@ def self.package_types end context 'group has package of all types' do - package_types.each do |pt| # rubocop:disable RSpec/UselessDynamicDefinition -- `pt` used in `let` - let_it_be("package_#{pt}") { create("#{pt}_package", project: project) } - end + package_types.each do |type| # rubocop:disable RSpec/UselessDynamicDefinition -- `type` used in `let` + let_it_be("package_#{type}") { create("#{type}_package", project: project) } - package_types.each do |package_type| - it_behaves_like 'with package type', package_type + it_behaves_like 'with package type', type end end diff --git a/spec/requests/api/members_spec.rb b/spec/requests/api/members_spec.rb index b8025db511494adabd5bc82a4b735fe57bcb02b1..48d8bd904e4e455cfdefefb74764f057827ff175 100644 --- a/spec/requests/api/members_spec.rb +++ b/spec/requests/api/members_spec.rb @@ -1045,6 +1045,7 @@ def request end end + # rubocop:disable Style/CombinableLoops -- new projects and groups must not be created for specs to pass [false, true].each do |all| it_behaves_like 'GET /:source_type/:id/members/(all)', 'project', all do let(:source) { project } @@ -1064,6 +1065,7 @@ def request let(:source) { all ? create(:group, parent: group) : group } end end + # rubocop:enable Style/CombinableLoops describe 'POST /projects/:id/members' do context 'adding owner to project' do