has_tracking 0.1.0 → 0.1.1
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.
- data/.gitignore +3 -1
- data/Rakefile +1 -0
- data/VERSION +1 -1
- data/has_tracking.gemspec +5 -2
- data/lib/has_tracking.rb +11 -1
- data/test/has_tracking_test.rb +5 -2
- data/test/schema.rb +0 -2
- metadata +13 -4
data/.gitignore
CHANGED
data/Rakefile
CHANGED
@@ -32,6 +32,7 @@ begin
|
|
32
32
|
gemspec.homepage = "http://github.com/zircon/has_tracking"
|
33
33
|
gemspec.authors = ["Erlend Finvåg"]
|
34
34
|
gemspec.has_rdoc = false
|
35
|
+
gemspec.add_dependency("json", ">= 1.0")
|
35
36
|
end
|
36
37
|
rescue LoadError
|
37
38
|
puts "Jeweler not available. Install it with: sudo gem install jeweler"
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.1
|
data/has_tracking.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{has_tracking}
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Erlend Finv\303\245g"]
|
12
|
-
s.date = %q{
|
12
|
+
s.date = %q{2010-01-14}
|
13
13
|
s.description = %q{Adds quick and dirty package tracking for Bring (Posten Norway)}
|
14
14
|
s.email = %q{erlend.finvag@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -48,9 +48,12 @@ Gem::Specification.new do |s|
|
|
48
48
|
s.specification_version = 3
|
49
49
|
|
50
50
|
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
51
|
+
s.add_runtime_dependency(%q<json>, [">= 1.0"])
|
51
52
|
else
|
53
|
+
s.add_dependency(%q<json>, [">= 1.0"])
|
52
54
|
end
|
53
55
|
else
|
56
|
+
s.add_dependency(%q<json>, [">= 1.0"])
|
54
57
|
end
|
55
58
|
end
|
56
59
|
|
data/lib/has_tracking.rb
CHANGED
@@ -24,11 +24,17 @@ class Track
|
|
24
24
|
require "open-uri"
|
25
25
|
buffer = open("http://sporing.bring.no/sporing.json?q=#{number}").read
|
26
26
|
@result = JSON.parse(buffer)["consignmentSet"][0]["packageSet"][0]
|
27
|
+
@exists = true
|
27
28
|
rescue OpenURI::HTTPError
|
29
|
+
@exists = false
|
28
30
|
return false
|
29
31
|
end
|
30
32
|
end
|
31
33
|
|
34
|
+
def exists?
|
35
|
+
return @exists
|
36
|
+
end
|
37
|
+
|
32
38
|
def received?
|
33
39
|
begin
|
34
40
|
if self.events.last["postalcode"].blank?
|
@@ -51,7 +57,11 @@ class Track
|
|
51
57
|
e["description"] = event["description"]
|
52
58
|
events << e
|
53
59
|
end
|
54
|
-
|
60
|
+
if events.length == 0
|
61
|
+
return false
|
62
|
+
else
|
63
|
+
return events.reverse!
|
64
|
+
end
|
55
65
|
end
|
56
66
|
|
57
67
|
def details
|
data/test/has_tracking_test.rb
CHANGED
@@ -8,7 +8,8 @@ class HasTrackingTest < Test::Unit::TestCase
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def test_tracking_should_get_package_details
|
11
|
-
@
|
11
|
+
@package = Package.create(:number => "CH140585246NO")
|
12
|
+
@tracking = @package.track
|
12
13
|
assert_equal 0.9, @tracking.details["weight"]
|
13
14
|
assert_equal 26, @tracking.details["length"]
|
14
15
|
assert_equal 18, @tracking.details["height"]
|
@@ -17,7 +18,8 @@ class HasTrackingTest < Test::Unit::TestCase
|
|
17
18
|
end
|
18
19
|
|
19
20
|
def test_tracking_should_get_package_events
|
20
|
-
@
|
21
|
+
@package = Package.create(:number => "CH140585246NO")
|
22
|
+
@tracking = @package.track
|
21
23
|
assert_equal 4, @tracking.events.length
|
22
24
|
assert_equal "OSLO", @tracking.events.first["city"]
|
23
25
|
assert_equal "0024", @tracking.events.first["postalcode"]
|
@@ -26,6 +28,7 @@ class HasTrackingTest < Test::Unit::TestCase
|
|
26
28
|
end
|
27
29
|
|
28
30
|
def test_tracking_should_get_package_received
|
31
|
+
@package = Package.create(:number => "CH140585246NO")
|
29
32
|
assert_equal true, Package.first.track.received?
|
30
33
|
end
|
31
34
|
end
|
data/test/schema.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: has_tracking
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- "Erlend Finv\xC3\xA5g"
|
@@ -9,10 +9,19 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date:
|
12
|
+
date: 2010-01-14 00:00:00 +00:00
|
13
13
|
default_executable:
|
14
|
-
dependencies:
|
15
|
-
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: json
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: "1.0"
|
24
|
+
version:
|
16
25
|
description: Adds quick and dirty package tracking for Bring (Posten Norway)
|
17
26
|
email: erlend.finvag@gmail.com
|
18
27
|
executables: []
|