ar-check 0.2.1 → 0.2.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
  SHA256:
3
- metadata.gz: 4b230c37484f56b7ee6b3667932b4a8528bc21e88af27fc756c58b0d2608ebca
4
- data.tar.gz: ed519738ce183904c7727910e0affb632504f11e17b8b38a8c00b268719f28b9
3
+ metadata.gz: d4c10451212d47e496312679519b81d3ddcf2f0c173280cbc6640aa8c99ee931
4
+ data.tar.gz: 0b0f473be9aec29e9e99de73def7541d4f4fe7aa0cf6710f07d3a8664fa33ffa
5
5
  SHA512:
6
- metadata.gz: 691e46724f893e56caac886627ed37147d6c67b728caf5cceb353bbeb562b81b013a1292e42c2b6a0e80e1d5774230efdaab41f183e432b00d8cf59c9519f81b
7
- data.tar.gz: 182074c4c9528412fefe94542e07a4f69823bc82cfbcdc81da8bcc6e44b15714df5544b61463780f2c8c360b37f8b70780c5782c6f9837ffad04f865ae07ee57
6
+ metadata.gz: bf56a9ed50106b580e19e4da1843cb92436fc42aa6bbddf9f3b929448ddebd9aee4e0e58d2e0bced8744798b2872cb973a8f6c19da510c30be35e116c33171ef
7
+ data.tar.gz: aa96a9f9c7e36b7db04509e21948730a99b5bfd0e95afa79a82a9f3b4deb401b46e699a127effc29bf1e2f719203eaa99d2e17b0d3371d1992b565760ba6b936
@@ -0,0 +1,18 @@
1
+ ---
2
+ inherit_gem:
3
+ rubocop-fnando: .rubocop.yml
4
+
5
+ AllCops:
6
+ TargetRubyVersion: 2.6
7
+
8
+ Naming/FileName:
9
+ Exclude:
10
+ - lib/ar-check.rb
11
+
12
+ Metrics/LineLength:
13
+ Exclude:
14
+ - ar-check.gemspec
15
+ - test/**/*_test.rb
16
+
17
+ Metrics/MethodLength:
18
+ Enabled: false
data/Rakefile CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  require "bundler/gem_tasks"
4
4
  require "rake/testtask"
5
+ require "rubocop/rake_task"
5
6
 
6
7
  Rake::TestTask.new(:test) do |t|
7
8
  t.libs << "test"
@@ -11,4 +12,6 @@ Rake::TestTask.new(:test) do |t|
11
12
  t.warning = false
12
13
  end
13
14
 
14
- task default: :test
15
+ RuboCop::RakeTask.new(:rubocop)
16
+
17
+ task default: %i[test rubocop]
@@ -27,5 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.add_development_dependency "pg"
28
28
  spec.add_development_dependency "pry-meta"
29
29
  spec.add_development_dependency "rake"
30
+ spec.add_development_dependency "rubocop"
31
+ spec.add_development_dependency "rubocop-fnando"
30
32
  spec.add_development_dependency "simplecov"
31
33
  end
@@ -4,9 +4,9 @@ module AR
4
4
  module Check
5
5
  module Adapter
6
6
  def check_constraints(table)
7
- result = select_all <<-SQL.strip_heredoc
7
+ result = select_all <<~SQL
8
8
  SELECT c.conname AS name,
9
- c.consrc AS expression,
9
+ pg_get_constraintdef(c.oid) AS expression,
10
10
  t1.relname AS table
11
11
  FROM pg_constraint c
12
12
  JOIN pg_class t1 ON c.conrelid = t1.oid
@@ -13,11 +13,15 @@ module AR
13
13
  return if constraints.empty?
14
14
 
15
15
  constraints.each do |constraint|
16
+ expression = constraint["expression"]
17
+ .gsub(/^\s*CHECK\s+\(/i, "")
18
+ .gsub(/\)$/, "")
19
+
16
20
  statement = [
17
21
  "add_check",
18
22
  ":#{constraint['table']},",
19
23
  ":#{constraint['name'].gsub("_on_#{table}", '')},",
20
- constraint["expression"][1..-2].inspect
24
+ expression.inspect
21
25
  ].join(" ")
22
26
 
23
27
  stream.puts " #{statement}"
@@ -2,6 +2,6 @@
2
2
 
3
3
  module AR
4
4
  module Check
5
- VERSION = "0.2.1"
5
+ VERSION = "0.2.2"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ar-check
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nando Vieira
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-11-26 00:00:00.000000000 Z
11
+ date: 2019-12-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -94,6 +94,34 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rubocop
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rubocop-fnando
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
97
125
  - !ruby/object:Gem::Dependency
98
126
  name: simplecov
99
127
  requirement: !ruby/object:Gem::Requirement
@@ -116,6 +144,7 @@ extensions: []
116
144
  extra_rdoc_files: []
117
145
  files:
118
146
  - ".gitignore"
147
+ - ".rubocop.yml"
119
148
  - ".travis.yml"
120
149
  - CHANGELOG.md
121
150
  - CODE_OF_CONDUCT.md