credit_card_validations 3.5.1 → 4.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/.travis.yml +6 -2
- data/README.md +5 -5
- data/credit_card_validations.gemspec +10 -3
- data/lib/credit_card_validations/version.rb +1 -1
- data/spec/active_model_spec.rb +9 -9
- data/spec/credit_card_validations_spec.rb +33 -33
- data/spec/factory_spec.rb +2 -2
- data/spec/string_spec.rb +13 -13
- metadata +25 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c947efcf4ef54ace4e9c747430dc75dd1efe0570a260853d8c1eca1963b13ae5
|
4
|
+
data.tar.gz: a69886a9b837c4872b5bac9bed3dbc6a88757424d2b4303a2c5918f68548cd29
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5407b4b003aca97df24c20e5145cb43ab90d7fa6a62b21a953fcd53f4a97d77b1bd4b564a71767c7639ce6b1fcd5e12b51f82a3c32255eeaf87b1f66e0e6474
|
7
|
+
data.tar.gz: 6b472410891b0519878b6894222460e042afae072070a5cc22f4af0fbc7773ab01a19a2f12d61572934bbfa3107a672556c128dfe45cd89490bbd709c7f5fd85
|
data/.travis.yml
CHANGED
@@ -6,6 +6,7 @@ rvm:
|
|
6
6
|
- 2.4.5
|
7
7
|
- 2.5.3
|
8
8
|
- 2.6.3
|
9
|
+
- 3.0.0
|
9
10
|
- jruby-9.1.15.0
|
10
11
|
gemfile:
|
11
12
|
- gemfiles/rails1-4.gemfile
|
@@ -20,9 +21,12 @@ matrix:
|
|
20
21
|
rvm: 2.5.3
|
21
22
|
- gemfile: gemfiles/rails1-4.gemfile
|
22
23
|
rvm: 2.6.3
|
23
|
-
|
24
|
+
- gemfile: gemfiles/rails1-4.gemfile
|
25
|
+
rvm: 3.0.0
|
26
|
+
allow_failures:
|
27
|
+
- rvm: 2.1.10
|
24
28
|
|
25
29
|
before_install:
|
26
30
|
- gem uninstall -v '>= 2' -i $(rvm gemdir)@global -ax bundler || true
|
27
31
|
- gem install bundler -v '< 2'
|
28
|
-
- export BUNDLE_PATH="${TRAVIS_BUILD_DIR}/vendor/bundle"
|
32
|
+
- export BUNDLE_PATH="${TRAVIS_BUILD_DIR}/vendor/bundle"
|
data/README.md
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
# CreditCardValidations
|
2
2
|
|
3
|
-
[](https://travis-ci.org/didww/credit_card_validations)
|
4
4
|
[](https://coveralls.io/r/Fivell/credit_card_validations)
|
5
5
|
[](https://rubygems.org/gems/credit_card_validations)
|
6
|
-
[](http://
|
6
|
+
[](http://didww.mit-license.org)
|
7
7
|
|
8
8
|
|
9
9
|
Gem adds validator to check whether or not a given number actually falls within the ranges of possible numbers prior to performing such verification, and, as such, CreditCardValidations simply verifies that the credit card number provided is well-formed.
|
@@ -55,7 +55,7 @@ The following issuing institutes are accepted:
|
|
55
55
|
|
56
56
|
|
57
57
|
|
58
|
-
The following are supported with
|
58
|
+
The following are supported with plugins
|
59
59
|
|
60
60
|
| Name | Key |
|
61
61
|
--------------------- | ------------|
|
@@ -129,7 +129,7 @@ CreditCardValidations::Detector.delete_brand(:maestro)
|
|
129
129
|
CreditCardValidations::Detector.new(@credit_card_number).valid_luhn?
|
130
130
|
#or
|
131
131
|
CreditCardValidations::Luhn.valid?(@credit_card_number)
|
132
|
-
```
|
132
|
+
```
|
133
133
|
|
134
134
|
### Generate credit card numbers that pass validation
|
135
135
|
|
@@ -140,7 +140,7 @@ CreditCardValidations::Factory.random(:maestro)
|
|
140
140
|
# => "6010430241237266856"
|
141
141
|
```
|
142
142
|
|
143
|
-
### Plugins
|
143
|
+
### Plugins
|
144
144
|
|
145
145
|
```ruby
|
146
146
|
require 'credit_card_validations/plugins/en_route'
|
@@ -10,8 +10,14 @@ Gem::Specification.new do |gem|
|
|
10
10
|
gem.email = ["fedoronchuk@gmail.com"]
|
11
11
|
gem.description = %q{A ruby gem for validating credit card numbers}
|
12
12
|
gem.summary = "gem should be used for credit card numbers validation, card brands detections, luhn checks"
|
13
|
-
gem.homepage = "http://
|
13
|
+
gem.homepage = "http://didww.github.io/credit_card_validations/"
|
14
14
|
gem.license = "MIT"
|
15
|
+
|
16
|
+
gem.metadata = {
|
17
|
+
'bug_tracker_uri' => 'https://github.com/didww/credit_card_validations/issues',
|
18
|
+
'changelog_uri' => 'https://github.com/didww/credit_card_validations/blob/master/Changelog.md',
|
19
|
+
'source_code_uri' => 'https://github.com/didww/credit_card_validations'
|
20
|
+
}
|
15
21
|
|
16
22
|
gem.files = `git ls-files`.split($/)
|
17
23
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
@@ -19,10 +25,11 @@ Gem::Specification.new do |gem|
|
|
19
25
|
gem.require_paths = ["lib"]
|
20
26
|
|
21
27
|
|
22
|
-
gem.add_dependency "activemodel", ">= 3", "<= 6.
|
23
|
-
gem.add_dependency "activesupport", ">= 3", "<= 6.
|
28
|
+
gem.add_dependency "activemodel", ">= 3", "<= 6.2"
|
29
|
+
gem.add_dependency "activesupport", ">= 3", "<= 6.2"
|
24
30
|
|
25
31
|
|
32
|
+
gem.add_development_dependency "minitest", '~> 5.14.3'
|
26
33
|
gem.add_development_dependency "mocha", '1.1.0'
|
27
34
|
gem.add_development_dependency 'rake', '~> 10'
|
28
35
|
|
data/spec/active_model_spec.rb
CHANGED
@@ -9,9 +9,9 @@ describe 'ActiveModel Validator' do
|
|
9
9
|
card = model.dup
|
10
10
|
card.card_type = 'Master Card'
|
11
11
|
card.number6 = CreditCardValidations::Factory.random(:visa)
|
12
|
-
card.valid
|
12
|
+
expect(card.valid?).must_equal false
|
13
13
|
card.number6 = CreditCardValidations::Factory.random(:mastercard)
|
14
|
-
card.valid
|
14
|
+
expect(card.valid?).must_equal true
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
@@ -22,7 +22,7 @@ describe 'ActiveModel Validator' do
|
|
22
22
|
card = model
|
23
23
|
card.number4 = number
|
24
24
|
card.number5 = number
|
25
|
-
card.valid
|
25
|
+
expect(card.valid?).must_equal true
|
26
26
|
end
|
27
27
|
end
|
28
28
|
end
|
@@ -33,8 +33,8 @@ describe 'ActiveModel Validator' do
|
|
33
33
|
VALID_NUMBERS.except(:amex, :maestro).each do |_, numbers|
|
34
34
|
card = model
|
35
35
|
card.number = numbers.first
|
36
|
-
card.valid
|
37
|
-
card.errors[:number].include?(card.errors.generate_message(:number, :invalid)).must_equal true
|
36
|
+
expect(card.valid?).must_equal false
|
37
|
+
expect(card.errors[:number].include?(card.errors.generate_message(:number, :invalid))).must_equal true
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
@@ -42,7 +42,7 @@ describe 'ActiveModel Validator' do
|
|
42
42
|
VALID_NUMBERS.except(:amex, :maestro).each do |_, numbers|
|
43
43
|
card = model
|
44
44
|
card.number3 = numbers.first
|
45
|
-
card.valid
|
45
|
+
expect(card.valid?).must_equal true
|
46
46
|
end
|
47
47
|
end
|
48
48
|
end
|
@@ -53,7 +53,7 @@ describe 'ActiveModel Validator' do
|
|
53
53
|
card = model
|
54
54
|
card.number = numbers.first
|
55
55
|
card.number2 = numbers.first
|
56
|
-
card.valid
|
56
|
+
expect(card.valid?).must_equal true
|
57
57
|
end
|
58
58
|
end
|
59
59
|
end
|
@@ -62,8 +62,8 @@ describe 'ActiveModel Validator' do
|
|
62
62
|
it 'should allow custom message' do
|
63
63
|
card = model
|
64
64
|
card.number7 = 'wrong'
|
65
|
-
card.valid
|
66
|
-
card.errors[:number7].must_equal ['Custom message']
|
65
|
+
expect(card.valid?).must_equal false
|
66
|
+
expect(card.errors[:number7]).must_equal ['Custom message']
|
67
67
|
end
|
68
68
|
end
|
69
69
|
|
@@ -10,7 +10,7 @@ describe CreditCardValidations do
|
|
10
10
|
describe 'MMI' do
|
11
11
|
it 'should detect issuer category' do
|
12
12
|
d = detector(VALID_NUMBERS[:visa].first)
|
13
|
-
d.issuer_category.must_equal CreditCardValidations::Mmi::ISSUER_CATEGORIES[d.number[0]]
|
13
|
+
expect(d.issuer_category).must_equal CreditCardValidations::Mmi::ISSUER_CATEGORIES[d.number[0]]
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
@@ -20,17 +20,17 @@ describe CreditCardValidations do
|
|
20
20
|
}
|
21
21
|
it 'should call Luhn.valid? once' do
|
22
22
|
CreditCardValidations::Luhn.expects(:valid?).with(card_detector.number).once
|
23
|
-
card_detector.valid?(:visa, :unionpay).must_equal true
|
23
|
+
expect(card_detector.valid?(:visa, :unionpay)).must_equal true
|
24
24
|
end
|
25
25
|
|
26
26
|
it 'should call Luhn.valid? twice' do
|
27
27
|
CreditCardValidations::Luhn.expects(:valid?).with(card_detector.number).twice
|
28
|
-
card_detector.valid?(:visa, :mastercard).must_equal false
|
28
|
+
expect(card_detector.valid?(:visa, :mastercard)).must_equal false
|
29
29
|
end
|
30
30
|
|
31
31
|
it 'should not call Luhn.valid?' do
|
32
32
|
CreditCardValidations::Luhn.expects(:valid?).never
|
33
|
-
card_detector.valid?(:unionpay).must_equal true
|
33
|
+
expect(card_detector.valid?(:unionpay)).must_equal true
|
34
34
|
end
|
35
35
|
|
36
36
|
end
|
@@ -40,7 +40,7 @@ describe CreditCardValidations do
|
|
40
40
|
VALID_NUMBERS.each do |brand, card_numbers|
|
41
41
|
if has_luhn_check_rule?(brand)
|
42
42
|
card_numbers.each do |number|
|
43
|
-
luhn_valid?(detector(number).number).must_equal true
|
43
|
+
expect(luhn_valid?(detector(number).number)).must_equal true
|
44
44
|
end
|
45
45
|
end
|
46
46
|
end
|
@@ -49,56 +49,56 @@ describe CreditCardValidations do
|
|
49
49
|
it 'should check valid brand' do
|
50
50
|
VALID_NUMBERS.each do |brand, card_numbers|
|
51
51
|
card_numbers.each do |card_number|
|
52
|
-
detector(card_number).send("#{brand}?").must_equal true
|
53
|
-
detector(card_number).brand.must_equal brand
|
52
|
+
expect(detector(card_number).send("#{brand}?")).must_equal true
|
53
|
+
expect(detector(card_number).brand).must_equal brand
|
54
54
|
end
|
55
55
|
end
|
56
56
|
end
|
57
57
|
|
58
58
|
it 'should check if card invalid' do
|
59
59
|
INVALID_NUMBERS.each do |card_number|
|
60
|
-
detector(card_number).valid
|
61
|
-
detector(card_number).brand.must_be_nil
|
60
|
+
expect(detector(card_number).valid?).must_equal false
|
61
|
+
expect(detector(card_number).brand).must_be_nil
|
62
62
|
VALID_NUMBERS.keys.each do |brand|
|
63
|
-
detector(card_number).send("#{brand}?").must_equal false
|
63
|
+
expect(detector(card_number).send("#{brand}?")).must_equal false
|
64
64
|
end
|
65
65
|
end
|
66
66
|
end
|
67
67
|
|
68
68
|
it 'should detect by full brand name' do
|
69
69
|
amex = CreditCardValidations::Factory.random(:amex)
|
70
|
-
detector(amex).valid?('American Express').must_equal true
|
70
|
+
expect(detector(amex).valid?('American Express')).must_equal true
|
71
71
|
visa = CreditCardValidations::Factory.random(:visa)
|
72
|
-
detector(visa).valid?('American Express').must_equal false
|
72
|
+
expect(detector(visa).valid?('American Express')).must_equal false
|
73
73
|
end
|
74
74
|
|
75
75
|
it 'should support multiple brands for single check' do
|
76
76
|
VALID_NUMBERS.slice(:visa, :mastercard).each do |key, value|
|
77
|
-
detector(value.first).brand(:visa, :mastercard).must_equal key
|
77
|
+
expect(detector(value.first).brand(:visa, :mastercard)).must_equal key
|
78
78
|
end
|
79
79
|
|
80
80
|
VALID_NUMBERS.except(:visa, :mastercard).each do |_, value|
|
81
|
-
detector(value.first).brand(:visa, :mastercard).must_be_nil
|
81
|
+
expect(detector(value.first).brand(:visa, :mastercard)).must_be_nil
|
82
82
|
end
|
83
83
|
end
|
84
84
|
|
85
85
|
it 'should check if valid brand without arguments' do
|
86
86
|
VALID_NUMBERS.each do |key, value|
|
87
87
|
value.each do |card_number|
|
88
|
-
detector(card_number).valid?(key).must_equal true
|
89
|
-
assert detector(card_number).valid
|
88
|
+
expect(detector(card_number).valid?(key)).must_equal true
|
89
|
+
expect(assert detector(card_number).valid?).must_equal true
|
90
90
|
end
|
91
91
|
end
|
92
92
|
end
|
93
93
|
|
94
94
|
it 'should not be valid? if wrong brand' do
|
95
|
-
detector(VALID_NUMBERS[:visa].first).valid?(:mastercard).must_equal false
|
96
|
-
detector(VALID_NUMBERS[:mastercard].first).valid?(:visa).must_equal false
|
95
|
+
expect(detector(VALID_NUMBERS[:visa].first).valid?(:mastercard)).must_equal false
|
96
|
+
expect(detector(VALID_NUMBERS[:mastercard].first).valid?(:visa)).must_equal false
|
97
97
|
end
|
98
98
|
|
99
99
|
it 'should be valid? if right brand' do
|
100
|
-
detector(VALID_NUMBERS[:visa].first).valid?(:mastercard, :visa).must_equal true
|
101
|
-
detector(VALID_NUMBERS[:visa].first).valid?(:mastercard, :amex).must_equal false
|
100
|
+
expect(detector(VALID_NUMBERS[:visa].first).valid?(:mastercard, :visa)).must_equal true
|
101
|
+
expect(detector(VALID_NUMBERS[:visa].first).valid?(:mastercard, :amex)).must_equal false
|
102
102
|
end
|
103
103
|
|
104
104
|
|
@@ -110,9 +110,9 @@ describe CreditCardValidations do
|
|
110
110
|
|
111
111
|
it 'should validate number as voyager' do
|
112
112
|
CreditCardValidations::Detector.add_brand(:voyager, length: 15, prefixes: '86')
|
113
|
-
detector(voyager_number).valid?(:voyager).must_equal true
|
114
|
-
detector(voyager_number).voyager
|
115
|
-
detector(voyager_number).brand.must_equal :voyager
|
113
|
+
expect(detector(voyager_number).valid?(:voyager)).must_equal true
|
114
|
+
expect(detector(voyager_number).voyager?).must_equal true
|
115
|
+
expect(detector(voyager_number).brand).must_equal :voyager
|
116
116
|
end
|
117
117
|
|
118
118
|
describe 'Add voyager rule' do
|
@@ -121,9 +121,9 @@ describe CreditCardValidations do
|
|
121
121
|
end
|
122
122
|
|
123
123
|
it 'should validate number as voyager' do
|
124
|
-
detector(voyager_number).valid?(:voyager).must_equal true
|
125
|
-
detector(voyager_number).voyager
|
126
|
-
detector(voyager_number).brand.must_equal :voyager
|
124
|
+
expect(detector(voyager_number).valid?(:voyager)).must_equal true
|
125
|
+
expect(detector(voyager_number).voyager?).must_equal true
|
126
|
+
expect(detector(voyager_number).brand).must_equal :voyager
|
127
127
|
end
|
128
128
|
|
129
129
|
describe 'Remove voyager rule' do
|
@@ -132,8 +132,8 @@ describe CreditCardValidations do
|
|
132
132
|
end
|
133
133
|
|
134
134
|
it 'should not validate number as voyager' do
|
135
|
-
detector(voyager_number).respond_to?(:voyager?).must_equal false
|
136
|
-
detector(voyager_number).brand.must_be_nil
|
135
|
+
expect(detector(voyager_number).respond_to?(:voyager?)).must_equal false
|
136
|
+
expect(detector(voyager_number).brand).must_be_nil
|
137
137
|
end
|
138
138
|
end
|
139
139
|
end
|
@@ -142,20 +142,20 @@ describe CreditCardValidations do
|
|
142
142
|
describe 'plugins' do
|
143
143
|
[:diners_us, :en_route, :laser].each do |brand|
|
144
144
|
it "should support #{brand}" do
|
145
|
-
-> { CreditCardValidations::Factory.random(brand) }.
|
145
|
+
expect(-> { CreditCardValidations::Factory.random(brand) }).
|
146
146
|
must_raise(CreditCardValidations::Error)
|
147
147
|
custom_number = 'some_number'
|
148
|
-
detector(custom_number).respond_to?("#{brand}?").must_equal false
|
148
|
+
expect(detector(custom_number).respond_to?("#{brand}?")).must_equal false
|
149
149
|
require "credit_card_validations/plugins/#{brand}"
|
150
150
|
number = CreditCardValidations::Factory.random(brand)
|
151
|
-
detector(number).valid?("#{brand}".to_sym).must_equal true
|
152
|
-
detector(custom_number).respond_to?("#{brand}?").must_equal true
|
151
|
+
expect(detector(number).valid?("#{brand}".to_sym)).must_equal true
|
152
|
+
expect(detector(custom_number).respond_to?("#{brand}?")).must_equal true
|
153
153
|
end
|
154
154
|
end
|
155
155
|
end
|
156
156
|
|
157
157
|
it 'should raise Error if no brand added before' do
|
158
|
-
-> { CreditCardValidations::Detector::add_rule(:undefined_brand, 20, [20]) }.
|
158
|
+
expect(-> { CreditCardValidations::Detector::add_rule(:undefined_brand, 20, [20]) }).
|
159
159
|
must_raise(CreditCardValidations::Error)
|
160
160
|
end
|
161
161
|
end
|
data/spec/factory_spec.rb
CHANGED
@@ -4,14 +4,14 @@ describe CreditCardValidations::Factory do
|
|
4
4
|
|
5
5
|
it 'should generate random brand' do
|
6
6
|
number = CreditCardValidations::Factory.random
|
7
|
-
CreditCardValidations::Detector.new(number).valid
|
7
|
+
expect(CreditCardValidations::Detector.new(number).valid?).must_equal true
|
8
8
|
end
|
9
9
|
|
10
10
|
CreditCardValidations::Detector.brands.keys.sort.each do |key|
|
11
11
|
describe "#{key}" do
|
12
12
|
it "should generate valid #{key}" do
|
13
13
|
number = CreditCardValidations::Factory.random(key)
|
14
|
-
CreditCardValidations::Detector.new(number).valid?(key).must_equal true
|
14
|
+
expect(CreditCardValidations::Detector.new(number).valid?(key)).must_equal true
|
15
15
|
end
|
16
16
|
end
|
17
17
|
end
|
data/spec/string_spec.rb
CHANGED
@@ -8,25 +8,25 @@ describe 'String ext' do
|
|
8
8
|
let(:invalid) { INVALID_NUMBERS.sample }
|
9
9
|
|
10
10
|
it 'should allow detect brand for mastercard' do
|
11
|
-
mastercard.credit_card_brand.must_equal :mastercard
|
12
|
-
mastercard.credit_card_brand_name.must_equal 'MasterCard'
|
13
|
-
mastercard.valid_credit_card_brand?(:mastercard).must_equal true
|
14
|
-
mastercard.valid_credit_card_brand?('MasterCard').must_equal true
|
15
|
-
mastercard.valid_credit_card_brand?(:visa, :amex).must_equal false
|
11
|
+
expect(mastercard.credit_card_brand).must_equal :mastercard
|
12
|
+
expect(mastercard.credit_card_brand_name).must_equal 'MasterCard'
|
13
|
+
expect(mastercard.valid_credit_card_brand?(:mastercard)).must_equal true
|
14
|
+
expect(mastercard.valid_credit_card_brand?('MasterCard')).must_equal true
|
15
|
+
expect(mastercard.valid_credit_card_brand?(:visa, :amex)).must_equal false
|
16
16
|
end
|
17
17
|
|
18
18
|
it 'should allow detect brand for visa' do
|
19
|
-
visa.credit_card_brand.must_equal :visa
|
20
|
-
visa.credit_card_brand_name.must_equal 'Visa'
|
21
|
-
visa.valid_credit_card_brand?(:mastercard).must_equal false
|
22
|
-
visa.valid_credit_card_brand?(:visa, :amex).must_equal true
|
19
|
+
expect(visa.credit_card_brand).must_equal :visa
|
20
|
+
expect(visa.credit_card_brand_name).must_equal 'Visa'
|
21
|
+
expect(visa.valid_credit_card_brand?(:mastercard)).must_equal false
|
22
|
+
expect(visa.valid_credit_card_brand?(:visa, :amex)).must_equal true
|
23
23
|
end
|
24
24
|
|
25
25
|
it 'should not allow detect brand for invalid card' do
|
26
|
-
invalid.credit_card_brand.must_be_nil
|
27
|
-
invalid.credit_card_brand_name.must_be_nil
|
28
|
-
invalid.valid_credit_card_brand?(:mastercard).must_equal false
|
29
|
-
invalid.valid_credit_card_brand?(:visa, :amex).must_equal false
|
26
|
+
expect(invalid.credit_card_brand).must_be_nil
|
27
|
+
expect(invalid.credit_card_brand_name).must_be_nil
|
28
|
+
expect(invalid.valid_credit_card_brand?(:mastercard)).must_equal false
|
29
|
+
expect(invalid.valid_credit_card_brand?(:visa, :amex)).must_equal false
|
30
30
|
end
|
31
31
|
|
32
32
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: credit_card_validations
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Igor
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-03-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemodel
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: '3'
|
20
20
|
- - "<="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: '6.
|
22
|
+
version: '6.2'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,7 +29,7 @@ dependencies:
|
|
29
29
|
version: '3'
|
30
30
|
- - "<="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '6.
|
32
|
+
version: '6.2'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: activesupport
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
version: '3'
|
40
40
|
- - "<="
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version: '6.
|
42
|
+
version: '6.2'
|
43
43
|
type: :runtime
|
44
44
|
prerelease: false
|
45
45
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -49,7 +49,21 @@ dependencies:
|
|
49
49
|
version: '3'
|
50
50
|
- - "<="
|
51
51
|
- !ruby/object:Gem::Version
|
52
|
-
version: '6.
|
52
|
+
version: '6.2'
|
53
|
+
- !ruby/object:Gem::Dependency
|
54
|
+
name: minitest
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
56
|
+
requirements:
|
57
|
+
- - "~>"
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: 5.14.3
|
60
|
+
type: :development
|
61
|
+
prerelease: false
|
62
|
+
version_requirements: !ruby/object:Gem::Requirement
|
63
|
+
requirements:
|
64
|
+
- - "~>"
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: 5.14.3
|
53
67
|
- !ruby/object:Gem::Dependency
|
54
68
|
name: mocha
|
55
69
|
requirement: !ruby/object:Gem::Requirement
|
@@ -117,10 +131,13 @@ files:
|
|
117
131
|
- spec/models/credit_card.rb
|
118
132
|
- spec/string_spec.rb
|
119
133
|
- spec/test_helper.rb
|
120
|
-
homepage: http://
|
134
|
+
homepage: http://didww.github.io/credit_card_validations/
|
121
135
|
licenses:
|
122
136
|
- MIT
|
123
|
-
metadata:
|
137
|
+
metadata:
|
138
|
+
bug_tracker_uri: https://github.com/didww/credit_card_validations/issues
|
139
|
+
changelog_uri: https://github.com/didww/credit_card_validations/blob/master/Changelog.md
|
140
|
+
source_code_uri: https://github.com/didww/credit_card_validations
|
124
141
|
post_install_message:
|
125
142
|
rdoc_options: []
|
126
143
|
require_paths:
|