pactrack 0.0.3

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.
@@ -0,0 +1,17 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format specdoc
2
+ --color
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in pactrack.gemspec
4
+ gemspec
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 Andreas Bodén
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,40 @@
1
+ # Pactrack
2
+
3
+ Ruby API Wrapper for the Swedish postal service
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ gem 'pactrack'
10
+
11
+ And then execute:
12
+
13
+ $ bundle
14
+
15
+ Or install it yourself as:
16
+
17
+ $ gem install pactrack
18
+
19
+ ## Usage
20
+
21
+ # Get a list of all events
22
+ puts Pactrack::Package.new('87323423640SE').events;
23
+
24
+ # Get weight of package
25
+ puts Pactrack::Package.new('87323423640SE').weight;
26
+
27
+ # Get status as string
28
+ puts Pactrack::Package.new('87323423640SE').status;
29
+
30
+
31
+
32
+
33
+
34
+ ## Contributing
35
+
36
+ 1. Fork it
37
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
38
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
39
+ 4. Push to the branch (`git push origin my-new-feature`)
40
+ 5. Create new Pull Request
@@ -0,0 +1,9 @@
1
+ require "bundler/gem_tasks"
2
+ require 'rake/testtask'
3
+
4
+ Rake::TestTask.new do |t|
5
+ t.test_files = FileList['spec/*_spec.rb']
6
+ t.verbose = true
7
+ end
8
+
9
+ task :default => :test
@@ -0,0 +1,44 @@
1
+ require "pactrack/version"
2
+ require "httparty"
3
+
4
+ module Pactrack
5
+ class Package
6
+ attr_accessor :id
7
+ include HTTParty
8
+ base_uri 'http://server.logistik.posten.se/servlet/PacTrack'
9
+
10
+ def initialize(id)
11
+ self.id = id
12
+ end
13
+
14
+ def parcel(force = false)
15
+ force ? @parcel = get_parcel : @parcel||= get_parcel
16
+ end
17
+
18
+ def events
19
+ parcel['event']
20
+ end
21
+
22
+ def weight
23
+ parcel['actualweight']
24
+ end
25
+
26
+ def status
27
+ parcel['statusdescription']
28
+ end
29
+
30
+ def method_missing(name, *args, &block)
31
+ if parcel.has_key?(name.to_s)
32
+ parcel[name.to_s]
33
+ else
34
+ super
35
+ end
36
+ end
37
+
38
+ private
39
+ def get_parcel
40
+ self.class.get('?lang=SE&kolliid=' + id)['pactrack']['body']['parcel']
41
+ end
42
+
43
+ end
44
+ end
@@ -0,0 +1,3 @@
1
+ module Pactrack
2
+ VERSION = "0.0.3"
3
+ end
@@ -0,0 +1,27 @@
1
+ # -*- encoding: utf-8 -*-
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'pactrack/version'
5
+
6
+ Gem::Specification.new do |gem|
7
+ gem.name = "pactrack"
8
+ gem.version = Pactrack::VERSION
9
+ gem.authors = ["Andreas Bodén"]
10
+ gem.email = ["andreasboden7@gmail.com"]
11
+ gem.description = "Ruby API Wrapper for the Swedish postal service"
12
+ gem.summary = "Ruby API Wrapper for the Swedish postal service"
13
+ gem.homepage = ""
14
+ gem.license = "MIT"
15
+
16
+ gem.files = `git ls-files`.split($/)
17
+ gem.executables = gem.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
19
+ gem.require_paths = ["lib"]
20
+
21
+ gem.add_development_dependency "minitest"
22
+ gem.add_development_dependency "webmock"
23
+ gem.add_development_dependency "vcr"
24
+ gem.add_development_dependency "turn"
25
+ gem.add_development_dependency "rake"
26
+ gem.add_runtime_dependency "httparty"
27
+ end
@@ -0,0 +1,95 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://server.logistik.posten.se/servlet/PacTrack?kolliid=69118566702SE&lang=SE
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ Server:
16
+ - Apache-Coyote/1.1
17
+ X-Powered-By:
18
+ - ! 'Servlet 2.4; JBoss-4.3.0.GA (build: SVNTag=JBPAPP_4_3_0_GA date=200801031548)/Tomcat-5.5'
19
+ Content-Type:
20
+ - text/xml;charset=ISO-8859-1
21
+ Date:
22
+ - Tue, 15 Jan 2013 12:22:50 GMT
23
+ Content-Length:
24
+ - '2737'
25
+ Proxy-Connection:
26
+ - Keep-Alive
27
+ Connection:
28
+ - Keep-Alive
29
+ body:
30
+ encoding: ASCII-8BIT
31
+ string: !binary |-
32
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSIgc3Rh
33
+ bmRhbG9uZT0ieWVzIj8+CjxwYWN0cmFjayB2ZXJzaW9uPSIyLjAiIGRhdGU9
34
+ IlR1ZSBKYW4gMTUgMTM6MjI6NTAgQ0VUIDIwMTMiIHNpemU9IjI3MzUiIGxh
35
+ bmc9IlNFIiA+CjxoZWFkZXI+Cjxub29mcGFyY2VsZW50cmllcz4xPC9ub29m
36
+ cGFyY2VsZW50cmllcz4KPG5vb2Z1bmlxdWVwYXJjZWxzPjE8L25vb2Z1bmlx
37
+ dWVwYXJjZWxzPgo8L2hlYWRlcj4KPGJvZHk+CjxwYXJjZWwgaWQ9IjY5MTE4
38
+ NTY2NzAyU0UiPgogIDxjdXN0b21lcnJlZj5XOTU0NjcxPC9jdXN0b21lcnJl
39
+ Zj4KICA8aW50ZXJuYWxzdGF0dXM+MTwvaW50ZXJuYWxzdGF0dXM+CiAgPGN1
40
+ c3RvbWVybm8+NDE1NTA0NzAwNjwvY3VzdG9tZXJubz4KICA8Y3VzdG9tZXJu
41
+ YW1lPkFsaW5hIFN5c3RlbXMgQUI8L2N1c3RvbWVybmFtZT4KICA8c3RhdHVz
42
+ Y29kZT42PC9zdGF0dXNjb2RlPgogIDxzdGF0dXNkZXNjcmlwdGlvbj5Bbmtv
43
+ bXN0IHV0bORtbmluZ3NzdORsbGU8L3N0YXR1c2Rlc2NyaXB0aW9uPgogIDxz
44
+ ZXJ2aWNlY29kZT4xOTwvc2VydmljZWNvZGU+CiAgPHNlcnZpY2VuYW1lPk15
45
+ UGFjazwvc2VydmljZW5hbWU+CiAgPHJlY2VpdmVyemlwY29kZT45MzAxMDwv
46
+ cmVjZWl2ZXJ6aXBjb2RlPgogIDxyZWNlaXZlcmNpdHk+TNZWxU5HRVI8L3Jl
47
+ Y2VpdmVyY2l0eT4KICA8ZGF0ZXNlbnQ+MjAxMzAxMDk8L2RhdGVzZW50Pgog
48
+ IDxkYXRlZGVsaXZlcmVkPjwvZGF0ZWRlbGl2ZXJlZD4KICA8YWN0dWFsd2Vp
49
+ Z2h0PjAuMjwvYWN0dWFsd2VpZ2h0Pgo8ZXh0cmFzZXJ2aWNlPgogIDxjb2Rl
50
+ PjY4PC9jb2RlPgogIDxuYW1lPlNNUy1hdmlzZXJpbmc8L25hbWU+CjwvZXh0
51
+ cmFzZXJ2aWNlPgo8ZXZlbnQ+CiAgPGRhdGU+MjAxMzAxMDk8L2RhdGU+CiAg
52
+ PHRpbWU+MTM0ODwvdGltZT4KICA8aWQ+MDwvaWQ+CiAgPHR5cGU+SzwvdHlw
53
+ ZT4KICA8bG9jYXRpb24+UG9zdGVuPC9sb2NhdGlvbj4KICA8Y29kZT42PC9j
54
+ b2RlPgogIDxkZXNjcmlwdGlvbj5FbGVrdHJvbmlzayBm9nJoYW5kc2luZm9y
55
+ bWF0aW9uIG1vdHRhZ2VuPC9kZXNjcmlwdGlvbj4KPC9ldmVudD4KPGV2ZW50
56
+ PgogIDxkYXRlPjIwMTMwMTA5PC9kYXRlPgogIDx0aW1lPjIwNTc8L3RpbWU+
57
+ CiAgPGlkPjEyNjwvaWQ+CiAgPHR5cGU+VDwvdHlwZT4KICA8bG9jYXRpb24+
58
+ U3RvY2tob2xtPC9sb2NhdGlvbj4KICA8Y29kZT4yMDwvY29kZT4KICA8ZGVz
59
+ Y3JpcHRpb24+U29ydGVyYWQ8L2Rlc2NyaXB0aW9uPgo8L2V2ZW50Pgo8ZXZl
60
+ bnQ+CiAgPGRhdGU+MjAxMzAxMTA8L2RhdGU+CiAgPHRpbWU+MDgzOTwvdGlt
61
+ ZT4KICA8aWQ+OTAxPC9pZD4KICA8dHlwZT5UPC90eXBlPgogIDxsb2NhdGlv
62
+ bj5VbWXlPC9sb2NhdGlvbj4KICA8Y29kZT4yMjwvY29kZT4KICA8ZGVzY3Jp
63
+ cHRpb24+U29ydGVyYWQ8L2Rlc2NyaXB0aW9uPgo8L2V2ZW50Pgo8ZXZlbnQ+
64
+ CiAgPGRhdGU+MjAxMzAxMTE8L2RhdGU+CiAgPHRpbWU+MDkyNzwvdGltZT4K
65
+ ICA8aWQ+OTYwMTMxPC9pZD4KICA8dHlwZT5CPC90eXBlPgogIDxsb2NhdGlv
66
+ bj5Qb3N0ZW4gU2tlbGxlZnRl5TwvbG9jYXRpb24+CiAgPGNvZGU+NDA8L2Nv
67
+ ZGU+CiAgPGRlc2NyaXB0aW9uPkb2cnPkbmRlbHNlbiBoYXIga29tbWl0IHRp
68
+ bGwgUG9zdGVucyBzZXJ2aWNlc3TkbGxlPC9kZXNjcmlwdGlvbj4KPC9ldmVu
69
+ dD4KPGV2ZW50PgogIDxkYXRlPjIwMTMwMTExPC9kYXRlPgogIDx0aW1lPjIy
70
+ MTg8L3RpbWU+CiAgPGlkPjkwMTwvaWQ+CiAgPHR5cGU+VDwvdHlwZT4KICA8
71
+ bG9jYXRpb24+VW1l5TwvbG9jYXRpb24+CiAgPGNvZGU+MjI8L2NvZGU+CiAg
72
+ PGRlc2NyaXB0aW9uPlNvcnRlcmFkPC9kZXNjcmlwdGlvbj4KPC9ldmVudD4K
73
+ PGV2ZW50PgogIDxkYXRlPjIwMTMwMTEyPC9kYXRlPgogIDx0aW1lPjAyMTg8
74
+ L3RpbWU+CiAgPGlkPjkwMTwvaWQ+CiAgPHR5cGU+VDwvdHlwZT4KICA8bG9j
75
+ YXRpb24+VW1l5TwvbG9jYXRpb24+CiAgPGNvZGU+MjI8L2NvZGU+CiAgPGRl
76
+ c2NyaXB0aW9uPlNvcnRlcmFkPC9kZXNjcmlwdGlvbj4KPC9ldmVudD4KPGV2
77
+ ZW50PgogIDxkYXRlPjIwMTMwMTE0PC9kYXRlPgogIDx0aW1lPjA5MjY8L3Rp
78
+ bWU+CiAgPGlkPjk2MDQ3MDwvaWQ+CiAgPHR5cGU+QjwvdHlwZT4KICA8bG9j
79
+ YXRpb24+T0tROCBM9nblbmdlcjwvbG9jYXRpb24+CiAgPGNvZGU+NDA8L2Nv
80
+ ZGU+CiAgPGRlc2NyaXB0aW9uPkb2cnPkbmRlbHNlbiBoYXIga29tbWl0IHRp
81
+ bGwgUG9zdGVucyBzZXJ2aWNlc3TkbGxlPC9kZXNjcmlwdGlvbj4KPC9ldmVu
82
+ dD4KPGV2ZW50PgogIDxkYXRlPjIwMTMwMTE0PC9kYXRlPgogIDx0aW1lPjEw
83
+ MDE8L3RpbWU+CiAgPGlkPjM8L2lkPgogIDx0eXBlPlQ8L3R5cGU+CiAgPGxv
84
+ Y2F0aW9uPlBvc3RlbjwvbG9jYXRpb24+CiAgPGNvZGU+ODA8L2NvZGU+CiAg
85
+ PGRlc2NyaXB0aW9uPlNNUy1hdmlzZXJpbmcgaGFyIGxldmVyZXJhdHMgdGls
86
+ bCBtb3R0YWdhcmVuPC9kZXNjcmlwdGlvbj4KPC9ldmVudD4KPGVycm9yZXZl
87
+ bnQ+CiAgPGRhdGU+MjAxMzAxMTE8L2RhdGU+CiAgPHRpbWU+MDkyNzwvdGlt
88
+ ZT4KICA8aWQ+OTYwMTMxPC9pZD4KICA8dHlwZT5CPC90eXBlPgogIDxsb2Nh
89
+ dGlvbj5Qb3N0ZW4gU2tlbGxlZnRl5TwvbG9jYXRpb24+CiAgPGNvZGU+NjMy
90
+ PC9jb2RlPgogIDxkZXNjcmlwdGlvbj5GZWxzb3J0ZXJhdC4gRvZyc+RuZGVs
91
+ c2VuIGb2cnNlbmFzPC9kZXNjcmlwdGlvbj4KPC9lcnJvcmV2ZW50Pgo8L3Bh
92
+ cmNlbD4KPC9ib2R5Pgo8Zm9vdGVyLz4KPC9wYWN0cmFjaz4NCg==
93
+ http_version:
94
+ recorded_at: Tue, 15 Jan 2013 12:22:50 GMT
95
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,81 @@
1
+ require_relative './spec_helper'
2
+
3
+ describe "init" do
4
+
5
+ before do
6
+ VCR.insert_cassette 'base', :record => :new_episodes
7
+ end
8
+ after do
9
+ VCR.eject_cassette
10
+ end
11
+
12
+ describe "default instance attributes" do
13
+ let(:package) { Pactrack::Package.new('69118566702SE') }
14
+ it "must have an id attribute" do
15
+ package.must_respond_to :id
16
+ end
17
+ it "must have the right id" do
18
+ package.id.must_equal '69118566702SE'
19
+ end
20
+ end
21
+
22
+ describe "dynamic attributes" do
23
+ let(:package) { Pactrack::Package.new('69118566702SE') }
24
+ it "must return the attribute value if present in profile" do
25
+ package.customerno.must_equal '4155047006'
26
+ end
27
+ it "must raise method missing if attribute is not present" do
28
+ lambda { package.foo_attribute }.must_raise NoMethodError
29
+ end
30
+ end
31
+
32
+ describe "caching" do
33
+ let(:package) { Pactrack::Package.new('69118566702SE') }
34
+ before do
35
+ package.parcel
36
+ stub_request(:any, "http://server.logistik.posten.se/servlet/PacTrack?lang=SE&kolliid=69118566702SE").to_timeout
37
+ end
38
+ it "must cache the profile" do
39
+ package.parcel.must_be_instance_of Hash
40
+ end
41
+ it "must refresh the profile if forced" do
42
+ lambda { package.parcel(true) }.must_raise Timeout::Error
43
+ end
44
+ end
45
+
46
+ describe "nice attributes" do
47
+ let(:package) { Pactrack::Package.new('69118566702SE') }
48
+ it "must return events attribute that equals event attribute" do
49
+ package.events.must_equal package.event
50
+ end
51
+ it "must return weight attribute that equals actualweight attribute" do
52
+ package.weight.must_equal package.actualweight
53
+ end
54
+ it "must return status attribute that equals statusdescription attribute" do
55
+ package.status.must_equal package.statusdescription
56
+ end
57
+ end
58
+
59
+ describe "Get Package" do
60
+ let(:package) { Pactrack::Package.new('69118566702SE') }
61
+ it "must have a parcel method" do
62
+ package.must_respond_to :parcel
63
+ end
64
+ it "must parse the api response from XML to Hash" do
65
+ package.parcel.must_be_instance_of Hash
66
+ end
67
+ it "must get the right parcel" do
68
+ package.parcel['id'].must_equal '69118566702SE'
69
+ end
70
+ end
71
+
72
+ describe Pactrack::Package do
73
+ it "must have the base url set to the Package API endpoint" do
74
+ Pactrack::Package.base_uri.must_equal 'http://server.logistik.posten.se/servlet/PacTrack'
75
+ end
76
+ it "must include httparty methods" do
77
+ Pactrack::Package.must_include HTTParty
78
+ end
79
+ end
80
+
81
+ end
@@ -0,0 +1,19 @@
1
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
+ require 'pactrack'
3
+ require 'minitest/autorun'
4
+ require 'webmock/minitest'
5
+ require 'webmock/test_unit'
6
+ require 'vcr'
7
+ require 'turn'
8
+
9
+ Turn.config do |c|
10
+ c.format = :outline
11
+ c.trace = true
12
+ c.natural = true
13
+ end
14
+
15
+
16
+ VCR.configure do |c|
17
+ c.cassette_library_dir = 'spec/fixtures/pactrack_cassettes'
18
+ c.hook_into :webmock
19
+ end
metadata ADDED
@@ -0,0 +1,157 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pactrack
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.3
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Andreas Bodén
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-01-15 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: minitest
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: webmock
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: vcr
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: turn
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: rake
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: httparty
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ type: :runtime
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ description: Ruby API Wrapper for the Swedish postal service
111
+ email:
112
+ - andreasboden7@gmail.com
113
+ executables: []
114
+ extensions: []
115
+ extra_rdoc_files: []
116
+ files:
117
+ - .gitignore
118
+ - .rspec
119
+ - Gemfile
120
+ - LICENSE.txt
121
+ - README.md
122
+ - Rakefile
123
+ - lib/pactrack.rb
124
+ - lib/pactrack/version.rb
125
+ - pactrack.gemspec
126
+ - spec/fixtures/pactrack_cassettes/base.yml
127
+ - spec/pactrack_spec.rb
128
+ - spec/spec_helper.rb
129
+ homepage: ''
130
+ licenses:
131
+ - MIT
132
+ post_install_message:
133
+ rdoc_options: []
134
+ require_paths:
135
+ - lib
136
+ required_ruby_version: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ required_rubygems_version: !ruby/object:Gem::Requirement
143
+ none: false
144
+ requirements:
145
+ - - ! '>='
146
+ - !ruby/object:Gem::Version
147
+ version: '0'
148
+ requirements: []
149
+ rubyforge_project:
150
+ rubygems_version: 1.8.24
151
+ signing_key:
152
+ specification_version: 3
153
+ summary: Ruby API Wrapper for the Swedish postal service
154
+ test_files:
155
+ - spec/fixtures/pactrack_cassettes/base.yml
156
+ - spec/pactrack_spec.rb
157
+ - spec/spec_helper.rb