activevalidators 4.1.0 → 5.0.0

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: 9720bd764a940a06bf103fa7b339409287605aef1b7a6ddbf5d9358a42fa3f40
4
- data.tar.gz: 1fd53fe685d4be8af14c4cdf55b820e0d9ca32348724eb38f9f79e8853fbb014
3
+ metadata.gz: 6627fda0cd603ed1d394750fe3929ec436087be19b74330b36cabbe639932ff8
4
+ data.tar.gz: 5dd383d5afbe995114ec1a3020e3e3dd547a258807f4ab6a4d6695ca36df5f27
5
5
  SHA512:
6
- metadata.gz: f9b482fb35078b82390cc920b08e1cd39474ef9fc47f3e99b17f14cc7d3acbe47b6418ce2bdeb90409f8f245b78263f123047bba3ddba9a23c1a8aa8009d8418
7
- data.tar.gz: '00009860f5db1b80a987c5acf41e47f4d1fce35284022da95a86c087f3564bba56e1b5b7566388f24ef639f2fe05339bc8373467fb7c08a3299e9913299d3940'
6
+ metadata.gz: 6614f43d90ccf225b280b3bced0bcd930402580964f8db653f7ff3ec9d11f6b0e98d1b9eae19fdc4e09505dcd4f7d809a9aae493fd9404f9816ff411b0c4c0e4
7
+ data.tar.gz: 60ad6785645235b0e3688203dba9ba38971bf2e41d8117cddb7177ffea9a413ab446bbb85062b532fd88360b6a21793f334bd91c4716c12f8be2f3db41988f7b
@@ -1,3 +1 @@
1
- $�.��2NJ5h�O�_ھ�g):"?����]�PǦ��C��\�
2
- `DJ���6�*�������c��
3
- �;�꽞���t��C-t�!����|�'�F��7eO��x��寰��ֿ�I}^����5�7-˪Ȩ���K&ai Y�Q��t�@��_�偗�Ki�jl�������S��y͆����Y��*��5~�d�"��)��5?��h�8��1�c���b�c��Fȋ��tW_!��H�Ɛ&x��y�
1
+ ���::�>S_��.g�9��oP�.�����kf��LP� ��]�=�*��a���*hΏ��;�F7��ȷ�[����~[)��AM�x2�t�t3�����\e�F$��U�n#?E)O=/D��>R>Ͻer����ɻ��n��"n{дTB�� ���‚ZM ��@{+e�%�O�����Q�|x�� f.ꬶ$ ^M�U���B�,v��3+�b�]�ʱ�jt�I����Wd8�ߴH;ш7����� �=�vl ��������z'_��q����geΕ�?���6�Ԭ9`{/�9 e���"�9Z�
data.tar.gz.sig CHANGED
Binary file
@@ -1,13 +1,10 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.2.8
4
- - 2.3.5
5
- - 2.4.2
3
+ - 2.4.4
4
+ - 2.5.3
6
5
  - ruby-head
7
- - jruby-head
8
- - rubinius-3.86
9
- matrix:
10
- allow_failures:
11
- - rvm: rubinius-3.86
12
6
  before_install:
13
7
  - gem install bundler
8
+ env:
9
+ - "RAILS_VERSION=5.2.2"
10
+ - "RAILS_VERSION=5.1.6"
@@ -1,6 +1,6 @@
1
1
  # UNRELEASED
2
2
 
3
- # 4.x.y
3
+ # 5.x.y
4
4
 
5
5
  ## BREAKING CHANGES
6
6
 
@@ -8,6 +8,20 @@
8
8
 
9
9
  ## CHANGES
10
10
 
11
+
12
+ # 5.0.0
13
+
14
+ ## BREAKING CHANGES
15
+
16
+ * Supports only Rails 5.1+
17
+ * Stops supporting Rubinius
18
+ * Stops supporting JRuby
19
+
20
+ ## CHANGES
21
+
22
+ * The SIN validator now rejected zero-ed SINs
23
+
24
+
11
25
  # 4.1.0
12
26
 
13
27
  ## CHANGES
data/Gemfile CHANGED
@@ -1,12 +1,2 @@
1
1
  source 'https://rubygems.org'
2
2
  gemspec
3
-
4
- group :test do
5
- platform :rbx do
6
- gem 'rubysl-singleton'
7
- gem 'rubysl-mutex_m'
8
- gem 'rubysl-net-smtp'
9
- gem 'rubysl-ipaddr'
10
- gem 'rubysl-base64'
11
- end
12
- end
data/README.md CHANGED
@@ -18,6 +18,11 @@ The MediumSecurity trust profile will verify signed gems, but allow the installa
18
18
 
19
19
  This is necessary because not all of ActiveValidators’ dependencies are signed, so we cannot use HighSecurity.
20
20
 
21
+ ## Requirements
22
+
23
+ * Rails 5.1+
24
+ * Ruby 2.4+
25
+
21
26
  ## Installation
22
27
 
23
28
  gem install activevalidators
@@ -27,7 +32,7 @@ This projects follows [Semantic Versioning a.k.a SemVer](http://semver.org). If
27
32
  What it means is that you should specify an ActiveValidators version like this :
28
33
 
29
34
  ```ruby
30
- gem 'activevalidators', '~> 4.0.1' # <-- mind the patch version
35
+ gem 'activevalidators', '~> 5.0.0' # <-- mind the patch version
31
36
  ```
32
37
 
33
38
  Once you have `require`'d the gem, you will have to activate the validators you
@@ -185,4 +190,4 @@ Lots of improvements can be made:
185
190
 
186
191
  ## Copyright
187
192
 
188
- Copyright (c) 2010-2014 Franck Verrot. MIT LICENSE. See LICENSE for details.
193
+ Copyright (c) 2010-2018 Franck Verrot. MIT LICENSE. See LICENSE for details.
@@ -1,7 +1,7 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  Gem::Specification.new do |s|
3
3
  s.name = 'activevalidators'
4
- s.version = '4.1.0'
4
+ s.version = '5.0.0'
5
5
  s.platform = Gem::Platform::RUBY
6
6
  s.authors = ['Franck Verrot', 'Paco Guzmán', 'Oriol Gual', 'Garrett Bjerkhoel', 'Renato Riccieri Santos Zannon', 'Brian Moseley', 'Serj L aka Loremaster']
7
7
  s.email = ['franck@verrot.fr']
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
10
10
  s.description = %q{ActiveValidators is a collection of ActiveModel/ActiveRecord validations}
11
11
  s.license = 'MIT'
12
12
 
13
- s.required_ruby_version = '>= 2.2.2'
13
+ s.required_ruby_version = '>= 2.4.4'
14
14
 
15
15
  s.add_development_dependency 'bundler'
16
16
  s.add_development_dependency 'minitest'
@@ -1,6 +1,6 @@
1
1
  -----BEGIN CERTIFICATE-----
2
2
  MIIEMDCCApigAwIBAgIBATANBgkqhkiG9w0BAQsFADAhMR8wHQYDVQQDDBZmcmFu
3
- Y2svREM9dmVycm90L0RDPWZyMB4XDTE3MTExOTIxMTgyNVoXDTE4MTExOTIxMTgy
3
+ Y2svREM9dmVycm90L0RDPWZyMB4XDTE4MTIyMTAxMzgwNVoXDTE5MTIyMTAxMzgw
4
4
  NVowITEfMB0GA1UEAwwWZnJhbmNrL0RDPXZlcnJvdC9EQz1mcjCCAaIwDQYJKoZI
5
5
  hvcNAQEBBQADggGPADCCAYoCggGBANjZ/7L2ECEQAVOYvMl0JOwyVXKRCsLnVrmP
6
6
  mcwpCMFL0ennkpLJcqiDNsm0b/RkJHSLu3FMoYrIU5KoaP7iMIsLGv846aw2wSNI
@@ -13,13 +13,13 @@ gcRLMt1hOJchslGNtvkq5W4Wq8hw+zNHzTMpRkIsYTbvlJCDxXRKR3jwPDTRvNAl
13
13
  aemBW1g3yerHeDQr6GtxKEvhmHdw/wIDAQABo3MwcTAJBgNVHRMEAjAAMAsGA1Ud
14
14
  DwQEAwIEsDAdBgNVHQ4EFgQUgG77cLAMzowManymHX63DbvfR5IwGwYDVR0RBBQw
15
15
  EoEQZnJhbmNrQHZlcnJvdC5mcjAbBgNVHRIEFDASgRBmcmFuY2tAdmVycm90LmZy
16
- MA0GCSqGSIb3DQEBCwUAA4IBgQB86Y8WM2ipynprTUdKBmO/i5kPev+pQjLQqPXI
17
- zzfv57KP8gg2sODWEdmNkSkeIvdx60pTENVsumaTPf6H4GKm0UXoUWkiXxyn1Pw+
18
- u+LjMqNhsZC/GniX76EwqyfXWr67ycxvNZjx76Kd9NvaHmVpoZMx94I4AkMQ/DLs
19
- xVOAKKocMUfYSOS9XBRSaBID35ct8IpOS8+AFTf/d1j9ZVRz+8FAwhUOqIJeV2Ze
20
- CxU5fLhrkxlQYRbXlmJpmR/4ri3vGvBpfx6GbS/vfjIX+FGaPXVdANtQmoChT3y+
21
- ZDTx0AmIrPp/g89SEoyrrRxy6BbhV7Jl68mwlS7v9EAaHVlQy2rhfB8RAO/ViuAl
22
- GVIuVSzE95Lb2Q+vxbLgk/fHcdoGDIB7SglNmP9b1d55AgQGnajipEukmy+smZko
23
- ZRwmWlrt39rxEcCGo4aKqwxpPeewNg7hjiCFkf2fO0XHvk+kyMr0JmF8GbS6oyj5
24
- cWLdZ4BYV1Mwu0NmUxVnvmrCRV8=
16
+ MA0GCSqGSIb3DQEBCwUAA4IBgQAofcg/2kPT9VMBGEuO17F3yH6fiJboQeLL1nlM
17
+ ULZv5LyyqV6Yq0cQ+TZMGHd/hbvBFTN9/55WmiN66tYLaunyfr4aUflCQcM/qu2g
18
+ Ieoz8QLxfIi24DCDezpODHaud6Qt0VmMpalSOxbCuMeNnXLpnxbP/7fJBJoum5GS
19
+ CqGuH81fXy7KAAlgMBcsYb3+vZJhuAeM/zSrE5Hmf1zApTEVZc4Y0dO6eRC6WbXW
20
+ pJfyNXyITkkr7pTRYO/wj3lFoeDqfGXb48HvpJ54lqfeIvr9Hek7grcyQGfZ1rFY
21
+ Dx3RTjxParzCWk/HCFHQiZmU5lnOl7GShwAZrG6l0UHST3/YNCA52KDrmC/T0A2N
22
+ d2MQGgSZerYTx+HRKlradglBDPCs4nxQj5pnoDvGbngeZUua+ZZGFM9SXBT3zAIQ
23
+ akLQjJWKHQCzyqDChJHRGhlxyVFKP2JwqFgzE3p1l64JArsb7BEqhpoBPXMwlChE
24
+ HgzCBTsCU0syQBb1s6lBz2HrWA4=
25
25
  -----END CERTIFICATE-----
@@ -0,0 +1 @@
1
+ 739d5f9cd19c8e5a492e2e530504d04aa017109f359881594ed02c9761d74deab2e2366954ca3d6522737f1636e6029d95819f2c495da5b742e241f695294af2
@@ -41,13 +41,17 @@ module ActiveModel
41
41
  end
42
42
 
43
43
  def valid?
44
- size_is?(9) && allow_permanent_residents? && LuhnChecker.valid?(@sin)
44
+ size_is?(9) && is_not_full_of_zeroes && allow_permanent_residents? && LuhnChecker.valid?(@sin)
45
45
  end
46
46
 
47
47
  def size_is?(count)
48
48
  @sin.size == count
49
49
  end
50
50
 
51
+ def is_not_full_of_zeroes
52
+ @sin != '000000000'
53
+ end
54
+
51
55
  def allow_permanent_residents?
52
56
  permanent_residents_indentifier = "9"
53
57
 
@@ -9,6 +9,11 @@ describe "SIN validations" do
9
9
  subject.valid?.must_equal false
10
10
  end
11
11
 
12
+ it "rejects sin made out of zeroes" do
13
+ subject = build_sin_record({:sin => '000 000 000'}, {:country => :canada})
14
+ subject.valid?.must_equal false
15
+ end
16
+
12
17
  it "rejects empty sin when country is provided" do
13
18
  subject = build_sin_record({:sin => ''}, {:country => :canada })
14
19
  subject.valid?.must_equal false
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activevalidators
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.0
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Franck Verrot
@@ -17,7 +17,7 @@ cert_chain:
17
17
  - |
18
18
  -----BEGIN CERTIFICATE-----
19
19
  MIIEMDCCApigAwIBAgIBATANBgkqhkiG9w0BAQsFADAhMR8wHQYDVQQDDBZmcmFu
20
- Y2svREM9dmVycm90L0RDPWZyMB4XDTE3MTExOTIxMTgyNVoXDTE4MTExOTIxMTgy
20
+ Y2svREM9dmVycm90L0RDPWZyMB4XDTE4MTIyMTAxMzgwNVoXDTE5MTIyMTAxMzgw
21
21
  NVowITEfMB0GA1UEAwwWZnJhbmNrL0RDPXZlcnJvdC9EQz1mcjCCAaIwDQYJKoZI
22
22
  hvcNAQEBBQADggGPADCCAYoCggGBANjZ/7L2ECEQAVOYvMl0JOwyVXKRCsLnVrmP
23
23
  mcwpCMFL0ennkpLJcqiDNsm0b/RkJHSLu3FMoYrIU5KoaP7iMIsLGv846aw2wSNI
@@ -30,17 +30,17 @@ cert_chain:
30
30
  aemBW1g3yerHeDQr6GtxKEvhmHdw/wIDAQABo3MwcTAJBgNVHRMEAjAAMAsGA1Ud
31
31
  DwQEAwIEsDAdBgNVHQ4EFgQUgG77cLAMzowManymHX63DbvfR5IwGwYDVR0RBBQw
32
32
  EoEQZnJhbmNrQHZlcnJvdC5mcjAbBgNVHRIEFDASgRBmcmFuY2tAdmVycm90LmZy
33
- MA0GCSqGSIb3DQEBCwUAA4IBgQB86Y8WM2ipynprTUdKBmO/i5kPev+pQjLQqPXI
34
- zzfv57KP8gg2sODWEdmNkSkeIvdx60pTENVsumaTPf6H4GKm0UXoUWkiXxyn1Pw+
35
- u+LjMqNhsZC/GniX76EwqyfXWr67ycxvNZjx76Kd9NvaHmVpoZMx94I4AkMQ/DLs
36
- xVOAKKocMUfYSOS9XBRSaBID35ct8IpOS8+AFTf/d1j9ZVRz+8FAwhUOqIJeV2Ze
37
- CxU5fLhrkxlQYRbXlmJpmR/4ri3vGvBpfx6GbS/vfjIX+FGaPXVdANtQmoChT3y+
38
- ZDTx0AmIrPp/g89SEoyrrRxy6BbhV7Jl68mwlS7v9EAaHVlQy2rhfB8RAO/ViuAl
39
- GVIuVSzE95Lb2Q+vxbLgk/fHcdoGDIB7SglNmP9b1d55AgQGnajipEukmy+smZko
40
- ZRwmWlrt39rxEcCGo4aKqwxpPeewNg7hjiCFkf2fO0XHvk+kyMr0JmF8GbS6oyj5
41
- cWLdZ4BYV1Mwu0NmUxVnvmrCRV8=
33
+ MA0GCSqGSIb3DQEBCwUAA4IBgQAofcg/2kPT9VMBGEuO17F3yH6fiJboQeLL1nlM
34
+ ULZv5LyyqV6Yq0cQ+TZMGHd/hbvBFTN9/55WmiN66tYLaunyfr4aUflCQcM/qu2g
35
+ Ieoz8QLxfIi24DCDezpODHaud6Qt0VmMpalSOxbCuMeNnXLpnxbP/7fJBJoum5GS
36
+ CqGuH81fXy7KAAlgMBcsYb3+vZJhuAeM/zSrE5Hmf1zApTEVZc4Y0dO6eRC6WbXW
37
+ pJfyNXyITkkr7pTRYO/wj3lFoeDqfGXb48HvpJ54lqfeIvr9Hek7grcyQGfZ1rFY
38
+ Dx3RTjxParzCWk/HCFHQiZmU5lnOl7GShwAZrG6l0UHST3/YNCA52KDrmC/T0A2N
39
+ d2MQGgSZerYTx+HRKlradglBDPCs4nxQj5pnoDvGbngeZUua+ZZGFM9SXBT3zAIQ
40
+ akLQjJWKHQCzyqDChJHRGhlxyVFKP2JwqFgzE3p1l64JArsb7BEqhpoBPXMwlChE
41
+ HgzCBTsCU0syQBb1s6lBz2HrWA4=
42
42
  -----END CERTIFICATE-----
43
- date: 2017-12-20 00:00:00.000000000 Z
43
+ date: 2018-12-21 00:00:00.000000000 Z
44
44
  dependencies:
45
45
  - !ruby/object:Gem::Dependency
46
46
  name: bundler
@@ -195,6 +195,7 @@ files:
195
195
  - checksums/4.0.0.sha512
196
196
  - checksums/4.0.1.sha512
197
197
  - checksums/4.0.3.sha512
198
+ - checksums/4.1.0.sha512
198
199
  - lib/active_validators/active_model/validations/barcode_validator.rb
199
200
  - lib/active_validators/active_model/validations/credit_card_validator.rb
200
201
  - lib/active_validators/active_model/validations/date_validator.rb
@@ -249,7 +250,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
249
250
  requirements:
250
251
  - - ">="
251
252
  - !ruby/object:Gem::Version
252
- version: 2.2.2
253
+ version: 2.4.4
253
254
  required_rubygems_version: !ruby/object:Gem::Requirement
254
255
  requirements:
255
256
  - - ">="
@@ -257,7 +258,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
257
258
  version: '0'
258
259
  requirements: []
259
260
  rubyforge_project:
260
- rubygems_version: 2.6.14
261
+ rubygems_version: 3.0.0.beta1
261
262
  signing_key:
262
263
  specification_version: 4
263
264
  summary: Collection of ActiveModel/ActiveRecord validations
metadata.gz.sig CHANGED
Binary file