Browse Source

Maintenance: Rubocop uses custom inflections

Mantas Masalskis 3 years ago
parent
commit
9c5a11f36e

+ 2 - 0
.rubocop/default.yml

@@ -6,6 +6,8 @@ require:
   - rubocop-performance
   - rubocop-performance
   - rubocop-rails
   - rubocop-rails
   - rubocop-rspec
   - rubocop-rspec
+  - rubocop-inflector
+  - ../config/initializers/inflections.rb
   - ./rubocop_zammad.rb
   - ./rubocop_zammad.rb
 
 
 inherit_from:
 inherit_from:

+ 1 - 0
Gemfile

@@ -198,6 +198,7 @@ group :development, :test do
   gem 'overcommit'
   gem 'overcommit'
   gem 'rubocop'
   gem 'rubocop'
   gem 'rubocop-faker'
   gem 'rubocop-faker'
+  gem 'rubocop-inflector'
   gem 'rubocop-performance'
   gem 'rubocop-performance'
   gem 'rubocop-rails'
   gem 'rubocop-rails'
   gem 'rubocop-rspec'
   gem 'rubocop-rspec'

+ 6 - 1
Gemfile.lock

@@ -512,6 +512,10 @@ GEM
     rubocop-faker (1.1.0)
     rubocop-faker (1.1.0)
       faker (>= 2.12.0)
       faker (>= 2.12.0)
       rubocop (>= 0.82.0)
       rubocop (>= 0.82.0)
+    rubocop-inflector (0.1.1)
+      activesupport
+      rubocop
+      rubocop-rspec
     rubocop-performance (1.11.5)
     rubocop-performance (1.11.5)
       rubocop (>= 1.7.0, < 2.0)
       rubocop (>= 1.7.0, < 2.0)
       rubocop-ast (>= 0.4.0)
       rubocop-ast (>= 0.4.0)
@@ -729,6 +733,7 @@ DEPENDENCIES
   rszr (= 0.5.2)
   rszr (= 0.5.2)
   rubocop
   rubocop
   rubocop-faker
   rubocop-faker
+  rubocop-inflector
   rubocop-performance
   rubocop-performance
   rubocop-rails
   rubocop-rails
   rubocop-rspec
   rubocop-rspec
@@ -762,4 +767,4 @@ RUBY VERSION
    ruby 2.7.4p191
    ruby 2.7.4p191
 
 
 BUNDLED WITH
 BUNDLED WITH
-   2.2.20
+   2.2.27

+ 1 - 1
config/initializers/inflections.rb

@@ -21,7 +21,7 @@ ActiveSupport::Inflector.inflections(:en) do |inflect|
 
 
   # Rails thinks the singularized version of knowledge_bases is knowledge_basis?!
   # Rails thinks the singularized version of knowledge_bases is knowledge_basis?!
   # see: KnowledgeBase.table_name.singularize
   # see: KnowledgeBase.table_name.singularize
-  inflect.singular(%r{(knowledge_base)s$}i, '\1')
+  inflect.irregular 'base', 'bases'
   inflect.acronym 'SMIME'
   inflect.acronym 'SMIME'
   inflect.acronym 'GitLab'
   inflect.acronym 'GitLab'
   inflect.acronym 'GitHub'
   inflect.acronym 'GitHub'

+ 1 - 1
db/migrate/20210923172256_issue_2619_kb_header_link_color.rb

@@ -4,7 +4,7 @@ class Issue2619KbHeaderLinkColor < ActiveRecord::Migration[6.0]
   def up
   def up
     return if !Setting.exists?(name: 'system_init_done')
     return if !Setting.exists?(name: 'system_init_done')
 
 
-    add_column :knowledge_bases, :color_header_link, :string, limit: 25, null: false, default: 'hsl(206,8%,50%)' # rubocop:disable Zammad/ExistsResetColumnInformation
+    add_column :knowledge_bases, :color_header_link, :string, limit: 25, null: false, default: 'hsl(206,8%,50%)'
     change_column_default :knowledge_bases, :color_header_link, nil
     change_column_default :knowledge_bases, :color_header_link, nil
     KnowledgeBase.reset_column_information
     KnowledgeBase.reset_column_information
   end
   end

+ 1 - 1
spec/integration/github_spec.rb

@@ -1,7 +1,7 @@
 # Copyright (C) 2012-2021 Zammad Foundation, http://zammad-foundation.org/
 # Copyright (C) 2012-2021 Zammad Foundation, http://zammad-foundation.org/
 
 
 require 'rails_helper'
 require 'rails_helper'
-RSpec.describe GitHub, type: :integration, required_envs: %w[GITHUB_ENDPOINT GITHUB_APITOKEN] do # rubocop:disable RSpec/FilePath
+RSpec.describe GitHub, type: :integration, required_envs: %w[GITHUB_ENDPOINT GITHUB_APITOKEN] do
 
 
   let(:instance) { described_class.new(ENV['GITHUB_ENDPOINT'], ENV['GITHUB_APITOKEN']) }
   let(:instance) { described_class.new(ENV['GITHUB_ENDPOINT'], ENV['GITHUB_APITOKEN']) }
   let(:issue_data) do
   let(:issue_data) do

+ 1 - 1
spec/integration/gitlab_spec.rb

@@ -1,7 +1,7 @@
 # Copyright (C) 2012-2021 Zammad Foundation, http://zammad-foundation.org/
 # Copyright (C) 2012-2021 Zammad Foundation, http://zammad-foundation.org/
 
 
 require 'rails_helper'
 require 'rails_helper'
-RSpec.describe GitLab, type: :integration, required_envs: %w[GITLAB_ENDPOINT GITLAB_APITOKEN] do # rubocop:disable RSpec/FilePath
+RSpec.describe GitLab, type: :integration, required_envs: %w[GITLAB_ENDPOINT GITLAB_APITOKEN] do
 
 
   let(:instance) { described_class.new(ENV['GITLAB_ENDPOINT'], ENV['GITLAB_APITOKEN']) }
   let(:instance) { described_class.new(ENV['GITLAB_ENDPOINT'], ENV['GITLAB_APITOKEN']) }
   let(:issue_data) do
   let(:issue_data) do