rubocop-sequel 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7060c587b01d22b660cfabc0ead46e03524b0f51
4
- data.tar.gz: 59617e179cec66a67b2d051f0dde3170164b4026
3
+ metadata.gz: 65861f84673b5424553f927f79bfedf762fbc128
4
+ data.tar.gz: 8191bd88678e0980457aef64fb2a3748000e15cf
5
5
  SHA512:
6
- metadata.gz: acdd32c982d42943d8b0dc806668699b024f56deeafc3c9bb38a3c300d650234209a61721396466c82f989482420c29b6618f0a99733c274882eee7153067773
7
- data.tar.gz: 39473108b08740593758b370b41848b831d12aea8b44434a433f121ce0315dc035b19b2e6facf6fe52ca15cab15ab73fc3230c96b7e32e800ae0d9e5b038f30b
6
+ metadata.gz: d7be5cc421d8d5e9284c4d8304b41a4d483e237e5f1b8038a07649344ae059c6c11badfeede6231676f3be25c49bf80f491d636c91fc5fadfe2f3c5165637fee
7
+ data.tar.gz: ce105d871158dc7c62ba784d54239733b371f696b9ff766b6538f18deff561afd4238f062242254c9000d0f73fc4ed811b136ecdbb12ed2dda9639b8893490e9
data/.gitignore CHANGED
@@ -1,2 +1,3 @@
1
1
  .tags
2
2
  *.gem
3
+ Gemfile.lock
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.3.3
4
+ - 2.4.0
5
+ script: bundle exec rspec spec
@@ -5,12 +5,13 @@ module RuboCop
5
5
  class ColumnDefault < Cop
6
6
  MSG = "Don't create new column with default values".freeze
7
7
 
8
- def_node_matcher :add_column_default, <<-END
8
+ def_node_matcher :add_column_default, <<-MATCHER
9
9
  (send _ :add_column ... (hash (pair (sym :default) _)))
10
- END
10
+ MATCHER
11
11
 
12
12
  def on_send(node)
13
- add_offense(node, :selector, MSG) if add_column_default(node)
13
+ return unless add_column_default(node)
14
+ add_offense(node, location: :selector, message: MSG)
14
15
  end
15
16
  end
16
17
  end
@@ -5,20 +5,22 @@ module RuboCop
5
5
  class ConcurrentIndex < Cop
6
6
  MSG = 'Prefer creating new index concurrently'.freeze
7
7
 
8
- def_node_matcher :add_index, <<-END
8
+ def_node_matcher :add_index, <<-MATCHER
9
9
  (send _ :add_index $...)
10
- END
10
+ MATCHER
11
11
 
12
12
  def on_send(node)
13
13
  add_index(node) do |args|
14
- add_offense(node, :selector, MSG) if offensive?(args)
14
+ if offensive?(args)
15
+ add_offense(node, location: :selector, message: MSG)
16
+ end
15
17
  end
16
18
  end
17
19
 
18
20
  private
19
21
 
20
22
  def offensive?(args)
21
- !args.last.hash_type? || !args.last.each_descendant.any? do |n|
23
+ !args.last.hash_type? || args.last.each_descendant.none? do |n|
22
24
  next unless n.sym_type?
23
25
  n.children.any? { |s| s == :concurrently }
24
26
  end
@@ -11,7 +11,8 @@ module RuboCop
11
11
 
12
12
  return unless filename_bad?(file_path)
13
13
 
14
- add_offense(nil, source_range(processed_source.buffer, 1, 0), nil)
14
+ location = source_range(processed_source.buffer, 1, 0)
15
+ add_offense(nil, location: location)
15
16
  end
16
17
 
17
18
  private
@@ -3,14 +3,16 @@ module RuboCop
3
3
  module Sequel
4
4
  # SaveChanges promotes the use of save_changes.
5
5
  class SaveChanges < Cop
6
- MSG = 'Use `Sequel::Model#save_changes` instead of `Sequel::Model#save`.'.freeze
6
+ MSG = 'Use `Sequel::Model#save_changes` instead of '\
7
+ '`Sequel::Model#save`.'.freeze
7
8
 
8
- def_node_matcher :model_save, <<-END
9
+ def_node_matcher :model_save, <<-MATCHER
9
10
  (send _ :save)
10
- END
11
+ MATCHER
11
12
 
12
13
  def on_send(node)
13
- add_offense(node, :selector, MSG) if model_save(node)
14
+ return unless model_save(node)
15
+ add_offense(node, location: :selector, message: MSG)
14
16
  end
15
17
 
16
18
  def autocorrect(node)
@@ -1,5 +1,3 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
1
  Gem::Specification.new do |gem|
4
2
  gem.authors = ['Timothée Peignier']
5
3
  gem.email = ['timothee.peignier@tryphon.org']
@@ -13,12 +11,13 @@ Gem::Specification.new do |gem|
13
11
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
14
12
  gem.name = 'rubocop-sequel'
15
13
  gem.require_paths = ['lib']
16
- gem.version = '0.0.1'
14
+ gem.version = '0.0.2'
17
15
 
18
- gem.add_runtime_dependency 'rubocop', '~> 0.46', '>= 0.46'
16
+ gem.add_runtime_dependency 'rubocop', '~> 0.51', '>= 0.51'
19
17
 
20
- gem.add_development_dependency 'sequel', '~> 4.41', '>= 4.41.0'
18
+ gem.add_development_dependency 'rake', '~> 12.0.0', '>= 12.0.0'
21
19
  gem.add_development_dependency 'rspec', '~> 3.5', '>= 3.5.0'
20
+ gem.add_development_dependency 'sequel', '~> 4.41', '>= 4.41.0'
22
21
  gem.add_development_dependency 'simplecov', '~> 0.12'
23
22
  gem.add_development_dependency 'sqlite3', '~> 1.3', '>= 1.3.12'
24
23
  end
@@ -4,12 +4,12 @@ describe RuboCop::Cop::Sequel::ColumnDefault do
4
4
  subject(:cop) { described_class.new }
5
5
 
6
6
  it 'registers an offense when setting a default' do
7
- inspect_source(cop, 'add_column(:products, :type, :text, default: "cop")')
7
+ inspect_source('add_column(:products, :type, :text, default: "cop")')
8
8
  expect(cop.offenses.size).to eq(1)
9
9
  end
10
10
 
11
11
  it 'does not register an offense when not setting a default' do
12
- inspect_source(cop, 'add_column(:products, :type, :text)')
12
+ inspect_source('add_column(:products, :type, :text)')
13
13
  expect(cop.offenses).to be_empty
14
14
  end
15
15
  end
@@ -5,23 +5,25 @@ describe RuboCop::Cop::Sequel::ConcurrentIndex do
5
5
 
6
6
  context 'without the concurrent option' do
7
7
  it 'registers an offense without options' do
8
- inspect_source(cop, 'add_index(:products, :name)')
8
+ inspect_source('add_index(:products, :name)')
9
9
  expect(cop.offenses.size).to eq(1)
10
10
  end
11
11
 
12
12
  it 'registers an offense with other options' do
13
- inspect_source(cop, 'add_index(:products, :name, unique: true)')
13
+ inspect_source('add_index(:products, :name, unique: true)')
14
14
  expect(cop.offenses.size).to eq(1)
15
15
  end
16
16
 
17
17
  it 'registers an offense with composite index' do
18
- inspect_source(cop, 'add_index(:products, :name, unique: true)')
18
+ inspect_source('add_index(:products, :name, unique: true)')
19
19
  expect(cop.offenses.size).to eq(1)
20
20
  end
21
21
  end
22
22
 
23
23
  it 'does not register an offense when using concurrent option' do
24
- inspect_source(cop, 'add_index(:products, :name, unique: true, concurrently: true)')
24
+ inspect_source(
25
+ 'add_index(:products, :name, unique: true, concurrently: true)'
26
+ )
25
27
  expect(cop.offenses).to be_empty
26
28
  end
27
29
  end
@@ -15,12 +15,12 @@ describe RuboCop::Cop::Sequel::MigrationName, :config do
15
15
  let(:cop_config) { {} }
16
16
 
17
17
  it 'registers an offense when using the default name' do
18
- inspect_source(cop, '', 'new_migration.rb')
18
+ inspect_source('', 'new_migration.rb')
19
19
  expect(cop.offenses.size).to eq(1)
20
20
  end
21
21
 
22
22
  it 'does not register an offense when using a specific name' do
23
- inspect_source(cop, '', 'add_index.rb')
23
+ inspect_source('', 'add_index.rb')
24
24
  expect(cop.offenses).to be_empty
25
25
  end
26
26
  end
@@ -29,12 +29,12 @@ describe RuboCop::Cop::Sequel::MigrationName, :config do
29
29
  let(:cop_config) { { 'DefaultName' => 'add_migration' } }
30
30
 
31
31
  it 'registers an offense when using the default name' do
32
- inspect_source(cop, '', 'add_migration.rb')
32
+ inspect_source('', 'add_migration.rb')
33
33
  expect(cop.offenses.size).to eq(1)
34
34
  end
35
35
 
36
36
  it 'does not register an offense when using a specific name' do
37
- inspect_source(cop, '', 'add_index.rb')
37
+ inspect_source('', 'add_index.rb')
38
38
  expect(cop.offenses).to be_empty
39
39
  end
40
40
  end
@@ -4,17 +4,17 @@ describe RuboCop::Cop::Sequel::SaveChanges do
4
4
  subject(:cop) { described_class.new }
5
5
 
6
6
  it 'registers an offense when using save' do
7
- inspect_source(cop, 'favorite.save')
7
+ inspect_source('favorite.save')
8
8
  expect(cop.offenses.size).to eq(1)
9
9
  end
10
10
 
11
11
  it 'does not register an offense when using save_changes' do
12
- inspect_source(cop, 'favorite.save_changes')
12
+ inspect_source('favorite.save_changes')
13
13
  expect(cop.offenses).to be_empty
14
14
  end
15
15
 
16
16
  it 'auto-corrects by using save_changes' do
17
- new_source = autocorrect_source(cop, 'favorite.save')
17
+ new_source = autocorrect_source('favorite.save')
18
18
  expect(new_source).to eq('favorite.save_changes')
19
19
  end
20
20
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-sequel
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Timothée Peignier
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-19 00:00:00.000000000 Z
11
+ date: 2017-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubocop
@@ -16,40 +16,40 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.46'
19
+ version: '0.51'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: '0.46'
22
+ version: '0.51'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '0.46'
29
+ version: '0.51'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: '0.46'
32
+ version: '0.51'
33
33
  - !ruby/object:Gem::Dependency
34
- name: sequel
34
+ name: rake
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '4.41'
39
+ version: 12.0.0
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: 4.41.0
42
+ version: 12.0.0
43
43
  type: :development
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - "~>"
48
48
  - !ruby/object:Gem::Version
49
- version: '4.41'
49
+ version: 12.0.0
50
50
  - - ">="
51
51
  - !ruby/object:Gem::Version
52
- version: 4.41.0
52
+ version: 12.0.0
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: rspec
55
55
  requirement: !ruby/object:Gem::Requirement
@@ -70,6 +70,26 @@ dependencies:
70
70
  - - ">="
71
71
  - !ruby/object:Gem::Version
72
72
  version: 3.5.0
73
+ - !ruby/object:Gem::Dependency
74
+ name: sequel
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: '4.41'
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: 4.41.0
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '4.41'
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: 4.41.0
73
93
  - !ruby/object:Gem::Dependency
74
94
  name: simplecov
75
95
  requirement: !ruby/object:Gem::Requirement
@@ -114,8 +134,8 @@ files:
114
134
  - ".gitignore"
115
135
  - ".rspec"
116
136
  - ".rubocop_todo.yml"
137
+ - ".travis.yml"
117
138
  - Gemfile
118
- - Gemfile.lock
119
139
  - LICENSE
120
140
  - README.md
121
141
  - lib/rubocop-sequel.rb
@@ -151,7 +171,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
151
171
  version: '0'
152
172
  requirements: []
153
173
  rubyforge_project:
154
- rubygems_version: 2.5.2
174
+ rubygems_version: 2.6.13
155
175
  signing_key:
156
176
  specification_version: 4
157
177
  summary: A plugin for the RuboCop code style & linting tool.
@@ -1,58 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- rubocop-sequel (0.0.1)
5
- rubocop (~> 0.46, >= 0.46)
6
-
7
- GEM
8
- remote: https://rubygems.org/
9
- specs:
10
- ast (2.3.0)
11
- diff-lcs (1.2.5)
12
- docile (1.1.5)
13
- json (2.0.2)
14
- parser (2.3.3.1)
15
- ast (~> 2.2)
16
- powerpack (0.1.1)
17
- rainbow (2.1.0)
18
- rspec (3.5.0)
19
- rspec-core (~> 3.5.0)
20
- rspec-expectations (~> 3.5.0)
21
- rspec-mocks (~> 3.5.0)
22
- rspec-core (3.5.4)
23
- rspec-support (~> 3.5.0)
24
- rspec-expectations (3.5.0)
25
- diff-lcs (>= 1.2.0, < 2.0)
26
- rspec-support (~> 3.5.0)
27
- rspec-mocks (3.5.0)
28
- diff-lcs (>= 1.2.0, < 2.0)
29
- rspec-support (~> 3.5.0)
30
- rspec-support (3.5.0)
31
- rubocop (0.46.0)
32
- parser (>= 2.3.1.1, < 3.0)
33
- powerpack (~> 0.1)
34
- rainbow (>= 1.99.1, < 3.0)
35
- ruby-progressbar (~> 1.7)
36
- unicode-display_width (~> 1.0, >= 1.0.1)
37
- ruby-progressbar (1.8.1)
38
- sequel (4.41.0)
39
- simplecov (0.12.0)
40
- docile (~> 1.1.0)
41
- json (>= 1.8, < 3)
42
- simplecov-html (~> 0.10.0)
43
- simplecov-html (0.10.0)
44
- sqlite3 (1.3.12)
45
- unicode-display_width (1.1.2)
46
-
47
- PLATFORMS
48
- ruby
49
-
50
- DEPENDENCIES
51
- rspec (~> 3.5, >= 3.5.0)
52
- rubocop-sequel!
53
- sequel (~> 4.41, >= 4.41.0)
54
- simplecov (~> 0.12)
55
- sqlite3 (~> 1.3, >= 1.3.12)
56
-
57
- BUNDLED WITH
58
- 1.13.6