diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-11-17 14:33:21 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-11-17 14:33:21 +0300 |
commit | 7021455bd1ed7b125c55eb1b33c5a01f2bc55ee0 (patch) | |
tree | 5bdc2229f5198d516781f8d24eace62fc7e589e9 /spec/rubocop/cop/gitlab/json_spec.rb | |
parent | 185b095e93520f96e9cfc31d9c3e69b498cdab7c (diff) |
Add latest changes from gitlab-org/gitlab@15-6-stable-eev15.6.0-rc42
Diffstat (limited to 'spec/rubocop/cop/gitlab/json_spec.rb')
-rw-r--r-- | spec/rubocop/cop/gitlab/json_spec.rb | 45 |
1 files changed, 41 insertions, 4 deletions
diff --git a/spec/rubocop/cop/gitlab/json_spec.rb b/spec/rubocop/cop/gitlab/json_spec.rb index e4ec107747d..70f63a78dd1 100644 --- a/spec/rubocop/cop/gitlab/json_spec.rb +++ b/spec/rubocop/cop/gitlab/json_spec.rb @@ -5,12 +5,41 @@ require_relative '../../../../rubocop/cop/gitlab/json' RSpec.describe RuboCop::Cop::Gitlab::Json do context 'when ::JSON is called' do - it 'registers an offense' do + it 'registers an offense and autocorrects' do expect_offense(<<~RUBY) class Foo def bar JSON.parse('{ "foo": "bar" }') - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Avoid calling `JSON` directly. [...] + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Prefer `Gitlab::Json` over calling `JSON` directly. [...] + end + end + RUBY + + expect_correction(<<~RUBY) + class Foo + def bar + Gitlab::Json.parse('{ "foo": "bar" }') + end + end + RUBY + end + end + + context 'when ::JSON is called in EE' do + it 'registers an offense and autocorrects' do + expect_offense(<<~RUBY, '/path/to/ee/foo.rb') + class Foo + def bar + JSON.parse('{ "foo": "bar" }') + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Prefer `Gitlab::Json` over calling `JSON` directly. [...] + end + end + RUBY + + expect_correction(<<~RUBY) + class Foo + def bar + ::Gitlab::Json.parse('{ "foo": "bar" }') end end RUBY @@ -18,12 +47,20 @@ RSpec.describe RuboCop::Cop::Gitlab::Json do end context 'when ActiveSupport::JSON is called' do - it 'registers an offense' do + it 'registers an offense and autocorrects' do expect_offense(<<~RUBY) class Foo def bar ActiveSupport::JSON.parse('{ "foo": "bar" }') - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Avoid calling `JSON` directly. [...] + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Prefer `Gitlab::Json` over calling `JSON` directly. [...] + end + end + RUBY + + expect_correction(<<~RUBY) + class Foo + def bar + Gitlab::Json.parse('{ "foo": "bar" }') end end RUBY |