attribute_validation 0.0.2 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c64362002f689937c79b1565b6adfd82e9c8021a
4
- data.tar.gz: 9b8b39206b43f38797e12f1153c8ffe1f0dee743
3
+ metadata.gz: ea82e9848ddf89e9c542132f81cb4a38d28250ad
4
+ data.tar.gz: fc052aa7fe604fedaf25185be5fb2ed1f6dc1863
5
5
  SHA512:
6
- metadata.gz: 256bcd32b28ea9f4e920a4a759b3b139be6cf0af7ebff0a2d735cb95408ba754f5a1de961efd13ca7f3891d84c34043bf295788240720209719f54d34c452498
7
- data.tar.gz: 858d0422f0d959b540db46140e3890bef957ea96f2d864a068ce1f06c2d40f93f2cdf20fac71e0f3d2b2e9898d2b15ea6bba1a0d39d1f7a51526563ecf410935
6
+ metadata.gz: bb7a1b1447e24532b4cf64a28f5abea55e6719142c984407d2cd712fa3949837972d5e84354549339d4e647107b4f4213bc1160e6213bccb0b69f4279d6d24a0
7
+ data.tar.gz: cdcc8867d56c3b4252dcae83155c1656a1b830c5d4c0de8d9c505e36b5e4952a7e0126fd2c4861810a4e835d74f36ec39b44f56bbf5089ab19f38ab7aaae3619
data/.gitignore CHANGED
@@ -7,3 +7,6 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
+
11
+ /test.db
12
+ *.gemfile.lock
@@ -1,5 +1,19 @@
1
1
  sudo: false
2
2
  language: ruby
3
+ cache: bundler
3
4
  rvm:
5
+ - 2.1
6
+ - 2.2
4
7
  - 2.3.3
8
+ - 2.4.1
5
9
  before_install: gem install bundler -v 1.15.4
10
+ gemfile:
11
+ - gemfiles/activerecord_4.2.gemfile
12
+ - gemfiles/activerecord_5.0.gemfile
13
+ - gemfiles/activerecord_5.1.gemfile
14
+ matrix:
15
+ exclude:
16
+ - rvm: 2.1
17
+ gemfile: gemfiles/activerecord_5.0.gemfile
18
+ - rvm: 2.1
19
+ gemfile: gemfiles/activerecord_5.1.gemfile
@@ -0,0 +1,11 @@
1
+ appraise 'activerecord-4.2' do
2
+ gem 'rails', '4.2.9'
3
+ end
4
+
5
+ appraise 'activerecord-5.0' do
6
+ gem 'rails', '~> 5.0.0'
7
+ end
8
+
9
+ appraise 'activerecord-5.1' do
10
+ gem 'rails', '~> 5.1.0'
11
+ end
data/README.md CHANGED
@@ -1,8 +1,9 @@
1
1
  # AttributeValidation
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/attribute_validation`. To experiment with that code, run `bin/console` for an interactive prompt.
3
+ [![Build Status](https://travis-ci.org/toshimaru/attribute_validation.svg?branch=master)](https://travis-ci.org/toshimaru/attribute_validation)
4
+ [![Gem Version](https://badge.fury.io/rb/attribute_validation.svg)](https://badge.fury.io/rb/attribute_validation)
4
5
 
5
- TODO: Delete this and the text above, and describe your gem
6
+ ActiveRecord/ActiveModel extension which enables validate the specific attributes.
6
7
 
7
8
  ## Installation
8
9
 
@@ -22,7 +23,22 @@ Or install it yourself as:
22
23
 
23
24
  ## Usage
24
25
 
25
- TODO: Write usage instructions here
26
+ ```rb
27
+ class User < ActiveRecord::Base
28
+ validates :name, presence: true
29
+ validates :age, numericality: true
30
+ end
31
+
32
+ user = User.new(name: "toshimaru")
33
+ user.valid? # => false
34
+ user.errors.messages # => {:age=>["is not a number"]}
35
+
36
+ user.valid_attributes? :name # => true
37
+ user.errors.messages # => {}
38
+
39
+ user.valid_attributes? :name, :age # => false
40
+ user.errors.messages # => {:age=>["is not a number"]}
41
+ ```
26
42
 
27
43
  ## Development
28
44
 
@@ -21,10 +21,13 @@ Gem::Specification.new do |spec|
21
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
22
  spec.require_paths = ["lib"]
23
23
 
24
- spec.add_dependency "activemodel", "~> 4.2.0"
25
- spec.add_dependency "activerecord", "~> 4.2.0"
24
+ spec.add_dependency 'activemodel', '> 4.2.0'
25
+ spec.add_dependency 'activerecord', '> 4.2.0'
26
26
 
27
- spec.add_development_dependency "bundler", "~> 1.15"
28
- spec.add_development_dependency "rake", "~> 10.0"
29
- spec.add_development_dependency "minitest", "~> 5.0"
27
+ spec.add_development_dependency 'appraisal'
28
+ spec.add_development_dependency 'bundler', '~> 1.15'
29
+ spec.add_development_dependency 'minitest', '~> 5.0'
30
+ spec.add_development_dependency 'pry'
31
+ spec.add_development_dependency 'rake', '~> 10.0'
32
+ spec.add_development_dependency 'sqlite3'
30
33
  end
@@ -7,8 +7,5 @@ require "attribute_validation"
7
7
  # with your gem easier. You can also use a different console, if you like.
8
8
 
9
9
  # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
11
- # Pry.start
12
-
13
- require "irb"
14
- IRB.start(__FILE__)
10
+ require "pry"
11
+ Pry.start
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "rails", "4.2.9"
6
+
7
+ gemspec path: "../"
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "rails", "~> 5.0.0"
6
+
7
+ gemspec path: "../"
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "rails", "~> 5.1.0"
6
+
7
+ gemspec path: "../"
@@ -7,3 +7,4 @@ require 'attribute_validation/validations'
7
7
  require 'attribute_validation/version'
8
8
 
9
9
  ActiveRecord::Base.include AttributeValidation::Validations
10
+ ActiveModel::Model.include AttributeValidation::Validations
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AttributeValidation
4
- VERSION = '0.0.2'.freeze
4
+ VERSION = '0.1.0'.freeze
5
5
  end
metadata CHANGED
@@ -1,43 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: attribute_validation
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - toshimaru
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-09-06 00:00:00.000000000 Z
11
+ date: 2017-09-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">"
18
18
  - !ruby/object:Gem::Version
19
19
  version: 4.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 4.2.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activerecord
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">"
32
32
  - !ruby/object:Gem::Version
33
33
  version: 4.2.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">"
39
39
  - !ruby/object:Gem::Version
40
40
  version: 4.2.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: appraisal
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: bundler
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -52,6 +66,34 @@ dependencies:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
68
  version: '1.15'
69
+ - !ruby/object:Gem::Dependency
70
+ name: minitest
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '5.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '5.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: pry
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
55
97
  - !ruby/object:Gem::Dependency
56
98
  name: rake
57
99
  requirement: !ruby/object:Gem::Requirement
@@ -67,19 +109,19 @@ dependencies:
67
109
  - !ruby/object:Gem::Version
68
110
  version: '10.0'
69
111
  - !ruby/object:Gem::Dependency
70
- name: minitest
112
+ name: sqlite3
71
113
  requirement: !ruby/object:Gem::Requirement
72
114
  requirements:
73
- - - "~>"
115
+ - - ">="
74
116
  - !ruby/object:Gem::Version
75
- version: '5.0'
117
+ version: '0'
76
118
  type: :development
77
119
  prerelease: false
78
120
  version_requirements: !ruby/object:Gem::Requirement
79
121
  requirements:
80
- - - "~>"
122
+ - - ">="
81
123
  - !ruby/object:Gem::Version
82
- version: '5.0'
124
+ version: '0'
83
125
  description: ActiveRecord/ActiveModel validation extension which enables attributes
84
126
  validation.
85
127
  email:
@@ -90,6 +132,7 @@ extra_rdoc_files: []
90
132
  files:
91
133
  - ".gitignore"
92
134
  - ".travis.yml"
135
+ - Appraisals
93
136
  - Gemfile
94
137
  - LICENSE.txt
95
138
  - README.md
@@ -97,6 +140,9 @@ files:
97
140
  - attribute_validation.gemspec
98
141
  - bin/console
99
142
  - bin/setup
143
+ - gemfiles/activerecord_4.2.gemfile
144
+ - gemfiles/activerecord_5.0.gemfile
145
+ - gemfiles/activerecord_5.1.gemfile
100
146
  - lib/attribute_validation.rb
101
147
  - lib/attribute_validation/validations.rb
102
148
  - lib/attribute_validation/version.rb