~cytrogen/masto-fe

a0c9f2447e8da95dca629082af32c2e2616b7715 — Matt Jankowski 2 years ago 97385f2
Fix Performance/MethodObjectAsBlock cop (#24798)

3 files changed, 7 insertions(+), 12 deletions(-)

M .rubocop_todo.yml
M app/models/account_suggestions/source.rb
M spec/models/export_spec.rb
M .rubocop_todo.yml => .rubocop_todo.yml +0 -5
@@ 322,11 322,6 @@ Performance/MapCompact:
    - 'db/migrate/20200407202420_migrate_unavailable_inboxes.rb'
    - 'spec/presenters/status_relationships_presenter_spec.rb'

Performance/MethodObjectAsBlock:
  Exclude:
    - 'app/models/account_suggestions/source.rb'
    - 'spec/models/export_spec.rb'

# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: MaxKeyValuePairs.
Performance/RedundantMerge:

M app/models/account_suggestions/source.rb => app/models/account_suggestions/source.rb +1 -1
@@ 18,7 18,7 @@ class AccountSuggestions::Source
  def as_ordered_suggestions(scope, ordered_list)
    return [] if ordered_list.empty?

    map = scope.index_by(&method(:to_ordered_list_key))
    map = scope.index_by { |account| to_ordered_list_key(account) }

    ordered_list.map { |ordered_list_key| map[ordered_list_key] }.compact.map do |account|
      AccountSuggestions::Suggestion.new(

M spec/models/export_spec.rb => spec/models/export_spec.rb +6 -6
@@ 10,7 10,7 @@ describe Export do

  describe 'to_csv' do
    it 'returns a csv of the blocked accounts' do
      target_accounts.each(&account.method(:block!))
      target_accounts.each { |target_account| account.block!(target_account) }

      export = Export.new(account).to_blocked_accounts_csv
      results = export.strip.split


@@ 20,7 20,7 @@ describe Export do
    end

    it 'returns a csv of the muted accounts' do
      target_accounts.each(&account.method(:mute!))
      target_accounts.each { |target_account| account.mute!(target_account) }

      export = Export.new(account).to_muted_accounts_csv
      results = export.strip.split("\n")


@@ 31,7 31,7 @@ describe Export do
    end

    it 'returns a csv of the following accounts' do
      target_accounts.each(&account.method(:follow!))
      target_accounts.each { |target_account| account.follow!(target_account) }

      export = Export.new(account).to_following_accounts_csv
      results = export.strip.split("\n")


@@ 51,17 51,17 @@ describe Export do

  describe 'total_follows' do
    it 'returns the total number of the followed accounts' do
      target_accounts.each(&account.method(:follow!))
      target_accounts.each { |target_account| account.follow!(target_account) }
      expect(Export.new(account.reload).total_follows).to eq 2
    end

    it 'returns the total number of the blocked accounts' do
      target_accounts.each(&account.method(:block!))
      target_accounts.each { |target_account| account.block!(target_account) }
      expect(Export.new(account.reload).total_blocks).to eq 2
    end

    it 'returns the total number of the muted accounts' do
      target_accounts.each(&account.method(:mute!))
      target_accounts.each { |target_account| account.mute!(target_account) }
      expect(Export.new(account.reload).total_mutes).to eq 2
    end
  end