morse_fields_validator 0.1.1 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.coveralls.yml +1 -0
- data/Guardfile +17 -0
- data/lib/morse_fields_validator/fields_validator.rb +15 -6
- data/lib/morse_fields_validator/version.rb +1 -1
- data/morse_fields_validator.gemspec +2 -0
- metadata +32 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 60d06f1dbb65e932afc3de5176651c454e7666a2
|
4
|
+
data.tar.gz: 519626fa7857d7501d8b39f9abe4479bff34fa58
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b4f69aff01519d07dba7c855c4045e5afe41fd88ab1bbbd9c85cfd25a9d1f6a1a16a0d4e03ec459e2b7deb6247e183c4825f9a477f17d6b33bc24687e70391f3
|
7
|
+
data.tar.gz: 119a4d35a841e331b984cf551be511d3443ec974e04ca66d9fe4d460bd543e3c4a413ce88714ed948cf6b85cbbda9b56acf6d969b645c6b4433db054a14156c1
|
data/.coveralls.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
repo_token: bMCUHJhkmWcEBZaZsRWT3HZUBJaX3M4he
|
data/Guardfile
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
guard :rspec, cmd: "bundle exec rspec" do
|
2
|
+
require "guard/rspec/dsl"
|
3
|
+
dsl = Guard::RSpec::Dsl.new(self)
|
4
|
+
|
5
|
+
# Feel free to open issues for suggestions and improvements
|
6
|
+
|
7
|
+
# RSpec files
|
8
|
+
rspec = dsl.rspec
|
9
|
+
watch(rspec.spec_helper) { rspec.spec_dir }
|
10
|
+
watch(rspec.spec_support) { rspec.spec_dir }
|
11
|
+
watch(rspec.spec_files)
|
12
|
+
|
13
|
+
# Ruby files
|
14
|
+
ruby = dsl.ruby
|
15
|
+
dsl.watch_spec_files_for(ruby.lib_files)
|
16
|
+
|
17
|
+
end
|
@@ -1,7 +1,11 @@
|
|
1
1
|
module FieldsValidator
|
2
|
-
ERROR = 'please ensure necessary fields are in place'
|
3
2
|
|
4
3
|
extend ActiveSupport::Concern
|
4
|
+
|
5
|
+
included do
|
6
|
+
validate :validate_column_names
|
7
|
+
end
|
8
|
+
|
5
9
|
class_methods do
|
6
10
|
def validate_required_attributes
|
7
11
|
required_attributes.each do |a|
|
@@ -9,17 +13,22 @@ module FieldsValidator
|
|
9
13
|
end
|
10
14
|
end
|
11
15
|
def load_required_attributes(*_attrs)
|
12
|
-
@required_attributes
|
13
|
-
@required_attributes += _attrs
|
16
|
+
@required_attributes=_attrs.any? ? _attrs : []
|
14
17
|
@required_attributes.uniq!
|
15
18
|
end
|
16
19
|
|
17
20
|
def required_attributes
|
18
21
|
@required_attributes
|
19
22
|
end
|
23
|
+
end
|
20
24
|
|
21
|
-
|
22
|
-
|
23
|
-
|
25
|
+
private
|
26
|
+
|
27
|
+
def required_database_fields
|
28
|
+
defined?(super) ? super : []
|
29
|
+
end
|
30
|
+
|
31
|
+
def validate_column_names
|
32
|
+
required_database_fields.each { |rdf| errors_add(rdf, "does not have a column in the database.") unless self.class.column_names.include?(rdf)} if required_database_fields.any?
|
24
33
|
end
|
25
34
|
end
|
@@ -26,6 +26,8 @@ Gem::Specification.new do |spec|
|
|
26
26
|
|
27
27
|
spec.add_development_dependency "bundler", "~> 1.8"
|
28
28
|
spec.add_development_dependency "coveralls", "~> 0.8"
|
29
|
+
spec.add_development_dependency "guard-rspec", "~> 4.5"
|
30
|
+
spec.add_development_dependency "rb-fsevent", "~> 0.9"
|
29
31
|
spec.add_development_dependency "shoulda-matchers", "~> 2.8"
|
30
32
|
spec.add_development_dependency "rake", "~> 10.0"
|
31
33
|
spec.add_development_dependency "rspec", "~> 3.2"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: morse_fields_validator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Terry S
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-07-
|
12
|
+
date: 2015-07-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activemodel
|
@@ -67,6 +67,34 @@ dependencies:
|
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
69
|
version: '0.8'
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: guard-rspec
|
72
|
+
requirement: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - "~>"
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '4.5'
|
77
|
+
type: :development
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - "~>"
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: '4.5'
|
84
|
+
- !ruby/object:Gem::Dependency
|
85
|
+
name: rb-fsevent
|
86
|
+
requirement: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - "~>"
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '0.9'
|
91
|
+
type: :development
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - "~>"
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '0.9'
|
70
98
|
- !ruby/object:Gem::Dependency
|
71
99
|
name: shoulda-matchers
|
72
100
|
requirement: !ruby/object:Gem::Requirement
|
@@ -117,10 +145,12 @@ executables: []
|
|
117
145
|
extensions: []
|
118
146
|
extra_rdoc_files: []
|
119
147
|
files:
|
148
|
+
- ".coveralls.yml"
|
120
149
|
- ".gitignore"
|
121
150
|
- ".rspec"
|
122
151
|
- ".travis.yml"
|
123
152
|
- Gemfile
|
153
|
+
- Guardfile
|
124
154
|
- README.md
|
125
155
|
- Rakefile
|
126
156
|
- bin/console
|