freeagentrb 0.1.2 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 88898202cc7b4ac0e04002a27eadce03209e346b6dfb923978957d5a3d2c5015
4
- data.tar.gz: c09f7138b792427372c751aee5ab7b26150ed6788d3dc7017bd9d1e4c2401d78
3
+ metadata.gz: 5473733076facbdedb88e6611fd961a9c27efe923a2b75f26008a82a9b91f1ae
4
+ data.tar.gz: 0b8b542adf3b2f1930dbf20194db64e85180ae7f6a212e2e78fb89674d7a7732
5
5
  SHA512:
6
- metadata.gz: 13a89e9d1296d6a4c92aa46b66a2fbd50b08fc603a6a5a3b5bfb5d5e00d82764018b52a07d8f8f9cb1982e33ace2af110ed7213cb59380e8072205994349a886
7
- data.tar.gz: 25434579eaf40d09120e248aea740a947fff670ca08a7e72ab48f45888211034b1503956bf1335525234b133663180a44035d9030b88ac5dbe29b51fccd83c8e
6
+ metadata.gz: bf351b2bc6721d5760436ad1166ed6dd0846fec9a77bb2489c01cf3d272c13654784a5c81b26a5ac3009e1ed4ec5f0939a8d87788d77f02dcd353a5f4babbe0b
7
+ data.tar.gz: a88e3ad85c91138071366f611716f6daaabbf31c96a1a9cb61f43b1a9cae9ff4c37a2c7ce4c46b283736d1115b9e7b434e2a18d68db95e6dce649c90eeaddf18
data/Gemfile.lock CHANGED
@@ -1,9 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- freeagentrb (0.1.2)
4
+ freeagentrb (0.1.4)
5
5
  faraday (~> 2.11)
6
6
  faraday-multipart (~> 1.0)
7
+ ostruct (~> 0.6.0)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
@@ -46,6 +47,7 @@ GEM
46
47
  multipart-post (2.4.1)
47
48
  net-http (0.6.0)
48
49
  uri
50
+ ostruct (0.6.1)
49
51
  parallel (1.26.3)
50
52
  parser (3.3.7.0)
51
53
  ast (~> 2.4.1)
data/freeagentrb.gemspec CHANGED
@@ -28,4 +28,5 @@ Gem::Specification.new do |spec|
28
28
 
29
29
  spec.add_dependency "faraday", "~> 2.11"
30
30
  spec.add_dependency "faraday-multipart", "~> 1.0"
31
+ spec.add_dependency "ostruct", "~> 0.6.0"
31
32
  end
@@ -13,9 +13,15 @@ module FreeAgent
13
13
 
14
14
  private
15
15
 
16
+ # Parse the FreeAgent error code and message from the response body
16
17
  def set_freeagent_error_values
17
- @freeagent_error_code = @response_body.dig("error")
18
- @freeagent_error_message = @response_body.dig("message")
18
+ if @response_body.dig("errors") && @response_body.dig("errors").is_a?(Array)
19
+ @freeagent_error_message = @response_body.dig("errors").map { |error| error["message"] }.join(", ")
20
+ elsif @response_body.dig("errors", "error", "message")
21
+ @freeagent_error_message = @response_body.dig("errors", "error", "message")
22
+ else
23
+ @freeagent_error_message = @response_body.dig("message")
24
+ end
19
25
  end
20
26
 
21
27
  def error_message
@@ -37,7 +43,7 @@ module FreeAgent
37
43
  private
38
44
 
39
45
  def error_message
40
- "Your request was malformed."
46
+ "Your request was malformed. '#{freeagent_error_message}'"
41
47
  end
42
48
  end
43
49
 
@@ -77,7 +83,7 @@ module FreeAgent
77
83
  private
78
84
 
79
85
  def error_message
80
- "Your request was unprocessable."
86
+ "Your request was unprocessable. '#{freeagent_error_message}'"
81
87
  end
82
88
  end
83
89
 
@@ -1,3 +1,3 @@
1
1
  module FreeAgent
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.4"
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: freeagentrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dean Perry
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-02-13 00:00:00.000000000 Z
10
+ date: 2025-02-16 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: faraday
@@ -37,6 +37,20 @@ dependencies:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
39
  version: '1.0'
40
+ - !ruby/object:Gem::Dependency
41
+ name: ostruct
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: 0.6.0
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: 0.6.0
40
54
  email:
41
55
  - dean@deanpcmad.com
42
56
  executables: []