Skip to content

Commit

Permalink
chore: Add more rubocop goodies (#445)
Browse files Browse the repository at this point in the history
- Add github action step to run rubocop
- Add Layout/StringLiterals cop
- Add Layout/IndentationWidth cop
- Add Lint/Syntax cop

Add rubocop Github action step

Enable Layout/IndentationWidth

To keep the indentation consistency.
  • Loading branch information
bangn authored Jun 6, 2021
1 parent 85540c8 commit 886253f
Show file tree
Hide file tree
Showing 784 changed files with 4,727 additions and 4,704 deletions.
14 changes: 14 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,17 @@ jobs:
steps:
- uses: actions/checkout@v2
- run: script/test/run-rake-on-docker-compose-mysql.sh
rubocop:
if: "!contains(github.event.head_commit.message, '[ci-skip]')"
runs-on: "ubuntu-latest"
strategy:
fail-fast: false
matrix:
ruby_version: ["2.7"]
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
- run: "gem install bundler && bundle install"
- run: "bundle exec rubocop"
11 changes: 11 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,12 @@ Lint/AmbiguousRegexpLiteral:
a method invocation without parenthesis.
Enabled: true

Layout/IndentationWidth:
Enabled: true

Lint/Syntax:
Enabled: true

Lint/AssignmentInCondition:
Description: "Don't use assignment in conditions."
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#safe-assignment-in-condition'
Expand Down Expand Up @@ -281,6 +287,11 @@ Style/Sample:
Reference: 'https://github.com/JuanitoFatas/fast-ruby#arrayshufflefirst-vs-arraysample-code'
Enabled: true

Style/StringLiterals:
Description: Checks if uses of quotes match the configured preference.
Enabled: true
EnforcedStyle: double_quotes

Performance/Size:
Description: >-
Use `size` instead of `count` for counting
Expand Down
58 changes: 29 additions & 29 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,44 +1,44 @@
source 'https://rubygems.org'
source "https://rubygems.org"

gemspec

gem 'rake', '~>12.3.3'
gem 'sqlite3', '~>1.3'
gem 'conventional-changelog', '~>1.3'
gem 'bump', '~> 0.5'
gem "rake", "~>12.3.3"
gem "sqlite3", "~>1.3"
gem "conventional-changelog", "~>1.3"
gem "bump", "~> 0.5"

group :development do
gem 'pry-byebug'
gem 'rubocop', '~>1.1'
gem 'rubocop-performance'
gem 'sequel-annotate', '~>1.3'
gem "pry-byebug"
gem "rubocop", "~>1.1"
gem "rubocop-performance"
gem "sequel-annotate", "~>1.3"
end

group :test do
gem 'simplecov', :require => false
gem 'pact', '~>1.14'
gem 'rspec-pact-matchers', '~>0.1'
gem 'bundler-audit', '~>0.4'
gem 'fakefs', '~>0.4'
gem 'webmock', '~>3.9'
gem 'rspec', '~>3.0'
gem 'rspec-its', '~>1.2'
gem 'database_cleaner', '~>1.8', '>= 1.8.1'
gem 'timecop', '~> 0.9'
gem 'faraday', '~>0.15'
gem 'faraday_middleware', '~> 0.14'
gem 'docker-api', '~>1.34'
gem 'approvals', '>=0.0.24', '<1.0.0'
gem "simplecov", :require => false
gem "pact", "~>1.14"
gem "rspec-pact-matchers", "~>0.1"
gem "bundler-audit", "~>0.4"
gem "fakefs", "~>0.4"
gem "webmock", "~>3.9"
gem "rspec", "~>3.0"
gem "rspec-its", "~>1.2"
gem "database_cleaner", "~>1.8", ">= 1.8.1"
gem "timecop", "~> 0.9"
gem "faraday", "~>0.15"
gem "faraday_middleware", "~> 0.14"
gem "docker-api", "~>1.34"
gem "approvals", ">=0.0.24", "<1.0.0"
end

if ENV['INSTALL_MYSQL'] == "true"
gem 'mysql2', '~>0.5'
if ENV["INSTALL_MYSQL"] == "true"
gem "mysql2", "~>0.5"
end

if ENV['INSTALL_PG'] == 'true'
gem 'pg', '~>1.2'
if ENV["INSTALL_PG"] == "true"
gem "pg", "~>1.2"
end

if ENV['X_PACT_DEVELOPMENT'] == 'true'
gem 'pact-support', path: '../pact-support'
if ENV["X_PACT_DEVELOPMENT"] == "true"
gem "pact-support", path: "../pact-support"
end
12 changes: 6 additions & 6 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# encoding: utf-8
require "bundler/gem_tasks"

require 'rubygems'
require 'bundler'
require "rubygems"
require "bundler"
begin
Bundler.setup(:default, :development)
rescue Bundler::BundlerError => e
Expand All @@ -11,11 +11,11 @@ rescue Bundler::BundlerError => e
exit e.status_code
end

FileList['lib/tasks/**/*.rake'].each { |task| load "#{Dir.pwd}/#{task}" }
FileList['tasks/**/*.rake'].each { |task| load "#{Dir.pwd}/#{task}" }
FileList["lib/tasks/**/*.rake"].each { |task| load "#{Dir.pwd}/#{task}" }
FileList["tasks/**/*.rake"].each { |task| load "#{Dir.pwd}/#{task}" }

task :default => ['db:prepare:test', :boot, :spec, 'pact:verify', 'bundle:audit']
task :default => ["db:prepare:test", :boot, :spec, "pact:verify", "bundle:audit"]

task :boot do
require File.join(File.dirname(__FILE__), 'config/boot')
require File.join(File.dirname(__FILE__), "config/boot")
end
22 changes: 11 additions & 11 deletions config.ru
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
require 'fileutils'
require 'logger'
require 'sequel'
require 'pact_broker'
require "fileutils"
require "logger"
require "sequel"
require "pact_broker"

FileUtils.mkdir_p('tmp') unless ENV['PACT_BROKER_DATABASE_URL']
FileUtils.mkdir_p("tmp") unless ENV["PACT_BROKER_DATABASE_URL"]

DATABASE_URL = ENV['PACT_BROKER_DATABASE_URL'] || 'sqlite://tmp/pact_broker_database.sqlite3'
DB_OPTIONS = { encoding: 'utf8', sql_log_level: :debug }
DATABASE_URL = ENV["PACT_BROKER_DATABASE_URL"] || "sqlite://tmp/pact_broker_database.sqlite3"
DB_OPTIONS = { encoding: "utf8", sql_log_level: :debug }

ENV['TZ'] = 'Australia/Melbourne'
ENV["TZ"] = "Australia/Melbourne"

SemanticLogger.add_appender(io: $stderr)
SemanticLogger.default_level = :info
Expand All @@ -24,10 +24,10 @@ app = PactBroker::App.new do | config |

config.webhook_retry_schedule = [3, 3, 3]
config.webhook_host_whitelist = [/.*/, "10.0.0.0/8"]
config.webhook_scheme_whitelist = ['http', 'https']
config.webhook_http_method_whitelist = ['GET', 'POST']
config.webhook_scheme_whitelist = ["http", "https"]
config.webhook_http_method_whitelist = ["GET", "POST"]
config.webhook_http_code_success = [200, 201, 202, 203, 204, 205, 206]
config.base_url = ENV['PACT_BROKER_BASE_URL']
config.base_url = ENV["PACT_BROKER_BASE_URL"]

database_logger = PactBroker::DB::LogQuietener.new(config.logger)
config.database_connection = Sequel.connect(DATABASE_URL, DB_OPTIONS.merge(logger: database_logger))
Expand Down
12 changes: 6 additions & 6 deletions config/boot.rb
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
# Remember everything in this file will be loaded by Rake, don't make it too heavy...

$LOAD_PATH << File.expand_path(File.dirname(__FILE__) + '/../lib')
$LOAD_PATH << File.expand_path(File.dirname(__FILE__) + "/../lib")

# Default environment
# Be aware that rake loads this boot file, so any attempt to change RACK_ENV by
# setting ENV['RACK_ENV'] after that (eg. in spec_helper) will not work.
RACK_ENV = ENV['RACK_ENV'] || 'development' unless defined? RACK_ENV
RACK_ENV = ENV["RACK_ENV"] || "development" unless defined? RACK_ENV

# Set up gems listed in the Gemfile.
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
if File.exist?(ENV['BUNDLE_GEMFILE'])
require 'bundler/setup'
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile", __FILE__)
if File.exist?(ENV["BUNDLE_GEMFILE"])
require "bundler/setup"
Bundler.require
end

if defined?(I18n)
I18n.enforce_available_locales = false
end

require 'pact_broker'
require "pact_broker"
2 changes: 1 addition & 1 deletion db/migrations/000001_create_pacticipant_table.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Sequel.migration do
change do
create_table(:pacticipants, charset: 'utf8') do
create_table(:pacticipants, charset: "utf8") do
primary_key :id
String :name, :unique => true
String :repository_url
Expand Down
2 changes: 1 addition & 1 deletion db/migrations/000002_create_versions_table.rb
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Sequel.migration do

change do
create_table(:versions, charset: 'utf8') do
create_table(:versions, charset: "utf8") do
primary_key :id
String :number
String :repository_ref
Expand Down
2 changes: 1 addition & 1 deletion db/migrations/000003_create_pacts_table.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Sequel.migration do
change do
create_table(:pacts, charset: 'utf8') do
create_table(:pacts, charset: "utf8") do
primary_key :id
String :json_content, :text=>true
foreign_key :version_id, :versions, null: false
Expand Down
2 changes: 1 addition & 1 deletion db/migrations/000004_create_tags_table.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Sequel.migration do
change do
create_table(:tags, charset: 'utf8') do
create_table(:tags, charset: "utf8") do
String :name
foreign_key :version_id, :versions
primary_key [:version_id, :name], name: :tags_pk
Expand Down
2 changes: 1 addition & 1 deletion db/migrations/000007_increase_json_content_length.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
require_relative 'migration_helper'
require_relative "migration_helper"

Sequel.migration do
change do
Expand Down
12 changes: 6 additions & 6 deletions db/migrations/000012_create_webhooks_table.rb
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
Sequel.migration do
change do
create_table(:webhooks, charset: 'utf8') do
create_table(:webhooks, charset: "utf8") do
primary_key :id
String :uuid, null: false, unique: true, unique_constraint_name: 'uq_webhook_uuid'
String :uuid, null: false, unique: true, unique_constraint_name: "uq_webhook_uuid"
String :method, null: false
String :url, null: false
String :body
Boolean :is_json_request_body
foreign_key :consumer_id, :pacticipants, null: false, foreign_key_constraint_name: 'fk_webhooks_consumer'
foreign_key :provider_id, :pacticipants, null: false, foreign_key_constraint_name: 'fk_webhooks_provider'
foreign_key :consumer_id, :pacticipants, null: false, foreign_key_constraint_name: "fk_webhooks_consumer"
foreign_key :provider_id, :pacticipants, null: false, foreign_key_constraint_name: "fk_webhooks_provider"
end

create_table(:webhook_headers, charset: 'utf8') do
create_table(:webhook_headers, charset: "utf8") do
String :name, null: false
String :value
foreign_key :webhook_id, :webhooks, null: false, foreign_key_constraint_name: 'fk_webhookheaders_webhooks'
foreign_key :webhook_id, :webhooks, null: false, foreign_key_constraint_name: "fk_webhookheaders_webhooks"
primary_key [:webhook_id, :name], :name=>:webhooks_headers_pk
end
end
Expand Down
8 changes: 4 additions & 4 deletions db/migrations/000015_create_pact_version_content.rb
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
require 'digest/sha1'
require_relative 'migration_helper'
require "digest/sha1"
require_relative "migration_helper"

Sequel.migration do
change do
create_table(:pact_version_contents, charset: 'utf8') do
String :sha, primary_key: true, null: false, primary_key_constraint_name: 'pk_pact_version_contents'
create_table(:pact_version_contents, charset: "utf8") do
String :sha, primary_key: true, null: false, primary_key_constraint_name: "pk_pact_version_contents"
String :content, type: PactBroker::MigrationHelper.large_text_type
DateTime :created_at, null: false
DateTime :updated_at, null: false
Expand Down
6 changes: 3 additions & 3 deletions db/migrations/000016_add_pact_content_foreign_key_to_pacts.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require 'digest/sha1'
require_relative 'migration_helper'
require "digest/sha1"
require_relative "migration_helper"

Sequel.migration do
change do
Expand All @@ -10,7 +10,7 @@
end

alter_table(:pacts) do
add_foreign_key :pact_version_content_sha, :pact_version_contents, type: String, null: true, foreign_key_constraint_name: 'fk_pact_version_content'
add_foreign_key :pact_version_content_sha, :pact_version_contents, type: String, null: true, foreign_key_constraint_name: "fk_pact_version_content"
end
end
end
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require 'digest/sha1'
require_relative 'migration_helper'
require "digest/sha1"
require_relative "migration_helper"

Sequel.migration do
change do
Expand Down
4 changes: 2 additions & 2 deletions db/migrations/000018_drop_json_content_column_from_pacts.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require 'digest/sha1'
require_relative 'migration_helper'
require "digest/sha1"
require_relative "migration_helper"

Sequel.migration do
change do
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require 'digest/sha1'
require_relative 'migration_helper'
require "digest/sha1"
require_relative "migration_helper"

Sequel.migration do
up do
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require 'digest/sha1'
require_relative 'migration_helper'
require "digest/sha1"
require_relative "migration_helper"

Sequel.migration do
change do
Expand Down
4 changes: 2 additions & 2 deletions db/migrations/000021_recreate_latest_pacts_view.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require 'digest/sha1'
require_relative 'migration_helper'
require "digest/sha1"
require_relative "migration_helper"

Sequel.migration do
change do
Expand Down
6 changes: 3 additions & 3 deletions db/migrations/000023_create_pact_versions_table.rb
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
require_relative 'migration_helper'
require_relative "migration_helper"

Sequel.migration do
change do
create_table(:pact_versions, charset: 'utf8') do
create_table(:pact_versions, charset: "utf8") do
primary_key :id
foreign_key :consumer_id, :pacticipants
foreign_key :provider_id, :pacticipants
String :sha, null: false
String :content, type: PactBroker::MigrationHelper.large_text_type
index [:consumer_id, :provider_id, :sha], unique: true, name: 'unq_pvc_con_prov_sha'
index [:consumer_id, :provider_id, :sha], unique: true, name: "unq_pvc_con_prov_sha"
DateTime :created_at, null: false
end
end
Expand Down
6 changes: 3 additions & 3 deletions db/migrations/000026_create_pact_publications.rb
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
Sequel.migration do
up do
create_table(:pact_publications, charset: 'utf8') do
create_table(:pact_publications, charset: "utf8") do
primary_key :id
foreign_key :consumer_version_id, :versions, null: false
foreign_key :provider_id, :pacticipants, null: false
Integer :revision_number, null: false
foreign_key :pact_version_id, :pact_versions, null: false
DateTime :created_at, null: false
index [:consumer_version_id, :provider_id, :revision_number], unique: true, name: 'cv_prov_revision_unq'
index [:consumer_version_id, :provider_id, :id], name: 'cv_prov_id_ndx'
index [:consumer_version_id, :provider_id, :revision_number], unique: true, name: "cv_prov_revision_unq"
index [:consumer_version_id, :provider_id, :id], name: "cv_prov_id_ndx"
end
end
end
2 changes: 1 addition & 1 deletion db/migrations/000031_create_verifications.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Sequel.migration do
up do
create_table(:verifications, charset: 'utf8') do
create_table(:verifications, charset: "utf8") do
primary_key :id
Integer :number
Boolean :success, null: false
Expand Down
Loading

0 comments on commit 886253f

Please sign in to comment.