suretax 0.1.3 → 0.1.4

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
  SHA1:
3
- metadata.gz: 9df83893a6924ee165b25ebcffb94843365814d2
4
- data.tar.gz: b4d9b8b63e316584ec0ac98e3cc0971ffeedd20d
3
+ metadata.gz: 83671004b396de48f5620725fe6b9a0018cb4db5
4
+ data.tar.gz: f49dedb91581325d9bd2db9ce02df9a29a63258c
5
5
  SHA512:
6
- metadata.gz: 18573dca5b6d2b7e762f7346c7c629bd31bb20e821aef93afdf8427a61c6b7976a410ca452d0d7c919f76fd3a2617b13d052917559420eff2f4cb81fc06268e6
7
- data.tar.gz: b6973ee2c900a148ba6f038810d229c936a6c589a7949dcb992174b35e07cf3047ac5be1b44f7742839f69f29218b44ceafae2cf040c585ef57b9c29d54a9f1b
6
+ metadata.gz: 096c0fa430c293ba148e5f3c7477aaf12ad5acb2dc4d101907e7b2b4ad73ade796f53b94c4abb06519e1c097b0ceb0bd82fd107d99db1b5ad730d3dd8657c847
7
+ data.tar.gz: 0896483b517fe68a1ce69fae78b5fd231e4fbe91e0b9b5a582998a774960c9e0084086f37cab04515090220b556cb73626b8150c726e636a143fde8e4fbbc0bd
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- suretax (0.1.2)
4
+ suretax (0.1.3)
5
5
  faraday
6
6
  monetize
7
7
  money (~> 6.5.1)
@@ -21,7 +21,7 @@ GEM
21
21
  multipart-post (>= 1.2, < 3)
22
22
  i18n (0.7.0)
23
23
  method_source (0.8.2)
24
- monetize (1.1.0)
24
+ monetize (1.3.0)
25
25
  money (~> 6.5.0)
26
26
  money (6.5.1)
27
27
  i18n (>= 0.6.4, <= 0.7.0)
@@ -39,12 +39,8 @@ module Suretax
39
39
  end
40
40
 
41
41
  def build_item_messages(response_body)
42
- @item_messages = if item_errors?
43
- response_body.fetch('ItemMessages').map do |item_message|
44
- ItemMessage.new(item_message)
45
- end
46
- else
47
- []
42
+ @item_messages = response_body.fetch('ItemMessages', []).map do |item_message|
43
+ ItemMessage.new(item_message)
48
44
  end
49
45
  end
50
46
  end
@@ -8,19 +8,12 @@ module Suretax
8
8
  def initialize(api_response)
9
9
  @response = api_response
10
10
  sanitized_body = remove_xml_brackets(api_response.body)
11
- if sanitized_body == 'invalid request'
12
- @body = sanitized_body
13
- @status = 400
14
- @api = nil
15
- log_response
16
11
 
17
- return self
12
+ if sanitized_body == 'invalid request'
13
+ invalid_request_response(sanitized_body)
14
+ else
15
+ valid_request_response(sanitized_body)
18
16
  end
19
- @body = JSON.parse(sanitized_body)
20
- @api = Api::Response.new(@body)
21
- @status = map_response_code_to_http_status(api.status)
22
-
23
- log_response
24
17
  end
25
18
 
26
19
  def success?
@@ -29,6 +22,22 @@ module Suretax
29
22
 
30
23
  private
31
24
 
25
+ def valid_request_response(sanitized_body)
26
+ @body = JSON.parse(sanitized_body)
27
+ @api = Api::Response.new(@body)
28
+ @status = map_response_code_to_http_status(api.status)
29
+ log_response
30
+ self
31
+ end
32
+
33
+ def invalid_request_response(sanitized_body)
34
+ @body = sanitized_body
35
+ @status = 400
36
+ @api = nil
37
+ log_response
38
+ self
39
+ end
40
+
32
41
  def extract_json_from_urlencoded_string_regex
33
42
  # http://rubular.com/r/0w73fy4Ldk
34
43
  /\A<\?xml.*<string[^>]+>(?<json_string>.+)<\/string>\z/m
@@ -1,3 +1,3 @@
1
1
  module Suretax
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: suretax
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Damon Davison
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-25 00:00:00.000000000 Z
11
+ date: 2015-06-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -256,7 +256,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
256
256
  version: '0'
257
257
  requirements: []
258
258
  rubyforge_project:
259
- rubygems_version: 2.2.2
259
+ rubygems_version: 2.4.6
260
260
  signing_key:
261
261
  specification_version: 4
262
262
  summary: This gem will allow Ruby developers to easily integrate SureTax into their