Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/rubocop/cop/usage_data/large_table_spec.rb')
-rw-r--r--spec/rubocop/cop/usage_data/large_table_spec.rb56
1 files changed, 24 insertions, 32 deletions
diff --git a/spec/rubocop/cop/usage_data/large_table_spec.rb b/spec/rubocop/cop/usage_data/large_table_spec.rb
index 638e8c67dc8..26bd4e61625 100644
--- a/spec/rubocop/cop/usage_data/large_table_spec.rb
+++ b/spec/rubocop/cop/usage_data/large_table_spec.rb
@@ -1,18 +1,15 @@
# frozen_string_literal: true
require 'fast_spec_helper'
-
require 'rubocop'
-require 'rubocop/rspec/support'
require_relative '../../../../rubocop/cop/usage_data/large_table'
RSpec.describe RuboCop::Cop::UsageData::LargeTable do
- include CopHelper
-
let(:large_tables) { %i[Rails Time] }
let(:count_methods) { %i[count distinct_count] }
let(:allowed_methods) { %i[minimum maximum] }
+ let(:msg) { 'Use one of the count, distinct_count methods for counting on' }
let(:config) do
RuboCop::Config.new('UsageData/LargeTable' => {
@@ -31,59 +28,54 @@ RSpec.describe RuboCop::Cop::UsageData::LargeTable do
context 'with large tables' do
context 'when calling Issue.count' do
- it 'register an offence' do
- inspect_source('Issue.count')
-
- expect(cop.offenses.size).to eq(1)
+ it 'registers an offense' do
+ expect_offense(<<~CODE)
+ Issue.count
+ ^^^^^^^^^^^ #{msg} Issue
+ CODE
end
end
context 'when calling Issue.active.count' do
- it 'register an offence' do
- inspect_source('Issue.active.count')
-
- expect(cop.offenses.size).to eq(1)
+ it 'registers an offense' do
+ expect_offense(<<~CODE)
+ Issue.active.count
+ ^^^^^^^^^^^^ #{msg} Issue
+ CODE
end
end
context 'when calling count(Issue)' do
- it 'does not register an offence' do
- inspect_source('count(Issue)')
-
- expect(cop.offenses).to be_empty
+ it 'does not register an offense' do
+ expect_no_offenses('count(Issue)')
end
end
context 'when calling count(Ci::Build.active)' do
- it 'does not register an offence' do
- inspect_source('count(Ci::Build.active)')
-
- expect(cop.offenses).to be_empty
+ it 'does not register an offense' do
+ expect_no_offenses('count(Ci::Build.active)')
end
end
context 'when calling Ci::Build.active.count' do
- it 'register an offence' do
- inspect_source('Ci::Build.active.count')
-
- expect(cop.offenses.size).to eq(1)
+ it 'registers an offense' do
+ expect_offense(<<~CODE)
+ Ci::Build.active.count
+ ^^^^^^^^^^^^^^^^ #{msg} Ci::Build
+ CODE
end
end
context 'when using allowed methods' do
- it 'does not register an offence' do
- inspect_source('Issue.minimum')
-
- expect(cop.offenses).to be_empty
+ it 'does not register an offense' do
+ expect_no_offenses('Issue.minimum')
end
end
end
context 'with non related class' do
- it 'does not register an offence' do
- inspect_source('Rails.count')
-
- expect(cop.offenses).to be_empty
+ it 'does not register an offense' do
+ expect_no_offenses('Rails.count')
end
end
end