spark_api 1.3.1 → 1.3.3

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.3.1
1
+ 1.3.3
@@ -57,7 +57,10 @@ module SparkApi
57
57
  self.errors = [] # clear the errors hash
58
58
  begin
59
59
  return save!(arguments)
60
- rescue NotFound, BadResourceRequest => e
60
+ rescue BadResourceRequest => e
61
+ self.errors << { :code => e.code, :message => e.message }
62
+ SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
63
+ rescue NotFound => e
61
64
  self.errors << {:code => e.code, :message => e.message}
62
65
  SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
63
66
  end
@@ -76,11 +76,6 @@ module SparkApi
76
76
  connection.get(path, options.merge({:_pagination=>"count"}))
77
77
  end
78
78
 
79
- # update/create hash (can be overridden)
80
- def post_data
81
- { resource_pluralized => [ attributes ] }
82
- end
83
-
84
79
  def method_missing(method_symbol, *arguments)
85
80
  method_name = method_symbol.to_s
86
81
 
@@ -10,7 +10,7 @@ module SparkApi
10
10
  return save!(arguments)
11
11
  rescue BadResourceRequest => e
12
12
  self.errors << {:code => e.code, :message => e.message}
13
- SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
13
+ SparkApi.logger.warn("Failed to save resource #{self}: #{e.message}")
14
14
  rescue NotFound => e
15
15
  SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
16
16
  end
@@ -22,7 +22,7 @@ module SparkApi
22
22
 
23
23
  def create!(arguments = {})
24
24
  results = connection.post self.path, post_data.merge(params_for_save), arguments
25
- update_resource_identifiers(results.first)
25
+ update_attributes(results.first)
26
26
  reset_dirty
27
27
  params_for_save.clear
28
28
  true
@@ -36,15 +36,22 @@ module SparkApi
36
36
  true
37
37
  end
38
38
 
39
+ # extra params to be passed when saving
39
40
  def params_for_save
40
41
  @params_for_save ||= {}
41
42
  end
42
43
 
44
+ # update/create hash (can be overridden)
45
+ def post_data
46
+ { resource_pluralized => [ attributes ] }
47
+ end
48
+
43
49
  private
44
50
 
45
- def update_resource_identifiers(result)
46
- attributes['ResourceUri'] = result['ResourceUri']
51
+ def update_attributes(result)
47
52
  attributes['Id'] = result['Id'] ? result['Id'] : parse_id(result['ResourceUri'])
53
+ result.delete('Id')
54
+ attributes.merge! result
48
55
  end
49
56
 
50
57
  # can be overridden
@@ -37,6 +37,10 @@ module SparkApi
37
37
  @saved_searches ||= SavedSearch.collect(connection.get("/contacts/#{self.Id}/savedsearches", arguments))
38
38
  end
39
39
 
40
+ def provided_searches(arguments = {})
41
+ @provided_searches ||= SavedSearch.collect(connection.get("/contacts/#{self.Id}/provided/savedsearches", arguments))
42
+ end
43
+
40
44
  def listing_carts(arguments = {})
41
45
  @listing_carts ||= ListingCart.collect(connection.get("/contacts/#{self.Id}/listingcarts", arguments))
42
46
  end
@@ -157,7 +157,7 @@ module SparkApi
157
157
  end
158
158
  end
159
159
  end
160
- SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
160
+ SparkApi.logger.warn("Failed to save resource #{self}: #{e.message}")
161
161
  rescue NotFound => e
162
162
  SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
163
163
  end
@@ -6,7 +6,9 @@ module SparkApi
6
6
  def save(arguments={})
7
7
  begin
8
8
  return save!(arguments)
9
- rescue NotFound, BadResourceRequest => e
9
+ rescue BadResourceRequest => e
10
+ SparkApi.logger.warn("Failed to save resource #{self}: #{e.message}")
11
+ rescue NotFound => e
10
12
  SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
11
13
  end
12
14
  false
@@ -10,7 +10,7 @@ module SparkApi
10
10
  return save!(arguments)
11
11
  rescue BadResourceRequest => e
12
12
  self.errors << {:code => e.code, :message => e.message}
13
- SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
13
+ SparkApi.logger.warn("Failed to save resource #{self}: #{e.message}")
14
14
  rescue NotFound => e
15
15
  SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
16
16
  end
@@ -26,7 +26,9 @@ module SparkApi
26
26
  def save(arguments={})
27
27
  begin
28
28
  return save!(arguments)
29
- rescue NotFound, BadResourceRequest => e
29
+ rescue BadResourceRequest => e
30
+ SparkApi.logger.warn("Failed to save resource #{self}: #{e.message}")
31
+ rescue NotFound => e
30
32
  SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
31
33
  end
32
34
  false
@@ -32,7 +32,11 @@ module SparkApi
32
32
  contact_id = contact.is_a?(Contact) ? contact.Id : contact
33
33
  begin
34
34
  connection.send(method, "#{self.class.path}/#{@attributes["Id"]}/contacts/#{contact_id}")
35
- rescue BadResourceRequest, NotFound => e
35
+ rescue BadResourceRequest => e
36
+ self.errors << { :code => e.code, :message => e.message }
37
+ SparkApi.logger.warn("Failed to #{action} contact #{contact}: #{e.message}")
38
+ return false
39
+ rescue NotFound => e
36
40
  self.errors << { :code => e.code, :message => e.message }
37
41
  SparkApi.logger.error("Failed to #{action} contact #{contact}: #{e.message}")
38
42
  return false
@@ -62,4 +62,16 @@ describe Concerns::Savable, "Model" do
62
62
  s.should have_been_requested
63
63
  end
64
64
 
65
+ it "merges any attributes that come back in the response" do
66
+ @model = MyExampleModel.new({ :Name => "my name" })
67
+ s = stub_api_post("/test/example", { :MyExampleModels => [ @model.attributes ] }, "base.json")
68
+ @model.save.should eq(true)
69
+ @model.persisted?.should eq(true)
70
+ @model.Id.should eq(1)
71
+ @model.ResourceUri.should eq("/v1/some/place/20101230223226074201000000")
72
+ @model.Name.should eq("My Example")
73
+ @model.Test.should eq(true)
74
+ s.should have_been_requested
75
+ end
76
+
65
77
  end
@@ -117,11 +117,11 @@ describe Contact do
117
117
 
118
118
  end
119
119
 
120
- context "/contacts/<contact_id>" do
120
+ context "/contacts/<contact_id>", :support do
121
121
 
122
122
  let(:contact_id) { "20090928182824338901000000" }
123
123
 
124
- context "/savedsearches", :support do
124
+ context "/savedsearches" do
125
125
 
126
126
  subject(:contact) do
127
127
  stub_api_get("/my/contact", 'contacts/my.json')
@@ -142,6 +142,27 @@ describe Contact do
142
142
 
143
143
  end
144
144
 
145
+ context "/provided/savedsearches", :support do
146
+
147
+ subject(:contact) do
148
+ stub_api_get("/my/contact", 'contacts/my.json')
149
+ contact = Contact.my
150
+ end
151
+
152
+ on_get_it "should get all the provided searches belonging to the customer" do
153
+ stub_api_get("/contacts/#{contact.Id}/provided/savedsearches", 'saved_searches/get.json')
154
+ saved_searches = contact.provided_searches
155
+ saved_searches.should be_an(Array)
156
+ saved_searches.length.should eq(2)
157
+ end
158
+
159
+ it "should pass any arguments as parameters" do
160
+ stub_api_get("/contacts/#{contact.Id}/provided/savedsearches", 'saved_searches/get.json', :_pagination => 1)
161
+ saved_searches = contact.provided_searches(:_pagination => 1)
162
+ end
163
+
164
+ end
165
+
145
166
  context "/listingcarts", :support do
146
167
 
147
168
  subject(:contact) do
@@ -173,7 +194,7 @@ describe Contact do
173
194
  end
174
195
  end
175
196
 
176
- context "/comments" do
197
+ context "/comments", :support do
177
198
 
178
199
  it "should get all of a contact's comments" do
179
200
  s = stub_api_get("/contacts/#{contact_id}/comments", "comments/get.json")
@@ -202,7 +223,7 @@ describe Contact do
202
223
 
203
224
  end
204
225
 
205
- context "/comments/<id>" do
226
+ context "/comments/<id>", :support do
206
227
 
207
228
  let(:id) { "20121128133936712557000097" }
208
229
 
@@ -132,10 +132,9 @@ describe Listing do
132
132
 
133
133
  context "/listings", :support do
134
134
  on_get_it "should return listings" do
135
- filter_string = "PostalCode Eq '83805'"
136
- stub_api_get('/listings', 'listings/multiple.json', {:_filter => filter_string})
135
+ stub_api_get('/listings', 'listings/multiple.json', {:_filter => "PostalCode Eq '83805'"})
137
136
 
138
- listings = Listing.find(:all, :_filter => filter_string)
137
+ listings = Listing.find(:all, :_filter => "PostalCode Eq '83805'")
139
138
  listings.should be_an(Array)
140
139
  listings.count.should eq(2)
141
140
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spark_api
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 29
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 3
9
- - 1
10
- version: 1.3.1
9
+ - 3
10
+ version: 1.3.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Brandon Hornseth
@@ -16,10 +16,9 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2013-01-08 00:00:00 Z
19
+ date: 2013-03-08 00:00:00 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- prerelease: false
23
22
  type: :runtime
24
23
  requirement: &id001 !ruby/object:Gem::Requirement
25
24
  none: false
@@ -32,10 +31,10 @@ dependencies:
32
31
  - 8
33
32
  - 1
34
33
  version: 0.8.1
35
- name: faraday
36
34
  version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
35
  prerelease: false
36
+ name: faraday
37
+ - !ruby/object:Gem::Dependency
39
38
  type: :runtime
40
39
  requirement: &id002 !ruby/object:Gem::Requirement
41
40
  none: false
@@ -47,10 +46,10 @@ dependencies:
47
46
  - 1
48
47
  - 0
49
48
  version: "1.0"
50
- name: multi_json
51
49
  version_requirements: *id002
52
- - !ruby/object:Gem::Dependency
53
50
  prerelease: false
51
+ name: multi_json
52
+ - !ruby/object:Gem::Dependency
54
53
  type: :runtime
55
54
  requirement: &id003 !ruby/object:Gem::Requirement
56
55
  none: false
@@ -62,10 +61,10 @@ dependencies:
62
61
  - 1
63
62
  - 7
64
63
  version: "1.7"
65
- name: json
66
64
  version_requirements: *id003
67
- - !ruby/object:Gem::Dependency
68
65
  prerelease: false
66
+ name: json
67
+ - !ruby/object:Gem::Dependency
69
68
  type: :runtime
70
69
  requirement: &id004 !ruby/object:Gem::Requirement
71
70
  none: false
@@ -86,10 +85,10 @@ dependencies:
86
85
  - 0
87
86
  - 0
88
87
  version: 4.0.0
89
- name: builder
90
88
  version_requirements: *id004
91
- - !ruby/object:Gem::Dependency
92
89
  prerelease: false
90
+ name: builder
91
+ - !ruby/object:Gem::Dependency
93
92
  type: :runtime
94
93
  requirement: &id005 !ruby/object:Gem::Requirement
95
94
  none: false
@@ -111,10 +110,10 @@ dependencies:
111
110
  - 0
112
111
  - 0
113
112
  version: 4.0.0
114
- name: will_paginate
115
113
  version_requirements: *id005
116
- - !ruby/object:Gem::Dependency
117
114
  prerelease: false
115
+ name: will_paginate
116
+ - !ruby/object:Gem::Dependency
118
117
  type: :runtime
119
118
  requirement: &id006 !ruby/object:Gem::Requirement
120
119
  none: false
@@ -126,10 +125,10 @@ dependencies:
126
125
  - 1
127
126
  - 0
128
127
  version: "1.0"
129
- name: highline
130
128
  version_requirements: *id006
131
- - !ruby/object:Gem::Dependency
132
129
  prerelease: false
130
+ name: highline
131
+ - !ruby/object:Gem::Dependency
133
132
  type: :development
134
133
  requirement: &id007 !ruby/object:Gem::Requirement
135
134
  none: false
@@ -142,10 +141,10 @@ dependencies:
142
141
  - 9
143
142
  - 2
144
143
  version: 0.9.2
145
- name: rake
146
144
  version_requirements: *id007
147
- - !ruby/object:Gem::Dependency
148
145
  prerelease: false
146
+ name: rake
147
+ - !ruby/object:Gem::Dependency
149
148
  type: :development
150
149
  requirement: &id008 !ruby/object:Gem::Requirement
151
150
  none: false
@@ -158,10 +157,10 @@ dependencies:
158
157
  - 12
159
158
  - 0
160
159
  version: 2.12.0
161
- name: rspec
162
160
  version_requirements: *id008
163
- - !ruby/object:Gem::Dependency
164
161
  prerelease: false
162
+ name: rspec
163
+ - !ruby/object:Gem::Dependency
165
164
  type: :development
166
165
  requirement: &id009 !ruby/object:Gem::Requirement
167
166
  none: false
@@ -173,10 +172,10 @@ dependencies:
173
172
  - 1
174
173
  - 9
175
174
  version: "1.9"
176
- name: webmock
177
175
  version_requirements: *id009
178
- - !ruby/object:Gem::Dependency
179
176
  prerelease: false
177
+ name: webmock
178
+ - !ruby/object:Gem::Dependency
180
179
  type: :development
181
180
  requirement: &id010 !ruby/object:Gem::Requirement
182
181
  none: false
@@ -188,10 +187,10 @@ dependencies:
188
187
  - 0
189
188
  - 3
190
189
  version: "0.3"
191
- name: typhoeus
192
190
  version_requirements: *id010
193
- - !ruby/object:Gem::Dependency
194
191
  prerelease: false
192
+ name: typhoeus
193
+ - !ruby/object:Gem::Dependency
195
194
  type: :development
196
195
  requirement: &id011 !ruby/object:Gem::Requirement
197
196
  none: false
@@ -204,10 +203,10 @@ dependencies:
204
203
  - 7
205
204
  - 0
206
205
  version: 1.7.0
207
- name: ci_reporter
208
206
  version_requirements: *id011
209
- - !ruby/object:Gem::Dependency
210
207
  prerelease: false
208
+ name: ci_reporter
209
+ - !ruby/object:Gem::Dependency
211
210
  type: :development
212
211
  requirement: &id012 !ruby/object:Gem::Requirement
213
212
  none: false
@@ -220,10 +219,10 @@ dependencies:
220
219
  - 9
221
220
  - 9
222
221
  version: 0.9.9
223
- name: rcov
224
222
  version_requirements: *id012
225
- - !ruby/object:Gem::Dependency
226
223
  prerelease: false
224
+ name: rcov
225
+ - !ruby/object:Gem::Dependency
227
226
  type: :development
228
227
  requirement: &id013 !ruby/object:Gem::Requirement
229
228
  none: false
@@ -236,10 +235,10 @@ dependencies:
236
235
  - 2
237
236
  - 5
238
237
  version: 0.2.5
239
- name: flexmls_gems
240
238
  version_requirements: *id013
241
- - !ruby/object:Gem::Dependency
242
239
  prerelease: false
240
+ name: flexmls_gems
241
+ - !ruby/object:Gem::Dependency
243
242
  type: :development
244
243
  requirement: &id014 !ruby/object:Gem::Requirement
245
244
  none: false
@@ -250,10 +249,10 @@ dependencies:
250
249
  segments:
251
250
  - 0
252
251
  version: "0"
253
- name: guard-rspec
254
252
  version_requirements: *id014
255
- - !ruby/object:Gem::Dependency
256
253
  prerelease: false
254
+ name: guard-rspec
255
+ - !ruby/object:Gem::Dependency
257
256
  type: :development
258
257
  requirement: &id015 !ruby/object:Gem::Requirement
259
258
  none: false
@@ -264,8 +263,23 @@ dependencies:
264
263
  segments:
265
264
  - 0
266
265
  version: "0"
267
- name: rb-fsevent
268
266
  version_requirements: *id015
267
+ prerelease: false
268
+ name: rb-readline
269
+ - !ruby/object:Gem::Dependency
270
+ type: :development
271
+ requirement: &id016 !ruby/object:Gem::Requirement
272
+ none: false
273
+ requirements:
274
+ - - ">="
275
+ - !ruby/object:Gem::Version
276
+ hash: 3
277
+ segments:
278
+ - 0
279
+ version: "0"
280
+ version_requirements: *id016
281
+ prerelease: false
282
+ name: rb-fsevent
269
283
  description: The spark_api gem handles most of the boilerplate for communicating with the Spark API rest services, including authentication and request parsing.
270
284
  email: api-support@sparkapi.com
271
285
  executables:
@@ -282,233 +296,233 @@ files:
282
296
  - README.md
283
297
  - VERSION
284
298
  - bin/spark_api
285
- - lib/spark_api/options_hash.rb
299
+ - lib/spark_api/authentication/api_auth.rb
300
+ - lib/spark_api/authentication/oauth2_impl/faraday_middleware.rb
301
+ - lib/spark_api/authentication/oauth2_impl/single_session_provider.rb
302
+ - lib/spark_api/authentication/oauth2_impl/grant_type_base.rb
303
+ - lib/spark_api/authentication/oauth2_impl/grant_type_code.rb
304
+ - lib/spark_api/authentication/oauth2_impl/grant_type_refresh.rb
305
+ - lib/spark_api/authentication/oauth2_impl/cli_provider.rb
306
+ - lib/spark_api/authentication/oauth2_impl/simple_provider.rb
307
+ - lib/spark_api/authentication/oauth2_impl/grant_type_password.rb
308
+ - lib/spark_api/authentication/oauth2.rb
309
+ - lib/spark_api/authentication/base_auth.rb
310
+ - lib/spark_api/faraday_middleware.rb
311
+ - lib/spark_api/errors.rb
312
+ - lib/spark_api/client.rb
313
+ - lib/spark_api/primary_array.rb
314
+ - lib/spark_api/version.rb
315
+ - lib/spark_api/response.rb
316
+ - lib/spark_api/models.rb
286
317
  - lib/spark_api/connection.rb
287
- - lib/spark_api/request.rb
288
318
  - lib/spark_api/multi_client.rb
289
- - lib/spark_api/models/video.rb
290
- - lib/spark_api/models/account.rb
291
- - lib/spark_api/models/virtual_tour.rb
292
- - lib/spark_api/models/connect_prefs.rb
293
- - lib/spark_api/models/portal.rb
319
+ - lib/spark_api/models/document.rb
320
+ - lib/spark_api/models/rental_calendar.rb
321
+ - lib/spark_api/models/finders.rb
294
322
  - lib/spark_api/models/subresource.rb
295
- - lib/spark_api/models/market_statistics.rb
323
+ - lib/spark_api/models/fields.rb
324
+ - lib/spark_api/models/photo.rb
325
+ - lib/spark_api/models/contact.rb
326
+ - lib/spark_api/models/video.rb
327
+ - lib/spark_api/models/idx_link.rb
328
+ - lib/spark_api/models/message.rb
329
+ - lib/spark_api/models/concerns.rb
296
330
  - lib/spark_api/models/system_info.rb
331
+ - lib/spark_api/models/vow_account.rb
297
332
  - lib/spark_api/models/listing.rb
298
- - lib/spark_api/models/contact.rb
333
+ - lib/spark_api/models/constraint.rb
334
+ - lib/spark_api/models/base.rb
299
335
  - lib/spark_api/models/listing_cart.rb
300
- - lib/spark_api/models/rental_calendar.rb
301
- - lib/spark_api/models/concerns/savable.rb
302
- - lib/spark_api/models/concerns/destroyable.rb
336
+ - lib/spark_api/models/saved_search.rb
337
+ - lib/spark_api/models/open_house.rb
338
+ - lib/spark_api/models/activity.rb
303
339
  - lib/spark_api/models/dirty.rb
304
- - lib/spark_api/models/custom_fields.rb
340
+ - lib/spark_api/models/connect_prefs.rb
305
341
  - lib/spark_api/models/shared_listing.rb
306
- - lib/spark_api/models/activity.rb
307
- - lib/spark_api/models/comment.rb
308
- - lib/spark_api/models/saved_search.rb
342
+ - lib/spark_api/models/concerns/destroyable.rb
343
+ - lib/spark_api/models/concerns/savable.rb
309
344
  - lib/spark_api/models/standard_fields.rb
310
- - lib/spark_api/models/document.rb
311
- - lib/spark_api/models/open_house.rb
312
- - lib/spark_api/models/vow_account.rb
313
- - lib/spark_api/models/finders.rb
314
- - lib/spark_api/models/fields.rb
315
- - lib/spark_api/models/base.rb
316
- - lib/spark_api/models/tour_of_home.rb
317
- - lib/spark_api/models/property_types.rb
318
- - lib/spark_api/models/idx_link.rb
319
- - lib/spark_api/models/notification.rb
320
- - lib/spark_api/models/message.rb
345
+ - lib/spark_api/models/market_statistics.rb
346
+ - lib/spark_api/models/portal.rb
321
347
  - lib/spark_api/models/note.rb
322
- - lib/spark_api/models/photo.rb
323
- - lib/spark_api/models/concerns.rb
324
- - lib/spark_api/models/constraint.rb
325
- - lib/spark_api/models.rb
326
- - lib/spark_api/primary_array.rb
348
+ - lib/spark_api/models/comment.rb
349
+ - lib/spark_api/models/custom_fields.rb
350
+ - lib/spark_api/models/account.rb
351
+ - lib/spark_api/models/notification.rb
352
+ - lib/spark_api/models/property_types.rb
353
+ - lib/spark_api/models/virtual_tour.rb
354
+ - lib/spark_api/models/tour_of_home.rb
327
355
  - lib/spark_api/paginate.rb
356
+ - lib/spark_api/cli/api_auth.rb
357
+ - lib/spark_api/cli/setup.rb
358
+ - lib/spark_api/cli/oauth2.rb
359
+ - lib/spark_api/request.rb
360
+ - lib/spark_api/options_hash.rb
328
361
  - lib/spark_api/cli.rb
329
- - lib/spark_api/response.rb
362
+ - lib/spark_api/authentication.rb
330
363
  - lib/spark_api/configuration.rb
331
364
  - lib/spark_api/configuration/oauth2_configurable.rb
332
365
  - lib/spark_api/configuration/yaml.rb
333
- - lib/spark_api/cli/setup.rb
334
- - lib/spark_api/cli/api_auth.rb
335
- - lib/spark_api/cli/oauth2.rb
336
- - lib/spark_api/client.rb
337
- - lib/spark_api/version.rb
338
- - lib/spark_api/errors.rb
339
- - lib/spark_api/authentication/base_auth.rb
340
- - lib/spark_api/authentication/oauth2_impl/grant_type_base.rb
341
- - lib/spark_api/authentication/oauth2_impl/grant_type_code.rb
342
- - lib/spark_api/authentication/oauth2_impl/single_session_provider.rb
343
- - lib/spark_api/authentication/oauth2_impl/simple_provider.rb
344
- - lib/spark_api/authentication/oauth2_impl/grant_type_password.rb
345
- - lib/spark_api/authentication/oauth2_impl/cli_provider.rb
346
- - lib/spark_api/authentication/oauth2_impl/faraday_middleware.rb
347
- - lib/spark_api/authentication/oauth2_impl/grant_type_refresh.rb
348
- - lib/spark_api/authentication/api_auth.rb
349
- - lib/spark_api/authentication/oauth2.rb
350
- - lib/spark_api/faraday_middleware.rb
351
- - lib/spark_api/authentication.rb
352
366
  - lib/spark_api.rb
353
- - script/oauth2_example.rb
354
367
  - script/console
355
- - script/combined_flow_example.rb
356
368
  - script/example.rb
357
- - spec/fixtures/fields/order.json
358
- - spec/fixtures/fields/order_a.json
359
- - spec/fixtures/session.json
369
+ - script/oauth2_example.rb
370
+ - script/combined_flow_example.rb
360
371
  - spec/fixtures/portal/my_non_existant.json
361
- - spec/fixtures/portal/disable.json
362
372
  - spec/fixtures/portal/my.json
363
373
  - spec/fixtures/portal/enable.json
364
- - spec/fixtures/portal/post.json
365
374
  - spec/fixtures/portal/new.json
375
+ - spec/fixtures/portal/disable.json
376
+ - spec/fixtures/portal/post.json
377
+ - spec/fixtures/oauth2_error.json
378
+ - spec/fixtures/errors/failure_with_constraint.json
379
+ - spec/fixtures/errors/expired.json
380
+ - spec/fixtures/errors/failure_with_msg.json
381
+ - spec/fixtures/errors/failure.json
382
+ - spec/fixtures/count.json
383
+ - spec/fixtures/notes/new.json
384
+ - spec/fixtures/notes/agent_shared.json
385
+ - spec/fixtures/notes/add.json
386
+ - spec/fixtures/notes/agent_shared_empty.json
387
+ - spec/fixtures/base.json
366
388
  - spec/fixtures/generic_failure.json
367
- - spec/fixtures/finders.json
389
+ - spec/fixtures/session.json
390
+ - spec/fixtures/generic_delete.json
391
+ - spec/fixtures/oauth2/refresh_body.json
392
+ - spec/fixtures/oauth2/access_with_refresh.json
393
+ - spec/fixtures/oauth2/password_body.json
394
+ - spec/fixtures/oauth2/authorization_code_body.json
395
+ - spec/fixtures/oauth2/error.json
396
+ - spec/fixtures/oauth2/access.json
397
+ - spec/fixtures/oauth2/access_with_old_refresh.json
398
+ - spec/fixtures/saved_searches/update.json
399
+ - spec/fixtures/saved_searches/new.json
400
+ - spec/fixtures/saved_searches/get.json
401
+ - spec/fixtures/saved_searches/post.json
402
+ - spec/fixtures/standardfields/nearby.json
403
+ - spec/fixtures/standardfields/city.json
404
+ - spec/fixtures/standardfields/stateorprovince.json
405
+ - spec/fixtures/standardfields/standardfields.json
406
+ - spec/fixtures/fields/order.json
407
+ - spec/fixtures/fields/order_a.json
368
408
  - spec/fixtures/property_types/property_types.json
369
- - spec/fixtures/authentication_failure.json
370
- - spec/fixtures/activities/get.json
409
+ - spec/fixtures/accounts/all.json
371
410
  - spec/fixtures/accounts/password_save.json
372
411
  - spec/fixtures/accounts/office.json
373
- - spec/fixtures/accounts/my_put.json
374
412
  - spec/fixtures/accounts/my.json
375
- - spec/fixtures/accounts/my_portal.json
413
+ - spec/fixtures/accounts/my_put.json
376
414
  - spec/fixtures/accounts/my_save.json
377
- - spec/fixtures/accounts/all.json
378
- - spec/fixtures/contacts/vow_accounts/edit.json
379
- - spec/fixtures/contacts/vow_accounts/get.json
380
- - spec/fixtures/contacts/vow_accounts/post.json
381
- - spec/fixtures/contacts/vow_accounts/new.json
382
- - spec/fixtures/contacts/contacts.json
383
- - spec/fixtures/contacts/my.json
384
- - spec/fixtures/contacts/tags.json
385
- - spec/fixtures/contacts/post.json
386
- - spec/fixtures/contacts/new.json
387
- - spec/fixtures/contacts/new_notify.json
388
- - spec/fixtures/contacts/new_empty.json
389
- - spec/fixtures/listings/open_houses.json
390
- - spec/fixtures/listings/constraints.json
391
- - spec/fixtures/listings/with_documents.json
392
- - spec/fixtures/listings/shared_listing_post.json
393
- - spec/fixtures/listings/rental_calendar.json
394
- - spec/fixtures/listings/no_subresources.json
395
- - spec/fixtures/listings/with_photos.json
415
+ - spec/fixtures/accounts/my_portal.json
416
+ - spec/fixtures/success.json
417
+ - spec/fixtures/empty.json
418
+ - spec/fixtures/activities/get.json
419
+ - spec/fixtures/listing_carts/remove_listing.json
420
+ - spec/fixtures/listing_carts/add_listing_post.json
421
+ - spec/fixtures/listing_carts/listing_cart.json
422
+ - spec/fixtures/listing_carts/empty.json
423
+ - spec/fixtures/listing_carts/new.json
424
+ - spec/fixtures/listing_carts/post.json
425
+ - spec/fixtures/listing_carts/add_listing.json
426
+ - spec/fixtures/authentication_failure.json
396
427
  - spec/fixtures/listings/put_expiration_date.json
397
- - spec/fixtures/listings/photos/index.json
398
- - spec/fixtures/listings/photos/post.json
399
- - spec/fixtures/listings/photos/new.json
400
- - spec/fixtures/listings/multiple.json
401
- - spec/fixtures/listings/with_videos.json
402
- - spec/fixtures/listings/tour_of_homes.json
428
+ - spec/fixtures/listings/no_subresources.json
429
+ - spec/fixtures/listings/rental_calendar.json
403
430
  - spec/fixtures/listings/shared_listing_get.json
404
- - spec/fixtures/listings/shared_listing_new.json
405
- - spec/fixtures/listings/with_supplement.json
406
- - spec/fixtures/listings/with_rental_calendar.json
407
431
  - spec/fixtures/listings/constraints_with_pagination.json
408
- - spec/fixtures/listings/document_index.json
409
- - spec/fixtures/listings/virtual_tours_index.json
432
+ - spec/fixtures/listings/with_rental_calendar.json
433
+ - spec/fixtures/listings/multiple.json
434
+ - spec/fixtures/listings/open_houses.json
435
+ - spec/fixtures/listings/photos/new.json
436
+ - spec/fixtures/listings/photos/post.json
437
+ - spec/fixtures/listings/photos/index.json
438
+ - spec/fixtures/listings/with_videos.json
439
+ - spec/fixtures/listings/with_documents.json
440
+ - spec/fixtures/listings/put.json
441
+ - spec/fixtures/listings/with_permissions.json
410
442
  - spec/fixtures/listings/with_vtour.json
411
443
  - spec/fixtures/listings/tour_of_homes_search.json
444
+ - spec/fixtures/listings/with_photos.json
445
+ - spec/fixtures/listings/shared_listing_new.json
412
446
  - spec/fixtures/listings/videos_index.json
413
- - spec/fixtures/listings/with_permissions.json
414
- - spec/fixtures/listings/put.json
415
- - spec/fixtures/success.json
416
- - spec/fixtures/standardfields/standardfields.json
417
- - spec/fixtures/standardfields/nearby.json
418
- - spec/fixtures/standardfields/stateorprovince.json
419
- - spec/fixtures/standardfields/city.json
420
- - spec/fixtures/notes/agent_shared_empty.json
421
- - spec/fixtures/notes/agent_shared.json
422
- - spec/fixtures/notes/add.json
423
- - spec/fixtures/notes/new.json
424
- - spec/fixtures/generic_delete.json
425
- - spec/fixtures/oauth2/access_with_refresh.json
426
- - spec/fixtures/oauth2/password_body.json
427
- - spec/fixtures/oauth2/refresh_body.json
428
- - spec/fixtures/oauth2/error.json
429
- - spec/fixtures/oauth2/access_with_old_refresh.json
430
- - spec/fixtures/oauth2/authorization_code_body.json
431
- - spec/fixtures/oauth2/access.json
432
- - spec/fixtures/oauth2_error.json
433
- - spec/fixtures/errors/failure_with_msg.json
434
- - spec/fixtures/errors/failure.json
435
- - spec/fixtures/errors/expired.json
436
- - spec/fixtures/errors/failure_with_constraint.json
447
+ - spec/fixtures/listings/with_supplement.json
448
+ - spec/fixtures/listings/tour_of_homes.json
449
+ - spec/fixtures/listings/shared_listing_post.json
450
+ - spec/fixtures/listings/virtual_tours_index.json
451
+ - spec/fixtures/listings/document_index.json
452
+ - spec/fixtures/listings/constraints.json
453
+ - spec/fixtures/comments/new.json
437
454
  - spec/fixtures/comments/get.json
438
455
  - spec/fixtures/comments/post.json
439
- - spec/fixtures/comments/new.json
440
- - spec/fixtures/count.json
441
- - spec/fixtures/saved_searches/update.json
442
- - spec/fixtures/saved_searches/get.json
443
- - spec/fixtures/saved_searches/post.json
444
- - spec/fixtures/saved_searches/new.json
445
- - spec/fixtures/logo_fbs.png
446
- - spec/fixtures/listing_carts/listing_cart.json
447
- - spec/fixtures/listing_carts/add_listing.json
448
- - spec/fixtures/listing_carts/add_listing_post.json
449
- - spec/fixtures/listing_carts/remove_listing.json
450
- - spec/fixtures/listing_carts/empty.json
451
- - spec/fixtures/listing_carts/post.json
452
- - spec/fixtures/listing_carts/new.json
453
- - spec/fixtures/empty.json
454
- - spec/fixtures/messages/new_with_recipients.json
455
- - spec/fixtures/messages/post.json
456
- - spec/fixtures/messages/new.json
457
- - spec/fixtures/messages/new_empty.json
458
- - spec/fixtures/base.json
456
+ - spec/fixtures/finders.json
459
457
  - spec/fixtures/notifications/notifications.json
458
+ - spec/fixtures/notifications/new_empty.json
460
459
  - spec/fixtures/notifications/unread.json
461
460
  - spec/fixtures/notifications/mark_read.json
462
- - spec/fixtures/notifications/post.json
463
461
  - spec/fixtures/notifications/new.json
464
- - spec/fixtures/notifications/new_empty.json
462
+ - spec/fixtures/notifications/post.json
463
+ - spec/fixtures/contacts/tags.json
464
+ - spec/fixtures/contacts/my.json
465
+ - spec/fixtures/contacts/new_empty.json
466
+ - spec/fixtures/contacts/contacts.json
467
+ - spec/fixtures/contacts/new_notify.json
468
+ - spec/fixtures/contacts/new.json
469
+ - spec/fixtures/contacts/post.json
470
+ - spec/fixtures/contacts/vow_accounts/edit.json
471
+ - spec/fixtures/contacts/vow_accounts/new.json
472
+ - spec/fixtures/contacts/vow_accounts/get.json
473
+ - spec/fixtures/contacts/vow_accounts/post.json
474
+ - spec/fixtures/messages/new_with_recipients.json
475
+ - spec/fixtures/messages/new_empty.json
476
+ - spec/fixtures/messages/new.json
477
+ - spec/fixtures/messages/post.json
478
+ - spec/fixtures/logo_fbs.png
465
479
  - spec/unit/spark_api_spec.rb
466
- - spec/unit/spark_api/primary_array_spec.rb
467
- - spec/unit/spark_api/options_hash_spec.rb
468
- - spec/unit/spark_api/models/finders_spec.rb
480
+ - spec/unit/spark_api/authentication/base_auth_spec.rb
481
+ - spec/unit/spark_api/authentication/oauth2_impl/single_session_provider_spec.rb
482
+ - spec/unit/spark_api/authentication/oauth2_impl/faraday_middleware_spec.rb
483
+ - spec/unit/spark_api/authentication/oauth2_impl/grant_type_base_spec.rb
484
+ - spec/unit/spark_api/authentication/oauth2_spec.rb
485
+ - spec/unit/spark_api/authentication/api_auth_spec.rb
486
+ - spec/unit/spark_api/authentication_spec.rb
487
+ - spec/unit/spark_api/models/open_house_spec.rb
488
+ - spec/unit/spark_api/models/account_spec.rb
489
+ - spec/unit/spark_api/models/virtual_tour_spec.rb
490
+ - spec/unit/spark_api/models/constraint_spec.rb
491
+ - spec/unit/spark_api/models/notification_spec.rb
469
492
  - spec/unit/spark_api/models/saved_search_spec.rb
470
- - spec/unit/spark_api/models/video_spec.rb
493
+ - spec/unit/spark_api/models/contact_spec.rb
471
494
  - spec/unit/spark_api/models/listing_cart_spec.rb
472
- - spec/unit/spark_api/models/subresource_spec.rb
473
- - spec/unit/spark_api/models/vow_account_spec.rb
474
- - spec/unit/spark_api/models/message_spec.rb
475
- - spec/unit/spark_api/models/shared_listing_spec.rb
476
- - spec/unit/spark_api/models/dirty_spec.rb
477
- - spec/unit/spark_api/models/listing_spec.rb
478
- - spec/unit/spark_api/models/base_spec.rb
479
- - spec/unit/spark_api/models/note_spec.rb
480
- - spec/unit/spark_api/models/portal_spec.rb
481
- - spec/unit/spark_api/models/system_info_spec.rb
482
- - spec/unit/spark_api/models/account_spec.rb
495
+ - spec/unit/spark_api/models/video_spec.rb
483
496
  - spec/unit/spark_api/models/rental_calendar_spec.rb
484
497
  - spec/unit/spark_api/models/document_spec.rb
485
- - spec/unit/spark_api/models/contact_spec.rb
486
- - spec/unit/spark_api/models/property_types_spec.rb
487
- - spec/unit/spark_api/models/concerns/savable_spec.rb
488
- - spec/unit/spark_api/models/concerns/destroyable_spec.rb
489
498
  - spec/unit/spark_api/models/activity_spec.rb
490
- - spec/unit/spark_api/models/virtual_tour_spec.rb
499
+ - spec/unit/spark_api/models/property_types_spec.rb
500
+ - spec/unit/spark_api/models/dirty_spec.rb
501
+ - spec/unit/spark_api/models/message_spec.rb
502
+ - spec/unit/spark_api/models/listing_spec.rb
491
503
  - spec/unit/spark_api/models/fields_spec.rb
492
- - spec/unit/spark_api/models/tour_of_home_spec.rb
493
- - spec/unit/spark_api/models/notification_spec.rb
504
+ - spec/unit/spark_api/models/shared_listing_spec.rb
505
+ - spec/unit/spark_api/models/note_spec.rb
494
506
  - spec/unit/spark_api/models/connect_prefs_spec.rb
495
- - spec/unit/spark_api/models/constraint_spec.rb
507
+ - spec/unit/spark_api/models/concerns/destroyable_spec.rb
508
+ - spec/unit/spark_api/models/concerns/savable_spec.rb
509
+ - spec/unit/spark_api/models/vow_account_spec.rb
510
+ - spec/unit/spark_api/models/subresource_spec.rb
496
511
  - spec/unit/spark_api/models/photo_spec.rb
512
+ - spec/unit/spark_api/models/base_spec.rb
513
+ - spec/unit/spark_api/models/portal_spec.rb
514
+ - spec/unit/spark_api/models/tour_of_home_spec.rb
515
+ - spec/unit/spark_api/models/finders_spec.rb
516
+ - spec/unit/spark_api/models/system_info_spec.rb
497
517
  - spec/unit/spark_api/models/standard_fields_spec.rb
498
- - spec/unit/spark_api/models/open_house_spec.rb
499
- - spec/unit/spark_api/authentication_spec.rb
500
518
  - spec/unit/spark_api/faraday_middleware_spec.rb
519
+ - spec/unit/spark_api/options_hash_spec.rb
520
+ - spec/unit/spark_api/paginate_spec.rb
521
+ - spec/unit/spark_api/primary_array_spec.rb
501
522
  - spec/unit/spark_api/configuration_spec.rb
523
+ - spec/unit/spark_api/request_spec.rb
502
524
  - spec/unit/spark_api/configuration/yaml_spec.rb
503
525
  - spec/unit/spark_api/multi_client_spec.rb
504
- - spec/unit/spark_api/authentication/base_auth_spec.rb
505
- - spec/unit/spark_api/authentication/oauth2_impl/faraday_middleware_spec.rb
506
- - spec/unit/spark_api/authentication/oauth2_impl/grant_type_base_spec.rb
507
- - spec/unit/spark_api/authentication/oauth2_impl/single_session_provider_spec.rb
508
- - spec/unit/spark_api/authentication/api_auth_spec.rb
509
- - spec/unit/spark_api/authentication/oauth2_spec.rb
510
- - spec/unit/spark_api/request_spec.rb
511
- - spec/unit/spark_api/paginate_spec.rb
512
526
  - spec/spec_helper.rb
513
527
  homepage: https://github.com/sparkapi/spark_api
514
528
  licenses: []
@@ -530,7 +544,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
530
544
  required_rubygems_version: !ruby/object:Gem::Requirement
531
545
  none: false
532
546
  requirements:
533
- - - ~>
547
+ - - ">="
534
548
  - !ruby/object:Gem::Version
535
549
  hash: 31
536
550
  segments:
@@ -540,164 +554,164 @@ required_rubygems_version: !ruby/object:Gem::Requirement
540
554
  requirements: []
541
555
 
542
556
  rubyforge_project: spark_api
543
- rubygems_version: 1.8.15
557
+ rubygems_version: 1.8.24
544
558
  signing_key:
545
559
  specification_version: 3
546
560
  summary: A library for interacting with the Spark web services.
547
561
  test_files:
548
- - spec/fixtures/fields/order.json
549
- - spec/fixtures/fields/order_a.json
550
- - spec/fixtures/session.json
551
562
  - spec/fixtures/portal/my_non_existant.json
552
- - spec/fixtures/portal/disable.json
553
563
  - spec/fixtures/portal/my.json
554
564
  - spec/fixtures/portal/enable.json
555
- - spec/fixtures/portal/post.json
556
565
  - spec/fixtures/portal/new.json
566
+ - spec/fixtures/portal/disable.json
567
+ - spec/fixtures/portal/post.json
568
+ - spec/fixtures/oauth2_error.json
569
+ - spec/fixtures/errors/failure_with_constraint.json
570
+ - spec/fixtures/errors/expired.json
571
+ - spec/fixtures/errors/failure_with_msg.json
572
+ - spec/fixtures/errors/failure.json
573
+ - spec/fixtures/count.json
574
+ - spec/fixtures/notes/new.json
575
+ - spec/fixtures/notes/agent_shared.json
576
+ - spec/fixtures/notes/add.json
577
+ - spec/fixtures/notes/agent_shared_empty.json
578
+ - spec/fixtures/base.json
557
579
  - spec/fixtures/generic_failure.json
558
- - spec/fixtures/finders.json
580
+ - spec/fixtures/session.json
581
+ - spec/fixtures/generic_delete.json
582
+ - spec/fixtures/oauth2/refresh_body.json
583
+ - spec/fixtures/oauth2/access_with_refresh.json
584
+ - spec/fixtures/oauth2/password_body.json
585
+ - spec/fixtures/oauth2/authorization_code_body.json
586
+ - spec/fixtures/oauth2/error.json
587
+ - spec/fixtures/oauth2/access.json
588
+ - spec/fixtures/oauth2/access_with_old_refresh.json
589
+ - spec/fixtures/saved_searches/update.json
590
+ - spec/fixtures/saved_searches/new.json
591
+ - spec/fixtures/saved_searches/get.json
592
+ - spec/fixtures/saved_searches/post.json
593
+ - spec/fixtures/standardfields/nearby.json
594
+ - spec/fixtures/standardfields/city.json
595
+ - spec/fixtures/standardfields/stateorprovince.json
596
+ - spec/fixtures/standardfields/standardfields.json
597
+ - spec/fixtures/fields/order.json
598
+ - spec/fixtures/fields/order_a.json
559
599
  - spec/fixtures/property_types/property_types.json
560
- - spec/fixtures/authentication_failure.json
561
- - spec/fixtures/activities/get.json
600
+ - spec/fixtures/accounts/all.json
562
601
  - spec/fixtures/accounts/password_save.json
563
602
  - spec/fixtures/accounts/office.json
564
- - spec/fixtures/accounts/my_put.json
565
603
  - spec/fixtures/accounts/my.json
566
- - spec/fixtures/accounts/my_portal.json
604
+ - spec/fixtures/accounts/my_put.json
567
605
  - spec/fixtures/accounts/my_save.json
568
- - spec/fixtures/accounts/all.json
569
- - spec/fixtures/contacts/vow_accounts/edit.json
570
- - spec/fixtures/contacts/vow_accounts/get.json
571
- - spec/fixtures/contacts/vow_accounts/post.json
572
- - spec/fixtures/contacts/vow_accounts/new.json
573
- - spec/fixtures/contacts/contacts.json
574
- - spec/fixtures/contacts/my.json
575
- - spec/fixtures/contacts/tags.json
576
- - spec/fixtures/contacts/post.json
577
- - spec/fixtures/contacts/new.json
578
- - spec/fixtures/contacts/new_notify.json
579
- - spec/fixtures/contacts/new_empty.json
580
- - spec/fixtures/listings/open_houses.json
581
- - spec/fixtures/listings/constraints.json
582
- - spec/fixtures/listings/with_documents.json
583
- - spec/fixtures/listings/shared_listing_post.json
584
- - spec/fixtures/listings/rental_calendar.json
585
- - spec/fixtures/listings/no_subresources.json
586
- - spec/fixtures/listings/with_photos.json
606
+ - spec/fixtures/accounts/my_portal.json
607
+ - spec/fixtures/success.json
608
+ - spec/fixtures/empty.json
609
+ - spec/fixtures/activities/get.json
610
+ - spec/fixtures/listing_carts/remove_listing.json
611
+ - spec/fixtures/listing_carts/add_listing_post.json
612
+ - spec/fixtures/listing_carts/listing_cart.json
613
+ - spec/fixtures/listing_carts/empty.json
614
+ - spec/fixtures/listing_carts/new.json
615
+ - spec/fixtures/listing_carts/post.json
616
+ - spec/fixtures/listing_carts/add_listing.json
617
+ - spec/fixtures/authentication_failure.json
587
618
  - spec/fixtures/listings/put_expiration_date.json
588
- - spec/fixtures/listings/photos/index.json
589
- - spec/fixtures/listings/photos/post.json
590
- - spec/fixtures/listings/photos/new.json
591
- - spec/fixtures/listings/multiple.json
592
- - spec/fixtures/listings/with_videos.json
593
- - spec/fixtures/listings/tour_of_homes.json
619
+ - spec/fixtures/listings/no_subresources.json
620
+ - spec/fixtures/listings/rental_calendar.json
594
621
  - spec/fixtures/listings/shared_listing_get.json
595
- - spec/fixtures/listings/shared_listing_new.json
596
- - spec/fixtures/listings/with_supplement.json
597
- - spec/fixtures/listings/with_rental_calendar.json
598
622
  - spec/fixtures/listings/constraints_with_pagination.json
599
- - spec/fixtures/listings/document_index.json
600
- - spec/fixtures/listings/virtual_tours_index.json
623
+ - spec/fixtures/listings/with_rental_calendar.json
624
+ - spec/fixtures/listings/multiple.json
625
+ - spec/fixtures/listings/open_houses.json
626
+ - spec/fixtures/listings/photos/new.json
627
+ - spec/fixtures/listings/photos/post.json
628
+ - spec/fixtures/listings/photos/index.json
629
+ - spec/fixtures/listings/with_videos.json
630
+ - spec/fixtures/listings/with_documents.json
631
+ - spec/fixtures/listings/put.json
632
+ - spec/fixtures/listings/with_permissions.json
601
633
  - spec/fixtures/listings/with_vtour.json
602
634
  - spec/fixtures/listings/tour_of_homes_search.json
635
+ - spec/fixtures/listings/with_photos.json
636
+ - spec/fixtures/listings/shared_listing_new.json
603
637
  - spec/fixtures/listings/videos_index.json
604
- - spec/fixtures/listings/with_permissions.json
605
- - spec/fixtures/listings/put.json
606
- - spec/fixtures/success.json
607
- - spec/fixtures/standardfields/standardfields.json
608
- - spec/fixtures/standardfields/nearby.json
609
- - spec/fixtures/standardfields/stateorprovince.json
610
- - spec/fixtures/standardfields/city.json
611
- - spec/fixtures/notes/agent_shared_empty.json
612
- - spec/fixtures/notes/agent_shared.json
613
- - spec/fixtures/notes/add.json
614
- - spec/fixtures/notes/new.json
615
- - spec/fixtures/generic_delete.json
616
- - spec/fixtures/oauth2/access_with_refresh.json
617
- - spec/fixtures/oauth2/password_body.json
618
- - spec/fixtures/oauth2/refresh_body.json
619
- - spec/fixtures/oauth2/error.json
620
- - spec/fixtures/oauth2/access_with_old_refresh.json
621
- - spec/fixtures/oauth2/authorization_code_body.json
622
- - spec/fixtures/oauth2/access.json
623
- - spec/fixtures/oauth2_error.json
624
- - spec/fixtures/errors/failure_with_msg.json
625
- - spec/fixtures/errors/failure.json
626
- - spec/fixtures/errors/expired.json
627
- - spec/fixtures/errors/failure_with_constraint.json
638
+ - spec/fixtures/listings/with_supplement.json
639
+ - spec/fixtures/listings/tour_of_homes.json
640
+ - spec/fixtures/listings/shared_listing_post.json
641
+ - spec/fixtures/listings/virtual_tours_index.json
642
+ - spec/fixtures/listings/document_index.json
643
+ - spec/fixtures/listings/constraints.json
644
+ - spec/fixtures/comments/new.json
628
645
  - spec/fixtures/comments/get.json
629
646
  - spec/fixtures/comments/post.json
630
- - spec/fixtures/comments/new.json
631
- - spec/fixtures/count.json
632
- - spec/fixtures/saved_searches/update.json
633
- - spec/fixtures/saved_searches/get.json
634
- - spec/fixtures/saved_searches/post.json
635
- - spec/fixtures/saved_searches/new.json
636
- - spec/fixtures/logo_fbs.png
637
- - spec/fixtures/listing_carts/listing_cart.json
638
- - spec/fixtures/listing_carts/add_listing.json
639
- - spec/fixtures/listing_carts/add_listing_post.json
640
- - spec/fixtures/listing_carts/remove_listing.json
641
- - spec/fixtures/listing_carts/empty.json
642
- - spec/fixtures/listing_carts/post.json
643
- - spec/fixtures/listing_carts/new.json
644
- - spec/fixtures/empty.json
645
- - spec/fixtures/messages/new_with_recipients.json
646
- - spec/fixtures/messages/post.json
647
- - spec/fixtures/messages/new.json
648
- - spec/fixtures/messages/new_empty.json
649
- - spec/fixtures/base.json
647
+ - spec/fixtures/finders.json
650
648
  - spec/fixtures/notifications/notifications.json
649
+ - spec/fixtures/notifications/new_empty.json
651
650
  - spec/fixtures/notifications/unread.json
652
651
  - spec/fixtures/notifications/mark_read.json
653
- - spec/fixtures/notifications/post.json
654
652
  - spec/fixtures/notifications/new.json
655
- - spec/fixtures/notifications/new_empty.json
653
+ - spec/fixtures/notifications/post.json
654
+ - spec/fixtures/contacts/tags.json
655
+ - spec/fixtures/contacts/my.json
656
+ - spec/fixtures/contacts/new_empty.json
657
+ - spec/fixtures/contacts/contacts.json
658
+ - spec/fixtures/contacts/new_notify.json
659
+ - spec/fixtures/contacts/new.json
660
+ - spec/fixtures/contacts/post.json
661
+ - spec/fixtures/contacts/vow_accounts/edit.json
662
+ - spec/fixtures/contacts/vow_accounts/new.json
663
+ - spec/fixtures/contacts/vow_accounts/get.json
664
+ - spec/fixtures/contacts/vow_accounts/post.json
665
+ - spec/fixtures/messages/new_with_recipients.json
666
+ - spec/fixtures/messages/new_empty.json
667
+ - spec/fixtures/messages/new.json
668
+ - spec/fixtures/messages/post.json
669
+ - spec/fixtures/logo_fbs.png
656
670
  - spec/unit/spark_api_spec.rb
657
- - spec/unit/spark_api/primary_array_spec.rb
658
- - spec/unit/spark_api/options_hash_spec.rb
659
- - spec/unit/spark_api/models/finders_spec.rb
671
+ - spec/unit/spark_api/authentication/base_auth_spec.rb
672
+ - spec/unit/spark_api/authentication/oauth2_impl/single_session_provider_spec.rb
673
+ - spec/unit/spark_api/authentication/oauth2_impl/faraday_middleware_spec.rb
674
+ - spec/unit/spark_api/authentication/oauth2_impl/grant_type_base_spec.rb
675
+ - spec/unit/spark_api/authentication/oauth2_spec.rb
676
+ - spec/unit/spark_api/authentication/api_auth_spec.rb
677
+ - spec/unit/spark_api/authentication_spec.rb
678
+ - spec/unit/spark_api/models/open_house_spec.rb
679
+ - spec/unit/spark_api/models/account_spec.rb
680
+ - spec/unit/spark_api/models/virtual_tour_spec.rb
681
+ - spec/unit/spark_api/models/constraint_spec.rb
682
+ - spec/unit/spark_api/models/notification_spec.rb
660
683
  - spec/unit/spark_api/models/saved_search_spec.rb
661
- - spec/unit/spark_api/models/video_spec.rb
684
+ - spec/unit/spark_api/models/contact_spec.rb
662
685
  - spec/unit/spark_api/models/listing_cart_spec.rb
663
- - spec/unit/spark_api/models/subresource_spec.rb
664
- - spec/unit/spark_api/models/vow_account_spec.rb
665
- - spec/unit/spark_api/models/message_spec.rb
666
- - spec/unit/spark_api/models/shared_listing_spec.rb
667
- - spec/unit/spark_api/models/dirty_spec.rb
668
- - spec/unit/spark_api/models/listing_spec.rb
669
- - spec/unit/spark_api/models/base_spec.rb
670
- - spec/unit/spark_api/models/note_spec.rb
671
- - spec/unit/spark_api/models/portal_spec.rb
672
- - spec/unit/spark_api/models/system_info_spec.rb
673
- - spec/unit/spark_api/models/account_spec.rb
686
+ - spec/unit/spark_api/models/video_spec.rb
674
687
  - spec/unit/spark_api/models/rental_calendar_spec.rb
675
688
  - spec/unit/spark_api/models/document_spec.rb
676
- - spec/unit/spark_api/models/contact_spec.rb
677
- - spec/unit/spark_api/models/property_types_spec.rb
678
- - spec/unit/spark_api/models/concerns/savable_spec.rb
679
- - spec/unit/spark_api/models/concerns/destroyable_spec.rb
680
689
  - spec/unit/spark_api/models/activity_spec.rb
681
- - spec/unit/spark_api/models/virtual_tour_spec.rb
690
+ - spec/unit/spark_api/models/property_types_spec.rb
691
+ - spec/unit/spark_api/models/dirty_spec.rb
692
+ - spec/unit/spark_api/models/message_spec.rb
693
+ - spec/unit/spark_api/models/listing_spec.rb
682
694
  - spec/unit/spark_api/models/fields_spec.rb
683
- - spec/unit/spark_api/models/tour_of_home_spec.rb
684
- - spec/unit/spark_api/models/notification_spec.rb
695
+ - spec/unit/spark_api/models/shared_listing_spec.rb
696
+ - spec/unit/spark_api/models/note_spec.rb
685
697
  - spec/unit/spark_api/models/connect_prefs_spec.rb
686
- - spec/unit/spark_api/models/constraint_spec.rb
698
+ - spec/unit/spark_api/models/concerns/destroyable_spec.rb
699
+ - spec/unit/spark_api/models/concerns/savable_spec.rb
700
+ - spec/unit/spark_api/models/vow_account_spec.rb
701
+ - spec/unit/spark_api/models/subresource_spec.rb
687
702
  - spec/unit/spark_api/models/photo_spec.rb
703
+ - spec/unit/spark_api/models/base_spec.rb
704
+ - spec/unit/spark_api/models/portal_spec.rb
705
+ - spec/unit/spark_api/models/tour_of_home_spec.rb
706
+ - spec/unit/spark_api/models/finders_spec.rb
707
+ - spec/unit/spark_api/models/system_info_spec.rb
688
708
  - spec/unit/spark_api/models/standard_fields_spec.rb
689
- - spec/unit/spark_api/models/open_house_spec.rb
690
- - spec/unit/spark_api/authentication_spec.rb
691
709
  - spec/unit/spark_api/faraday_middleware_spec.rb
710
+ - spec/unit/spark_api/options_hash_spec.rb
711
+ - spec/unit/spark_api/paginate_spec.rb
712
+ - spec/unit/spark_api/primary_array_spec.rb
692
713
  - spec/unit/spark_api/configuration_spec.rb
714
+ - spec/unit/spark_api/request_spec.rb
693
715
  - spec/unit/spark_api/configuration/yaml_spec.rb
694
716
  - spec/unit/spark_api/multi_client_spec.rb
695
- - spec/unit/spark_api/authentication/base_auth_spec.rb
696
- - spec/unit/spark_api/authentication/oauth2_impl/faraday_middleware_spec.rb
697
- - spec/unit/spark_api/authentication/oauth2_impl/grant_type_base_spec.rb
698
- - spec/unit/spark_api/authentication/oauth2_impl/single_session_provider_spec.rb
699
- - spec/unit/spark_api/authentication/api_auth_spec.rb
700
- - spec/unit/spark_api/authentication/oauth2_spec.rb
701
- - spec/unit/spark_api/request_spec.rb
702
- - spec/unit/spark_api/paginate_spec.rb
703
717
  - spec/spec_helper.rb