postnord 0.3.0 → 1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2550e4ba78facd2f6fb1413507ef6b1221a78d2c38051f66236567bd69d66b97
4
- data.tar.gz: 2a5fa455c2103198b8d0eea794f882eca63709c681c317213ef4942390826d87
3
+ metadata.gz: efbb94922821893e0064515ac73d715223091827c6eeedb3582f0ae0d09ba424
4
+ data.tar.gz: 6514fe300a663b340bff90b85f12be7cbd3124a7973a240f424d77c4e2242124
5
5
  SHA512:
6
- metadata.gz: d6fc2b5141a707845ae7f6a515afaa033e8134408487df2b5844e426884010080c55a2a7b3488e285143b32f670ab1be5dd05271c7a754340a5f23e9c947afd0
7
- data.tar.gz: bc1aad93c2ac14c0991e1e273fdd20d177739963a206f282acdcb715678a1561071415ca85852e2e32c46bc6e63113926c55bed628d0cf2aa83231ba3c8d7c5c
6
+ metadata.gz: b4cf493d897ee0cd3adf167b36c0a2188bce2f48bb71bfd711ddaf2537d4a6eae3dc126a2eb8a66852f4f405e4b3b6e81879d10809d145bebd2cef1c02e9acac
7
+ data.tar.gz: fac89cecc8067a8a999f7bb972179c6f3c92b0f2d821491d13b8c27602ed1e8530b2cc99e2fcee473b4d039383897ab2048f9634f1d709c12a570eaaf58e4f9c
data/lib/postnord/base.rb CHANGED
@@ -9,7 +9,7 @@ module Postnord
9
9
  end
10
10
 
11
11
  def self.client
12
- @client ||= Client.new
12
+ @client ||= Client.new(options)
13
13
  end
14
14
 
15
15
  private
@@ -23,15 +23,19 @@ module Postnord
23
23
  end
24
24
 
25
25
  def self.action
26
- self.name.split('::').last.tap { |e| e[0] = e[0].downcase }
26
+ self.name.split("::").last.tap { |e| e[0] = e[0].downcase }
27
27
  end
28
28
 
29
29
  def self.mandatory_params
30
- fail NotImplementedError, 'mandatory_params'
30
+ fail NotImplementedError, "mandatory_params"
31
31
  end
32
32
 
33
33
  def self.endpoint
34
- fail NotImplementedError, 'endpoint'
34
+ fail NotImplementedError, "endpoint"
35
+ end
36
+
37
+ def self.options
38
+ {}
35
39
  end
36
40
  end
37
41
  end
@@ -6,7 +6,11 @@ module Postnord
6
6
  @api_key = options[:api_key] || Config.api_key
7
7
  @api_endpoint = options[:api_endpoint] || Config.api_endpoint
8
8
  @locale = options[:locale] || Config.locale
9
- @return_type = options[:return_type] || Config.return_type
9
+ @return_type = if options.has_key?(:return_type)
10
+ options[:return_type]
11
+ else
12
+ Config.return_type
13
+ end
10
14
  end
11
15
 
12
16
  def do_request(service, endpoint, params={})
@@ -27,13 +31,13 @@ module Postnord
27
31
  private
28
32
 
29
33
  def build_uri(service, endpoint)
30
- URI(
31
- @api_endpoint +
32
- '/' + service +
33
- '/' + @api_version +
34
- '/' + endpoint +
35
- '.' + @return_type
36
- )
34
+ url = @api_endpoint +
35
+ "/" + service +
36
+ "/" + @api_version +
37
+ "/" + endpoint
38
+ url += "." + @return_type if @return_type
39
+
40
+ URI(url)
37
41
  end
38
42
  end
39
43
  end
@@ -12,6 +12,27 @@ module Postnord
12
12
  end
13
13
  end
14
14
 
15
+ class AddressToAddress < Transport
16
+ def self.mandatory_params
17
+ [
18
+ "startTime",
19
+ "serviceGroup",
20
+ "originPostCode",
21
+ "originCountryCode",
22
+ "destinationPostCode",
23
+ "destinationCountryCode",
24
+ ]
25
+ end
26
+
27
+ def self.action
28
+ self.name.split('::').last.downcase
29
+ end
30
+
31
+ def self.options
32
+ { return_type: nil }
33
+ end
34
+ end
35
+
15
36
  class GetTransitTimeInformation < Transport
16
37
  def self.mandatory_params
17
38
  [
@@ -1,3 +1,3 @@
1
1
  module Postnord
2
- VERSION = "0.3.0"
2
+ VERSION = "1.0.0"
3
3
  end
data/postnord.gemspec CHANGED
@@ -1,7 +1,7 @@
1
1
  # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
2
+ lib = File.expand_path("../lib", __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'postnord/version'
4
+ require "postnord/version"
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "postnord"
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
9
9
  spec.authors = ["Stefan Åhman"]
10
10
  spec.email = ["stefan.ahman@apoex.se"]
11
11
 
12
- spec.summary = %q{A gem for Postnord's API}
13
- spec.homepage = 'https://github.com/apoex/postnord'
12
+ spec.summary = %q{A gem for Postnord"s API}
13
+ spec.homepage = "https://github.com/apoex/postnord"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
@@ -18,10 +18,12 @@ Gem::Specification.new do |spec|
18
18
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency 'faraday'
21
+ spec.add_dependency "faraday"
22
22
  spec.add_development_dependency "webmock"
23
23
  spec.add_development_dependency "bundler"
24
24
  spec.add_development_dependency "rake", ">= 10.0"
25
25
  spec.add_development_dependency "rspec", "~> 3.0"
26
+ spec.add_development_dependency "pry-byebug"
27
+ spec.add_development_dependency "pry-byebyebug"
26
28
  spec.add_development_dependency "simplecov", "~> 0.17.1"
27
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: postnord
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefan Åhman
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-05-14 00:00:00.000000000 Z
11
+ date: 2023-05-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -80,6 +80,34 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '3.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: pry-byebug
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: pry-byebyebug
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
83
111
  - !ruby/object:Gem::Dependency
84
112
  name: simplecov
85
113
  requirement: !ruby/object:Gem::Requirement
@@ -94,7 +122,7 @@ dependencies:
94
122
  - - "~>"
95
123
  - !ruby/object:Gem::Version
96
124
  version: 0.17.1
97
- description:
125
+ description:
98
126
  email:
99
127
  - stefan.ahman@apoex.se
100
128
  executables: []
@@ -127,7 +155,7 @@ homepage: https://github.com/apoex/postnord
127
155
  licenses:
128
156
  - MIT
129
157
  metadata: {}
130
- post_install_message:
158
+ post_install_message:
131
159
  rdoc_options: []
132
160
  require_paths:
133
161
  - lib
@@ -143,7 +171,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
143
171
  version: '0'
144
172
  requirements: []
145
173
  rubygems_version: 3.1.2
146
- signing_key:
174
+ signing_key:
147
175
  specification_version: 4
148
- summary: A gem for Postnord's API
176
+ summary: A gem for Postnord"s API
149
177
  test_files: []