restforce 5.0.5 → 5.2.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 +4 -4
- data/.circleci/config.yml +9 -9
- data/.github/dependabot.yml +19 -0
- data/.rubocop.yml +2 -2
- data/CHANGELOG.md +23 -0
- data/Gemfile +10 -6
- data/README.md +53 -4
- data/lib/restforce/abstract_client.rb +1 -0
- data/lib/restforce/collection.rb +15 -1
- data/lib/restforce/concerns/api.rb +1 -1
- data/lib/restforce/concerns/base.rb +2 -2
- data/lib/restforce/concerns/composite_api.rb +104 -0
- data/lib/restforce/concerns/picklists.rb +1 -1
- data/lib/restforce/error_code.rb +27 -9
- data/lib/restforce/middleware/logger.rb +5 -5
- data/lib/restforce/version.rb +1 -1
- data/lib/restforce.rb +2 -0
- data/restforce.gemspec +2 -12
- data/spec/integration/abstract_client_spec.rb +25 -28
- data/spec/integration/data/client_spec.rb +6 -2
- data/spec/spec_helper.rb +10 -0
- data/spec/support/client_integration.rb +7 -7
- data/spec/support/concerns.rb +1 -1
- data/spec/support/middleware.rb +1 -2
- data/spec/unit/collection_spec.rb +4 -4
- data/spec/unit/concerns/api_spec.rb +11 -11
- data/spec/unit/concerns/authentication_spec.rb +6 -6
- data/spec/unit/concerns/composite_api_spec.rb +143 -0
- data/spec/unit/concerns/streaming_spec.rb +3 -3
- data/spec/unit/config_spec.rb +1 -1
- data/spec/unit/middleware/authentication/jwt_bearer_spec.rb +4 -4
- data/spec/unit/middleware/authentication/password_spec.rb +2 -2
- data/spec/unit/middleware/authentication/token_spec.rb +2 -2
- data/spec/unit/middleware/gzip_spec.rb +2 -2
- data/spec/unit/middleware/raise_error_spec.rb +20 -10
- metadata +12 -92
@@ -14,8 +14,10 @@ describe Restforce::Middleware::RaiseError do
|
|
14
14
|
let(:status) { 404 }
|
15
15
|
|
16
16
|
it 'raises Restforce::NotFoundError' do
|
17
|
-
expect { on_complete }.to raise_error
|
18
|
-
|
17
|
+
expect { on_complete }.to raise_error do |error|
|
18
|
+
expect(error).to be_a Restforce::NotFoundError
|
19
|
+
expect(error.message).to start_with("INVALID_FIELD: error_message")
|
20
|
+
end
|
19
21
|
end
|
20
22
|
|
21
23
|
it 'raises an error that inherits from Faraday::ResourceNotFound' do
|
@@ -40,8 +42,10 @@ describe Restforce::Middleware::RaiseError do
|
|
40
42
|
let(:status) { 400 }
|
41
43
|
|
42
44
|
it "raises an error derived from the response's errorCode" do
|
43
|
-
expect { on_complete }.to raise_error
|
44
|
-
|
45
|
+
expect { on_complete }.to raise_error do |error|
|
46
|
+
expect(error).to be_a Restforce::ErrorCode::InvalidField
|
47
|
+
expect(error.message).to start_with("INVALID_FIELD: error_message")
|
48
|
+
end
|
45
49
|
end
|
46
50
|
|
47
51
|
it 'raises an error that inherits from Faraday::ClientError' do
|
@@ -53,8 +57,10 @@ describe Restforce::Middleware::RaiseError do
|
|
53
57
|
let(:status) { 401 }
|
54
58
|
|
55
59
|
it 'raises Restforce::UnauthorizedError' do
|
56
|
-
expect { on_complete }.to raise_error
|
57
|
-
|
60
|
+
expect { on_complete }.to raise_error do |error|
|
61
|
+
expect(error).to be_a Restforce::UnauthorizedError
|
62
|
+
expect(error.message).to start_with("INVALID_FIELD: error_message")
|
63
|
+
end
|
58
64
|
end
|
59
65
|
end
|
60
66
|
|
@@ -76,13 +82,17 @@ describe Restforce::Middleware::RaiseError do
|
|
76
82
|
let(:status) { 400 }
|
77
83
|
|
78
84
|
it 'raises a generic Restforce::ResponseError' do
|
79
|
-
expect { on_complete }.to raise_error
|
80
|
-
|
85
|
+
expect { on_complete }.to raise_error do |error|
|
86
|
+
expect(error).to be_a Restforce::ResponseError
|
87
|
+
expect(error.message).to start_with("(error code missing): An error occured")
|
88
|
+
end
|
81
89
|
end
|
82
90
|
|
83
91
|
it 'raises an error that inherits from Faraday::ClientError' do
|
84
|
-
expect { on_complete }.to raise_error
|
85
|
-
|
92
|
+
expect { on_complete }.to raise_error do |error|
|
93
|
+
expect(error).to be_a Faraday::ClientError
|
94
|
+
expect(error.message).to start_with("(error code missing): An error occured")
|
95
|
+
end
|
86
96
|
end
|
87
97
|
end
|
88
98
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: restforce
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0
|
4
|
+
version: 5.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Rogers
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2021-
|
12
|
+
date: 2021-10-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: faraday
|
@@ -51,20 +51,6 @@ dependencies:
|
|
51
51
|
- - "<="
|
52
52
|
- !ruby/object:Gem::Version
|
53
53
|
version: '2.0'
|
54
|
-
- !ruby/object:Gem::Dependency
|
55
|
-
name: jwt
|
56
|
-
requirement: !ruby/object:Gem::Requirement
|
57
|
-
requirements:
|
58
|
-
- - ">="
|
59
|
-
- !ruby/object:Gem::Version
|
60
|
-
version: 1.5.6
|
61
|
-
type: :runtime
|
62
|
-
prerelease: false
|
63
|
-
version_requirements: !ruby/object:Gem::Requirement
|
64
|
-
requirements:
|
65
|
-
- - ">="
|
66
|
-
- !ruby/object:Gem::Version
|
67
|
-
version: 1.5.6
|
68
54
|
- !ruby/object:Gem::Dependency
|
69
55
|
name: hashie
|
70
56
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,89 +72,19 @@ dependencies:
|
|
86
72
|
- !ruby/object:Gem::Version
|
87
73
|
version: '5.0'
|
88
74
|
- !ruby/object:Gem::Dependency
|
89
|
-
name:
|
75
|
+
name: jwt
|
90
76
|
requirement: !ruby/object:Gem::Requirement
|
91
77
|
requirements:
|
92
78
|
- - ">="
|
93
79
|
- !ruby/object:Gem::Version
|
94
|
-
version:
|
95
|
-
type: :
|
80
|
+
version: 1.5.6
|
81
|
+
type: :runtime
|
96
82
|
prerelease: false
|
97
83
|
version_requirements: !ruby/object:Gem::Requirement
|
98
84
|
requirements:
|
99
85
|
- - ">="
|
100
86
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
102
|
-
- !ruby/object:Gem::Dependency
|
103
|
-
name: rspec
|
104
|
-
requirement: !ruby/object:Gem::Requirement
|
105
|
-
requirements:
|
106
|
-
- - "~>"
|
107
|
-
- !ruby/object:Gem::Version
|
108
|
-
version: 2.14.0
|
109
|
-
type: :development
|
110
|
-
prerelease: false
|
111
|
-
version_requirements: !ruby/object:Gem::Requirement
|
112
|
-
requirements:
|
113
|
-
- - "~>"
|
114
|
-
- !ruby/object:Gem::Version
|
115
|
-
version: 2.14.0
|
116
|
-
- !ruby/object:Gem::Dependency
|
117
|
-
name: rspec_junit_formatter
|
118
|
-
requirement: !ruby/object:Gem::Requirement
|
119
|
-
requirements:
|
120
|
-
- - "~>"
|
121
|
-
- !ruby/object:Gem::Version
|
122
|
-
version: 0.4.1
|
123
|
-
type: :development
|
124
|
-
prerelease: false
|
125
|
-
version_requirements: !ruby/object:Gem::Requirement
|
126
|
-
requirements:
|
127
|
-
- - "~>"
|
128
|
-
- !ruby/object:Gem::Version
|
129
|
-
version: 0.4.1
|
130
|
-
- !ruby/object:Gem::Dependency
|
131
|
-
name: rubocop
|
132
|
-
requirement: !ruby/object:Gem::Requirement
|
133
|
-
requirements:
|
134
|
-
- - "~>"
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
version: 1.9.1
|
137
|
-
type: :development
|
138
|
-
prerelease: false
|
139
|
-
version_requirements: !ruby/object:Gem::Requirement
|
140
|
-
requirements:
|
141
|
-
- - "~>"
|
142
|
-
- !ruby/object:Gem::Version
|
143
|
-
version: 1.9.1
|
144
|
-
- !ruby/object:Gem::Dependency
|
145
|
-
name: simplecov
|
146
|
-
requirement: !ruby/object:Gem::Requirement
|
147
|
-
requirements:
|
148
|
-
- - "~>"
|
149
|
-
- !ruby/object:Gem::Version
|
150
|
-
version: 0.21.2
|
151
|
-
type: :development
|
152
|
-
prerelease: false
|
153
|
-
version_requirements: !ruby/object:Gem::Requirement
|
154
|
-
requirements:
|
155
|
-
- - "~>"
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
version: 0.21.2
|
158
|
-
- !ruby/object:Gem::Dependency
|
159
|
-
name: webmock
|
160
|
-
requirement: !ruby/object:Gem::Requirement
|
161
|
-
requirements:
|
162
|
-
- - "~>"
|
163
|
-
- !ruby/object:Gem::Version
|
164
|
-
version: 3.11.1
|
165
|
-
type: :development
|
166
|
-
prerelease: false
|
167
|
-
version_requirements: !ruby/object:Gem::Requirement
|
168
|
-
requirements:
|
169
|
-
- - "~>"
|
170
|
-
- !ruby/object:Gem::Version
|
171
|
-
version: 3.11.1
|
87
|
+
version: 1.5.6
|
172
88
|
description: A lightweight Ruby client for the Salesforce REST API
|
173
89
|
email:
|
174
90
|
- me@timrogers.co.uk
|
@@ -179,6 +95,7 @@ extra_rdoc_files: []
|
|
179
95
|
files:
|
180
96
|
- ".circleci/config.yml"
|
181
97
|
- ".github/ISSUE_TEMPLATE/unhandled-salesforce-error.md"
|
98
|
+
- ".github/dependabot.yml"
|
182
99
|
- ".gitignore"
|
183
100
|
- ".rubocop.yml"
|
184
101
|
- ".rubocop_todo.yml"
|
@@ -204,6 +121,7 @@ files:
|
|
204
121
|
- lib/restforce/concerns/batch_api.rb
|
205
122
|
- lib/restforce/concerns/caching.rb
|
206
123
|
- lib/restforce/concerns/canvas.rb
|
124
|
+
- lib/restforce/concerns/composite_api.rb
|
207
125
|
- lib/restforce/concerns/connection.rb
|
208
126
|
- lib/restforce/concerns/picklists.rb
|
209
127
|
- lib/restforce/concerns/streaming.rb
|
@@ -292,6 +210,7 @@ files:
|
|
292
210
|
- spec/unit/concerns/batch_api_spec.rb
|
293
211
|
- spec/unit/concerns/caching_spec.rb
|
294
212
|
- spec/unit/concerns/canvas_spec.rb
|
213
|
+
- spec/unit/concerns/composite_api_spec.rb
|
295
214
|
- spec/unit/concerns/connection_spec.rb
|
296
215
|
- spec/unit/concerns/streaming_spec.rb
|
297
216
|
- spec/unit/config_spec.rb
|
@@ -327,14 +246,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
327
246
|
requirements:
|
328
247
|
- - ">="
|
329
248
|
- !ruby/object:Gem::Version
|
330
|
-
version: '2.
|
249
|
+
version: '2.6'
|
331
250
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
332
251
|
requirements:
|
333
252
|
- - ">="
|
334
253
|
- !ruby/object:Gem::Version
|
335
254
|
version: '0'
|
336
255
|
requirements: []
|
337
|
-
rubygems_version: 3.2.
|
256
|
+
rubygems_version: 3.2.22
|
338
257
|
signing_key:
|
339
258
|
specification_version: 4
|
340
259
|
summary: A lightweight Ruby client for the Salesforce REST API
|
@@ -393,6 +312,7 @@ test_files:
|
|
393
312
|
- spec/unit/concerns/batch_api_spec.rb
|
394
313
|
- spec/unit/concerns/caching_spec.rb
|
395
314
|
- spec/unit/concerns/canvas_spec.rb
|
315
|
+
- spec/unit/concerns/composite_api_spec.rb
|
396
316
|
- spec/unit/concerns/connection_spec.rb
|
397
317
|
- spec/unit/concerns/streaming_spec.rb
|
398
318
|
- spec/unit/config_spec.rb
|