tracking_number 0.7.0 → 0.8.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 +5 -13
- data/VERSION +1 -1
- data/lib/tracking_number/active_model_validator.rb +2 -2
- data/lib/tracking_number/version.rb +2 -2
- data/test/active_model_validator_test.rb +4 -3
- data/test/dhl_tracking_number_test.rb +2 -2
- data/test/fedex_tracking_number_test.rb +2 -2
- data/test/ontrac_tracking_number_test.rb +1 -1
- data/test/test_helper.rb +2 -2
- data/test/tracking_number_test.rb +1 -1
- data/test/ups_tracking_number_test.rb +2 -2
- data/test/usps_tracking_number_test.rb +1 -1
- data/tracking_number.gemspec +5 -18
- metadata +30 -16
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
MjQ5ZmMwMmY1ZTA4NWNmZjg5YzJmMWNlNWQ3MGZhNDlhNGQ1ZTY4MA==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: a7a9c5677ad09e2aedac157290e596a26bff2fb7
|
4
|
+
data.tar.gz: a922ec482d27dc5fa2740bca7ef9971a7ce2f5cd
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
NDQ3OTBmMGQzZDIxNmIxNDc3ZTZlNzZiN2EzYWZhOTQ5NDJmYWExOWQ4Mjlk
|
11
|
-
ZjI4YzU5NGJhMGY3ZjUwNmQ5OGRhYjRiMWY1ZWQ5ZmRiYmZmYzA=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
YTUzYTAxNzQyM2JhNDY2NTY2YmNmNjk1ZWY4MDMwOWJkODNjOGFlNDRkYjFh
|
14
|
-
ZTVmNWY1YzY0NzQ4NWUzZWU0MTNlZTk0NDNlMGJkZGI0MzA4MTJkMThmYjY0
|
15
|
-
MGZkODI1NjhiOWM0Y2FiNjBhN2E4YTE4ODA1N2E3MTNiM2YxZWQ=
|
6
|
+
metadata.gz: 6e80c241e53d78c3227f4303733c423aff038f4fee9c7116d734c7e3bd92b06a07ffd86021a017db755626d34b0e214fd86e3f51ee78ce1888c269ae083bfe41
|
7
|
+
data.tar.gz: 313f59b1e537cbe5ff0ab0916266ec63828f97b0a9bd1e4fc8194a47dda2276946b59d31cad36f4e268e017a1ff550a972dae4191dfa14933f004f2af8634f5c
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.8.0
|
@@ -1,7 +1,7 @@
|
|
1
1
|
class TrackingNumberValidator < ActiveModel::EachValidator
|
2
2
|
def validate_each(record, attribute, value)
|
3
3
|
return unless value.present?
|
4
|
-
if options[:exception] == value
|
4
|
+
if options[:exception] == value || options[:except] == value
|
5
5
|
# magic valid value (an exception that says "not really shipped" or something)
|
6
6
|
elsif TrackingNumber.new(value).valid?
|
7
7
|
# looks good to me
|
@@ -9,4 +9,4 @@ class TrackingNumberValidator < ActiveModel::EachValidator
|
|
9
9
|
record.errors[attribute] << options[:message] || 'is not a valid tracking number'
|
10
10
|
end
|
11
11
|
end
|
12
|
-
end
|
12
|
+
end
|
@@ -1,3 +1,3 @@
|
|
1
1
|
module TrackingNumber
|
2
|
-
VERSION = "0.
|
3
|
-
end
|
2
|
+
VERSION = "0.8.0"
|
3
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
|
-
class TrackingNumberValidatorTest < Test
|
3
|
+
class TrackingNumberValidatorTest < Minitest::Test
|
4
4
|
class Validatable
|
5
5
|
include ActiveModel::Validations
|
6
6
|
attr_accessor :tracking_number
|
@@ -8,11 +8,12 @@ class TrackingNumberValidatorTest < Test::Unit::TestCase
|
|
8
8
|
validates :tracking_number, :presence => true,
|
9
9
|
:tracking_number => {
|
10
10
|
:exception => 'magic',
|
11
|
+
:except => 'witchcraft',
|
11
12
|
:message => ERROR_MESSAGE
|
12
13
|
}
|
13
14
|
end
|
14
15
|
def test_valid_numbers
|
15
|
-
%w(magic 790535312317).each do |valid_tracking_number|
|
16
|
+
%w(magic witchcraft 790535312317).each do |valid_tracking_number|
|
16
17
|
obj = Validatable.new
|
17
18
|
obj.tracking_number = valid_tracking_number
|
18
19
|
assert obj.valid?, "should allow tracking_number #{valid_tracking_number}"
|
@@ -26,4 +27,4 @@ class TrackingNumberValidatorTest < Test::Unit::TestCase
|
|
26
27
|
assert_equal obj.errors[:tracking_number], [Validatable::ERROR_MESSAGE]
|
27
28
|
end
|
28
29
|
end
|
29
|
-
end
|
30
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
|
-
class DHLTrackingNumberTest < Test
|
3
|
+
class DHLTrackingNumberTest < Minitest::Test
|
4
4
|
context "a DHL tracking number" do
|
5
5
|
["73891051146"].each do |valid_number|
|
6
6
|
should "return dhl for #{valid_number}" do
|
@@ -12,4 +12,4 @@ class DHLTrackingNumberTest < Test::Unit::TestCase
|
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
15
|
-
end
|
15
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
|
-
class FedExTrackingNumberTest < Test
|
3
|
+
class FedExTrackingNumberTest < Minitest::Test
|
4
4
|
context "a FedEx tracking number" do
|
5
5
|
["986578788855", "477179081230", "799531274483", "790535312317", "974367662710"].each do |valid_number|
|
6
6
|
should "return fedex express for #{valid_number}" do
|
@@ -43,4 +43,4 @@ class FedExTrackingNumberTest < Test::Unit::TestCase
|
|
43
43
|
end
|
44
44
|
|
45
45
|
end
|
46
|
-
end
|
46
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
|
-
class OnTracTrackingNumberTest < Test
|
3
|
+
class OnTracTrackingNumberTest < Minitest::Test
|
4
4
|
context "an OnTrac tracking number" do
|
5
5
|
["C11031500001879", "C10999911320231"].each do |valid_number|
|
6
6
|
should "return ontrac for #{valid_number}" do
|
data/test/test_helper.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'simplecov'
|
2
2
|
SimpleCov.start
|
3
3
|
require 'rubygems'
|
4
|
-
require '
|
4
|
+
require 'minitest/autorun'
|
5
5
|
require 'shoulda'
|
6
6
|
require 'active_model'
|
7
7
|
|
@@ -9,7 +9,7 @@ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
|
9
9
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
10
10
|
require 'tracking_number'
|
11
11
|
|
12
|
-
class Test
|
12
|
+
class Minitest::Test
|
13
13
|
def possible_numbers(tracking)
|
14
14
|
tracking = tracking.to_s
|
15
15
|
possible_numbers = []
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
|
-
class UPSTrackingNumberTest < Test
|
3
|
+
class UPSTrackingNumberTest < Minitest::Test
|
4
4
|
context "a UPS tracking number" do
|
5
5
|
["1Z5R89390357567127", "1Z879E930346834440", "1Z410E7W0392751591", "1Z8V92A70367203024"].each do |valid_number|
|
6
6
|
should "return ups with valid number #{valid_number}" do
|
@@ -12,4 +12,4 @@ class UPSTrackingNumberTest < Test::Unit::TestCase
|
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
15
|
-
end
|
15
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
|
-
class USPSTrackingNumberTest < Test
|
3
|
+
class USPSTrackingNumberTest < Minitest::Test
|
4
4
|
context "a USPS tracking number" do
|
5
5
|
["9101 1234 5678 9000 0000 13", "7196 9010 7560 0307 7385", "9400 1112 0108 0805 4830 16"].each do |valid_number|
|
6
6
|
should "return usps with valid 22 digit number: #{valid_number}" do
|
data/tracking_number.gemspec
CHANGED
@@ -25,23 +25,10 @@ Gem::Specification.new do |s|
|
|
25
25
|
s.rubygems_version = %q{1.7.2}
|
26
26
|
s.summary = %q{Identifies valid tracking numbers}
|
27
27
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
34
|
-
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
35
|
-
s.add_development_dependency(%q<activemodel>, [">= 3"])
|
36
|
-
else
|
37
|
-
s.add_dependency(%q<rake>, [">= 0"])
|
38
|
-
s.add_dependency(%q<shoulda>, [">= 0"])
|
39
|
-
s.add_dependency(%q<simplecov>, [">= 0"])
|
40
|
-
end
|
41
|
-
else
|
42
|
-
s.add_dependency(%q<rake>, [">= 0"])
|
43
|
-
s.add_dependency(%q<shoulda>, [">= 0"])
|
44
|
-
s.add_dependency(%q<simplecov>, [">= 0"])
|
45
|
-
end
|
28
|
+
s.add_development_dependency('rake')
|
29
|
+
s.add_development_dependency('shoulda')
|
30
|
+
s.add_development_dependency('simplecov')
|
31
|
+
s.add_development_dependency('activemodel')
|
32
|
+
s.add_development_dependency('minitest')
|
46
33
|
end
|
47
34
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tracking_number
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeff Keen
|
@@ -14,58 +14,72 @@ dependencies:
|
|
14
14
|
name: rake
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :development
|
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: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: shoulda
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
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: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: simplecov
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: activemodel
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: minitest
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
69
83
|
description: Match tracking numbers to a service, and search blocks of text and pull
|
70
84
|
out valid tracking numbers.
|
71
85
|
email: jeff@keen.me
|
@@ -75,8 +89,8 @@ extra_rdoc_files:
|
|
75
89
|
- LICENSE.txt
|
76
90
|
- README.rdoc
|
77
91
|
files:
|
78
|
-
- .document
|
79
|
-
- .gitignore
|
92
|
+
- ".document"
|
93
|
+
- ".gitignore"
|
80
94
|
- Gemfile
|
81
95
|
- LICENSE.txt
|
82
96
|
- README.rdoc
|
@@ -110,19 +124,19 @@ require_paths:
|
|
110
124
|
- lib
|
111
125
|
required_ruby_version: !ruby/object:Gem::Requirement
|
112
126
|
requirements:
|
113
|
-
- -
|
127
|
+
- - ">="
|
114
128
|
- !ruby/object:Gem::Version
|
115
129
|
version: '0'
|
116
130
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
117
131
|
requirements:
|
118
|
-
- -
|
132
|
+
- - ">="
|
119
133
|
- !ruby/object:Gem::Version
|
120
134
|
version: '0'
|
121
135
|
requirements: []
|
122
136
|
rubyforge_project:
|
123
137
|
rubygems_version: 2.2.2
|
124
138
|
signing_key:
|
125
|
-
specification_version:
|
139
|
+
specification_version: 4
|
126
140
|
summary: Identifies valid tracking numbers
|
127
141
|
test_files:
|
128
142
|
- test/active_model_validator_test.rb
|