diff --git a/.rubocop.yml b/.rubocop.yml index 1b4cc48e..89afa94d 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -94,6 +94,12 @@ RSpec/MultipleExpectations: RSpec/NamedSubject: Enabled: false +RSpec/VerifiedDoubles: + Exclude: + - spec/policies/admin/application_policy_spec.rb + - spec/policies/admin/page_policy_spec.rb + - spec/policies/application_policy_spec.rb + Style/ArrayCoercion: Enabled: true diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index d1d5243e..d801ad2f 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -18,13 +18,6 @@ RSpec/AnyInstance: Exclude: - 'spec/requests/api/v1/users/show_spec.rb' -# Offense count: 4 -# This cop supports unsafe autocorrection (--autocorrect-all). -# Configuration parameters: . -# SupportedStyles: constant, string -RSpec/VerifiedDoubleReference: - EnforcedStyle: string - # Offense count: 2 # Configuration parameters: Include. # Include: app/controllers/**/*.rb, app/mailers/**/*.rb diff --git a/Gemfile b/Gemfile index 81cdc732..21f23d53 100644 --- a/Gemfile +++ b/Gemfile @@ -67,7 +67,7 @@ group :development do gem 'rubocop-performance', '~> 1.21', require: false gem 'rubocop-rails', '~> 2.26', require: false gem 'rubocop-rake', '~> 0.6.0', require: false - gem 'rubocop-rspec', '~> 3.0', require: false + gem 'rubocop-rspec', '~> 3.1', require: false gem 'rubocop-rspec_rails', '~> 2.30.0', require: false end diff --git a/Gemfile.lock b/Gemfile.lock index f171347e..4a623649 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -537,7 +537,7 @@ GEM rubocop-ast (>= 1.31.1, < 2.0) rubocop-rake (0.6.0) rubocop (~> 1.0) - rubocop-rspec (3.0.4) + rubocop-rspec (3.1.0) rubocop (~> 1.61) rubocop-rspec_rails (2.30.0) rubocop (~> 1.61) @@ -585,7 +585,7 @@ GEM timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.5.0) + unicode-display_width (2.6.0) uri (0.13.0) useragent (0.16.10) warden (1.2.9) @@ -668,7 +668,7 @@ DEPENDENCIES rubocop-performance (~> 1.21) rubocop-rails (~> 2.26) rubocop-rake (~> 0.6.0) - rubocop-rspec (~> 3.0) + rubocop-rspec (~> 3.1) rubocop-rspec_rails (~> 2.30.0) selenium-webdriver (~> 4.25.0) sendgrid (~> 1.2.4) diff --git a/spec/policies/admin/application_policy_spec.rb b/spec/policies/admin/application_policy_spec.rb index 5c50b9b6..922da5a6 100644 --- a/spec/policies/admin/application_policy_spec.rb +++ b/spec/policies/admin/application_policy_spec.rb @@ -25,7 +25,7 @@ subject { Admin::ApplicationPolicy::Scope.new(admin, mock_model).resolve } let(:admin) { create(:admin_user) } - let(:mock_model) { instance_double('MockModel', all: true) } + let(:mock_model) { double('MockModel', all: true) } it 'shows all models' do expect(subject).to be(true) diff --git a/spec/policies/admin/page_policy_spec.rb b/spec/policies/admin/page_policy_spec.rb index 26bc3b72..efe3aa92 100644 --- a/spec/policies/admin/page_policy_spec.rb +++ b/spec/policies/admin/page_policy_spec.rb @@ -5,14 +5,14 @@ permissions :show? do let(:user) { create(:user) } - let(:record) { instance_double('DashboardRecord', name: 'Dashboard') } + let(:record) { double('MockModel', name: 'Dashboard') } it 'allow access if record.name is Dashboard' do expect(subject).to permit(user, record) end context 'when the record name is distinct to Dashboard' do - let(:record) { instance_double('NoneDashboardRecord', name: 'not-valid') } + let(:record) { double('MockModel', name: 'not-valid') } it 'denies access' do expect(subject).not_to permit(user, record) diff --git a/spec/policies/application_policy_spec.rb b/spec/policies/application_policy_spec.rb index f4dfcd42..b183e00c 100644 --- a/spec/policies/application_policy_spec.rb +++ b/spec/policies/application_policy_spec.rb @@ -17,7 +17,7 @@ subject { ApplicationPolicy::Scope.new(user, mock_model).resolve } let(:user) { create(:user) } - let(:mock_model) { instance_double('MockModel', all: true) } + let(:mock_model) { double('MockModel', all: true) } it 'shows all models' do expect(subject).to be(true)