has_tracking 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,2 +1,4 @@
1
1
  test/*.log
2
- test/*.db
2
+ test/*.db
3
+ pkg/*
4
+ *.gem
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.0
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.0"
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{2009-11-30}
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
- return events.reverse!
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
@@ -8,7 +8,8 @@ class HasTrackingTest < Test::Unit::TestCase
8
8
  end
9
9
 
10
10
  def test_tracking_should_get_package_details
11
- @tracking = Package.first.track
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
- @tracking = Package.first.track
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
@@ -2,6 +2,4 @@ ActiveRecord::Schema.define(:version => 0) do
2
2
  create_table :packages, :force => true do |t|
3
3
  t.string :number
4
4
  end
5
-
6
- Package.create(:number => "CH140585246NO")
7
5
  end
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.0
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: 2009-11-30 00:00:00 +00:00
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: []