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/code_reuse_helpers_spec.rb')
-rw-r--r--spec/rubocop/code_reuse_helpers_spec.rb75
1 files changed, 71 insertions, 4 deletions
diff --git a/spec/rubocop/code_reuse_helpers_spec.rb b/spec/rubocop/code_reuse_helpers_spec.rb
index 9337df368e3..695c152e3db 100644
--- a/spec/rubocop/code_reuse_helpers_spec.rb
+++ b/spec/rubocop/code_reuse_helpers_spec.rb
@@ -150,6 +150,31 @@ RSpec.describe RuboCop::CodeReuseHelpers do
end
end
+ describe '#in_graphql_types?' do
+ %w[
+ app/graphql/types
+ ee/app/graphql/ee/types
+ ee/app/graphql/types
+ ].each do |path|
+ it "returns true for a node in #{path}" do
+ node = build_and_parse_source('10', rails_root_join(path, 'foo.rb'))
+
+ expect(cop.in_graphql_types?(node)).to eq(true)
+ end
+ end
+
+ %w[
+ app/graphql/resolvers
+ app/foo
+ ].each do |path|
+ it "returns true for a node in #{path}" do
+ node = build_and_parse_source('10', rails_root_join(path, 'foo.rb'))
+
+ expect(cop.in_graphql_types?(node)).to eq(false)
+ end
+ end
+ end
+
describe '#in_api?' do
it 'returns true for a node in the API directory' do
node = build_and_parse_source('10', rails_root_join('lib', 'api', 'foo.rb'))
@@ -164,25 +189,67 @@ RSpec.describe RuboCop::CodeReuseHelpers do
end
end
- describe '#in_directory?' do
+ describe '#in_spec?' do
+ it 'returns true for a node in the spec directory' do
+ node = build_and_parse_source('10', rails_root_join('spec', 'foo.rb'))
+
+ expect(cop.in_spec?(node)).to eq(true)
+ end
+
+ it 'returns true for a node in the ee/spec directory' do
+ node = build_and_parse_source('10', rails_root_join('ee', 'spec', 'foo.rb'))
+
+ expect(cop.in_spec?(node)).to eq(true)
+ end
+
+ it 'returns false for a node outside the spec directory' do
+ node = build_and_parse_source('10', rails_root_join('lib', 'foo.rb'))
+
+ expect(cop.in_spec?(node)).to eq(false)
+ end
+ end
+
+ describe '#in_app_directory?' do
it 'returns true for a directory in the CE app/ directory' do
node = build_and_parse_source('10', rails_root_join('app', 'models', 'foo.rb'))
- expect(cop.in_directory?(node, 'models')).to eq(true)
+ expect(cop.in_app_directory?(node, 'models')).to eq(true)
end
it 'returns true for a directory in the EE app/ directory' do
node =
build_and_parse_source('10', rails_root_join('ee', 'app', 'models', 'foo.rb'))
- expect(cop.in_directory?(node, 'models')).to eq(true)
+ expect(cop.in_app_directory?(node, 'models')).to eq(true)
end
it 'returns false for a directory in the lib/ directory' do
node =
build_and_parse_source('10', rails_root_join('lib', 'models', 'foo.rb'))
- expect(cop.in_directory?(node, 'models')).to eq(false)
+ expect(cop.in_app_directory?(node, 'models')).to eq(false)
+ end
+ end
+
+ describe '#in_lib_directory?' do
+ it 'returns true for a directory in the CE lib/ directory' do
+ node = build_and_parse_source('10', rails_root_join('lib', 'models', 'foo.rb'))
+
+ expect(cop.in_lib_directory?(node, 'models')).to eq(true)
+ end
+
+ it 'returns true for a directory in the EE lib/ directory' do
+ node =
+ build_and_parse_source('10', rails_root_join('ee', 'lib', 'models', 'foo.rb'))
+
+ expect(cop.in_lib_directory?(node, 'models')).to eq(true)
+ end
+
+ it 'returns false for a directory in the app/ directory' do
+ node =
+ build_and_parse_source('10', rails_root_join('app', 'models', 'foo.rb'))
+
+ expect(cop.in_lib_directory?(node, 'models')).to eq(false)
end
end