usps-imis-api 0.9.5 → 0.9.7

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: 0e2478447353e616e857b13ac4b3c87d62c8f8d9a499a1ef8610355d91181539
4
- data.tar.gz: f00d8b31112b0295834eca9a74176318d5e51f7596d9fa2082267671763255e6
3
+ metadata.gz: a78cd8daed5969574e8ec5fc3120a8a5a6c362e519918620ce41c2ed0fc0f26c
4
+ data.tar.gz: 0f20aa470ec2f2b8501f670046ee1071fea8552c22dd9f70165fb2ea986a46aa
5
5
  SHA512:
6
- metadata.gz: 8dda7fe4ff5daab7fc34df6ca508005f38295987f626cc73762fbb6f641404e5f9ad9f4108815362f98333e806c2366b7143c94cf3a861d6729cdc77034b2a09
7
- data.tar.gz: d9b0f87d187cdb1e10d66ee439a750d659e87ae033fe3c7848d87dc96f211895041ff7196fa88d1f60b27fdfb8a7e39ce03b34a5e74e4be8c88445cb16b01540
6
+ metadata.gz: 41f2a2c9082ce49399a1a9b3e44ddd2cb86a8624d112ea6c36875e05da74db61cd6272f96819d0d889c5ac83e857f900ecaad357da9dd25a3b3094b7354dbce4
7
+ data.tar.gz: 131e53225ae3d111b49c64302a99d5b32227e45b2734c42ea2131d5de986c60c2d359c43aef10a5191ce03d6406c5f6bbe0fcfadd11843347533cef0dcd555f3
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- usps-imis-api (0.9.5)
4
+ usps-imis-api (0.9.7)
5
5
  activesupport (~> 8.0)
6
6
 
7
7
  GEM
@@ -12,25 +12,35 @@ module Usps
12
12
  @fields = fields.transform_keys(&:to_s)
13
13
  end
14
14
 
15
- def get_field(name) = fields[name]
16
-
17
15
  def get
18
16
  Usps::Imis::Properties.build do |props|
19
17
  fields.each { |name, value| props.add(name, value) }
20
18
  end
21
19
  end
20
+ alias read get
21
+
22
+ def get_field(name) = fields[name]
23
+ alias fetch get_field
24
+ alias [] get_field
25
+
26
+ def get_fields(*field_names) = field_names.map { fields[it] }
27
+ alias fetch_all get_fields
22
28
 
23
29
  def put_fields(data)
24
30
  Usps::Imis::Properties.build do |props|
25
31
  fields.merge(data.transform_keys(&:to_s)).each { |name, value| props.add(name, value) }
26
32
  end
27
33
  end
34
+ alias patch put_fields
28
35
 
29
36
  def put(data) = data
37
+ alias update put
30
38
 
31
39
  def post(data) = data
40
+ alias create post
32
41
 
33
42
  def delete = ''
43
+ alias destroy delete
34
44
  end
35
45
  end
36
46
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Usps
4
4
  module Imis
5
- VERSION = '0.9.5'
5
+ VERSION = '0.9.7'
6
6
  end
7
7
  end
data/lib/usps/imis.rb CHANGED
@@ -21,6 +21,7 @@ require_relative 'imis/api'
21
21
  require_relative 'imis/properties'
22
22
  require_relative 'imis/panels'
23
23
  require_relative 'imis/mocks'
24
+ require_relative 'imis/version'
24
25
 
25
26
  module Usps
26
27
  # API wrapper for interacting with iMIS
@@ -48,6 +49,10 @@ module Usps
48
49
  # Logger (with optional nested tags) to write to
49
50
  #
50
51
  def logger(*tags) = configuration.logger.tagged('iMIS', *tags)
52
+
53
+ # Gem version
54
+ #
55
+ def version = Gem::Version.new(VERSION)
51
56
  end
52
57
  end
53
58
  end
@@ -4,11 +4,12 @@ require 'spec_helper'
4
4
 
5
5
  describe Usps::Imis::Mocks::BusinessObject do
6
6
  let(:mock) { described_class.new(**fields) }
7
- let(:fields) { { TotMMS: 2 } }
7
+ let(:fields) { { TotMMS: 2, Something: 'Another' } }
8
8
 
9
9
  let(:data) do
10
10
  Usps::Imis::Properties.build do |props|
11
11
  props.add 'TotMMS', 2
12
+ props.add 'Something', 'Another'
12
13
  end
13
14
  end
14
15
 
@@ -24,10 +25,17 @@ describe Usps::Imis::Mocks::BusinessObject do
24
25
  end
25
26
  end
26
27
 
28
+ describe 'get_fields' do
29
+ it 'returns the correct field values' do
30
+ expect(mock.get_fields('TotMMS', 'Something')).to eq([2, 'Another'])
31
+ end
32
+ end
33
+
27
34
  describe 'put_fields' do
28
35
  let(:combined_data) do
29
36
  Usps::Imis::Properties.build do |props|
30
37
  props.add 'TotMMS', 2
38
+ props.add 'Something', 'Another'
31
39
  props.add 'SomethingElse', 'interesting'
32
40
  end
33
41
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: usps-imis-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.5
4
+ version: 0.9.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Julian Fiander