spark_api 1.3.3 → 1.3.6

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.3.3
1
+ 1.3.6
@@ -11,7 +11,7 @@ module SparkApi
11
11
  # valid configuration options
12
12
  VALID_OPTION_KEYS = [:api_key, :api_secret, :api_user, :endpoint,
13
13
  :user_agent, :version, :ssl, :ssl_verify, :oauth2_provider, :authentication_mode,
14
- :auth_endpoint, :callback].freeze
14
+ :auth_endpoint, :callback, :compress].freeze
15
15
  OAUTH2_KEYS = [:authorization_uri, :access_uri, :client_id, :client_secret,
16
16
  # Requirements for authorization_code grant type
17
17
  :redirect_uri,
@@ -40,6 +40,7 @@ module SparkApi
40
40
  DEFAULT_SSL = true
41
41
  DEFAULT_SSL_VERIFY = true
42
42
  DEFAULT_OAUTH2 = nil
43
+ DEFAULT_COMPRESS = false
43
44
 
44
45
  X_SPARK_API_USER_AGENT = "X-SparkApi-User-Agent"
45
46
 
@@ -71,6 +72,7 @@ module SparkApi
71
72
  self.ssl = DEFAULT_SSL
72
73
  self.ssl_verify = DEFAULT_SSL_VERIFY
73
74
  self.version = DEFAULT_VERSION
75
+ self.compress = DEFAULT_COMPRESS
74
76
  self
75
77
  end
76
78
  end
@@ -18,6 +18,10 @@ module SparkApi
18
18
  opts[:url] = @endpoint.sub /^https:/, "http:"
19
19
  end
20
20
 
21
+ if self.compress
22
+ opts[:headers]["Accept-Encoding"] = 'gzip, deflate'
23
+ end
24
+
21
25
  conn = Faraday.new(opts) do |conn|
22
26
  conn.response :spark_api
23
27
  conn.adapter Faraday.default_adapter
@@ -1,5 +1,6 @@
1
1
  require 'faraday'
2
2
  require 'cgi'
3
+ require 'zlib'
3
4
 
4
5
  module SparkApi
5
6
  #=Spark API Faraday middleware
@@ -14,6 +15,9 @@ module SparkApi
14
15
  # Handles pretty much all the api response parsing and error handling. All responses that
15
16
  # indicate a failure will raise a SparkApi::ClientError exception
16
17
  def on_complete(env)
18
+
19
+ env[:body] = decompress_body(env)
20
+
17
21
  body = MultiJson.decode(env[:body])
18
22
  SparkApi.logger.debug("Response Body: #{body.inspect}")
19
23
  unless body.is_a?(Hash) && body.key?("D")
@@ -62,6 +66,18 @@ module SparkApi
62
66
  end
63
67
  env[:body] = results
64
68
  end
69
+
70
+ def decompress_body(env)
71
+ encoding = env[:response_headers]['content-encoding'].to_s.downcase
72
+
73
+ if encoding == 'gzip'
74
+ env[:body] = Zlib::GzipReader.new(StringIO.new(env[:body])).read
75
+ elsif encoding == 'deflate'
76
+ env[:body] = Zlib::Inflate.inflate(env[:body])
77
+ end
78
+
79
+ env[:body]
80
+ end
65
81
 
66
82
  end
67
83
  Faraday.register_middleware :response, :spark_api => FaradayMiddleware
@@ -59,7 +59,7 @@ module SparkApi
59
59
  return save!(arguments)
60
60
  rescue BadResourceRequest => e
61
61
  self.errors << { :code => e.code, :message => e.message }
62
- SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
62
+ SparkApi.logger.warn("Failed to save resource #{self}: #{e.message}")
63
63
  rescue NotFound => e
64
64
  self.errors << {:code => e.code, :message => e.message}
65
65
  SparkApi.logger.error("Failed to save resource #{self}: #{e.message}")
@@ -55,11 +55,12 @@ module SparkApi
55
55
  def initialize(attributes={})
56
56
  @attributes = {}
57
57
  @errors = []
58
- load(attributes)
58
+ load(attributes, { :clean => true })
59
59
  end
60
60
 
61
- def load(attributes)
61
+ def load(attributes, options = {})
62
62
  attributes.each do |key,val|
63
+ attribute_will_change!(key) unless options[:clean]
63
64
  @attributes[key.to_s] = val
64
65
  end
65
66
  end
@@ -126,7 +127,8 @@ module SparkApi
126
127
 
127
128
  protected
128
129
 
129
- def write_attribute(attribute, value)
130
+ def write_attribute(attribute, value)
131
+ attribute = attribute.to_s
130
132
  unless attributes[attribute] == value
131
133
  attribute_will_change!(attribute)
132
134
  attributes[attribute] = value
@@ -44,8 +44,9 @@ module SparkApi
44
44
  end
45
45
 
46
46
  def attribute_will_change!(attr)
47
+ attr = attr.to_s
47
48
  begin
48
- value = @attributes[attr.to_s]
49
+ value = @attributes[attr]
49
50
  value = value.duplicable? ? value.clone : value
50
51
  rescue TypeError, NoMethodError; end
51
52
 
@@ -27,7 +27,6 @@ module SparkApi
27
27
  [:attach, :detach].each do |action|
28
28
  method = (action == :attach ? :put : :delete)
29
29
  define_method(action) do |contact|
30
- return false unless persisted?
31
30
  self.errors = []
32
31
  contact_id = contact.is_a?(Contact) ? contact.Id : contact
33
32
  begin
@@ -178,6 +178,17 @@ describe SparkApi::Client, "Client config" do
178
178
  'Content-Type'=>'application/json'
179
179
  })
180
180
  end
181
+
182
+ it "should not set gzip header by default" do
183
+ c = SparkApi::Client.new(:endpoint => "https://sparkapi.com")
184
+ c.connection.headers["Accept-Encoding"].should be_nil
185
+ end
186
+
187
+ it "should set gzip header if compress option is set" do
188
+ c = SparkApi::Client.new(:endpoint => "https://api.sparkapi.com",
189
+ :compress => true)
190
+ c.connection.headers["Accept-Encoding"].should eq("gzip, deflate")
191
+ end
181
192
 
182
193
  end
183
194
 
@@ -1,4 +1,5 @@
1
1
  require './spec/spec_helper'
2
+ require 'zlib'
2
3
 
3
4
  # Test out the faraday connection stack.
4
5
  describe SparkApi do
@@ -83,7 +84,54 @@ describe SparkApi do
83
84
  response.success.should eq(true)
84
85
  response.results.length.should be > 0
85
86
  end
86
-
87
+
88
+ end
89
+
90
+ describe "#decompress_body" do
91
+ let(:middleware) do
92
+ SparkApi::FaradayMiddleware.new(SparkApi)
93
+ end
94
+
95
+ it "should leave the body along if content-encoding not set" do
96
+ env = {
97
+ :body => "UNCOMPRESSED",
98
+ :response_headers => {}
99
+ }
100
+
101
+ middleware.decompress_body(env).should eq("UNCOMPRESSED")
102
+ end
103
+
104
+ it "should unzip gzipped data" do
105
+ bod = "OUTPUT BODY"
106
+
107
+ out = StringIO.new
108
+ gz = Zlib::GzipWriter.new(out)
109
+ gz.write bod
110
+ gz.close
111
+
112
+ env = {
113
+ :body => out.string,
114
+ :response_headers => {
115
+ 'content-encoding' => 'gzip'
116
+ }
117
+ }
118
+
119
+ middleware.decompress_body(env).should eq(bod)
120
+ end
121
+
122
+ it "should inflate deflated data" do
123
+ bod = "INFLATED BODY"
124
+ deflated_bod = Zlib::Deflate.deflate(bod)
125
+
126
+ env = {
127
+ :body => deflated_bod,
128
+ :response_headers => {
129
+ 'content-encoding' => 'deflate'
130
+ }
131
+ }
132
+
133
+ middleware.decompress_body(env).should eq(bod)
134
+ end
87
135
  end
88
136
 
89
137
  end
@@ -14,6 +14,10 @@ describe Dirty do
14
14
  @model.Name = "a new name"
15
15
  end
16
16
 
17
+ it "lets you know if you've changed any attributes" do
18
+ @model.changed?.should be true
19
+ end
20
+
17
21
  it "should return an array of the attributes that have been changed" do
18
22
  @model.changed.should eq(["Name"])
19
23
  end
@@ -43,4 +47,18 @@ describe Dirty do
43
47
  })
44
48
  end
45
49
 
50
+ it "does not mark attributes dirty when initialized" do
51
+ @model = MyExampleModel.new(:Name => "some sort of name")
52
+ @model.attributes.size.should eq(1)
53
+ @model.changed_attributes.should eq({})
54
+ @model.dirty_attributes.should eq({})
55
+ end
56
+
57
+ it "marks attributes dirty that are loaded later" do
58
+ @model.load(:Name => "some sort of name")
59
+ @model.attributes.size.should eq(1)
60
+ @model.changed_attributes.should eq({"Name"=>"some old name"})
61
+ @model.dirty_attributes.should eq({"Name"=>"some sort of name"})
62
+ end
63
+
46
64
  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: 29
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 3
9
- - 3
10
- version: 1.3.3
9
+ - 6
10
+ version: 1.3.6
11
11
  platform: ruby
12
12
  authors:
13
13
  - Brandon Hornseth
@@ -16,9 +16,10 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2013-03-08 00:00:00 Z
19
+ date: 2013-05-20 00:00:00 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
+ prerelease: false
22
23
  type: :runtime
23
24
  requirement: &id001 !ruby/object:Gem::Requirement
24
25
  none: false
@@ -31,10 +32,10 @@ dependencies:
31
32
  - 8
32
33
  - 1
33
34
  version: 0.8.1
34
- version_requirements: *id001
35
- prerelease: false
36
35
  name: faraday
36
+ version_requirements: *id001
37
37
  - !ruby/object:Gem::Dependency
38
+ prerelease: false
38
39
  type: :runtime
39
40
  requirement: &id002 !ruby/object:Gem::Requirement
40
41
  none: false
@@ -46,10 +47,10 @@ dependencies:
46
47
  - 1
47
48
  - 0
48
49
  version: "1.0"
49
- version_requirements: *id002
50
- prerelease: false
51
50
  name: multi_json
51
+ version_requirements: *id002
52
52
  - !ruby/object:Gem::Dependency
53
+ prerelease: false
53
54
  type: :runtime
54
55
  requirement: &id003 !ruby/object:Gem::Requirement
55
56
  none: false
@@ -61,10 +62,10 @@ dependencies:
61
62
  - 1
62
63
  - 7
63
64
  version: "1.7"
64
- version_requirements: *id003
65
- prerelease: false
66
65
  name: json
66
+ version_requirements: *id003
67
67
  - !ruby/object:Gem::Dependency
68
+ prerelease: false
68
69
  type: :runtime
69
70
  requirement: &id004 !ruby/object:Gem::Requirement
70
71
  none: false
@@ -85,10 +86,10 @@ dependencies:
85
86
  - 0
86
87
  - 0
87
88
  version: 4.0.0
88
- version_requirements: *id004
89
- prerelease: false
90
89
  name: builder
90
+ version_requirements: *id004
91
91
  - !ruby/object:Gem::Dependency
92
+ prerelease: false
92
93
  type: :runtime
93
94
  requirement: &id005 !ruby/object:Gem::Requirement
94
95
  none: false
@@ -110,10 +111,10 @@ dependencies:
110
111
  - 0
111
112
  - 0
112
113
  version: 4.0.0
113
- version_requirements: *id005
114
- prerelease: false
115
114
  name: will_paginate
115
+ version_requirements: *id005
116
116
  - !ruby/object:Gem::Dependency
117
+ prerelease: false
117
118
  type: :runtime
118
119
  requirement: &id006 !ruby/object:Gem::Requirement
119
120
  none: false
@@ -125,10 +126,10 @@ dependencies:
125
126
  - 1
126
127
  - 0
127
128
  version: "1.0"
128
- version_requirements: *id006
129
- prerelease: false
130
129
  name: highline
130
+ version_requirements: *id006
131
131
  - !ruby/object:Gem::Dependency
132
+ prerelease: false
132
133
  type: :development
133
134
  requirement: &id007 !ruby/object:Gem::Requirement
134
135
  none: false
@@ -141,10 +142,10 @@ dependencies:
141
142
  - 9
142
143
  - 2
143
144
  version: 0.9.2
144
- version_requirements: *id007
145
- prerelease: false
146
145
  name: rake
146
+ version_requirements: *id007
147
147
  - !ruby/object:Gem::Dependency
148
+ prerelease: false
148
149
  type: :development
149
150
  requirement: &id008 !ruby/object:Gem::Requirement
150
151
  none: false
@@ -157,10 +158,10 @@ dependencies:
157
158
  - 12
158
159
  - 0
159
160
  version: 2.12.0
160
- version_requirements: *id008
161
- prerelease: false
162
161
  name: rspec
162
+ version_requirements: *id008
163
163
  - !ruby/object:Gem::Dependency
164
+ prerelease: false
164
165
  type: :development
165
166
  requirement: &id009 !ruby/object:Gem::Requirement
166
167
  none: false
@@ -172,10 +173,10 @@ dependencies:
172
173
  - 1
173
174
  - 9
174
175
  version: "1.9"
175
- version_requirements: *id009
176
- prerelease: false
177
176
  name: webmock
177
+ version_requirements: *id009
178
178
  - !ruby/object:Gem::Dependency
179
+ prerelease: false
179
180
  type: :development
180
181
  requirement: &id010 !ruby/object:Gem::Requirement
181
182
  none: false
@@ -187,10 +188,10 @@ dependencies:
187
188
  - 0
188
189
  - 3
189
190
  version: "0.3"
190
- version_requirements: *id010
191
- prerelease: false
192
191
  name: typhoeus
192
+ version_requirements: *id010
193
193
  - !ruby/object:Gem::Dependency
194
+ prerelease: false
194
195
  type: :development
195
196
  requirement: &id011 !ruby/object:Gem::Requirement
196
197
  none: false
@@ -203,10 +204,10 @@ dependencies:
203
204
  - 7
204
205
  - 0
205
206
  version: 1.7.0
206
- version_requirements: *id011
207
- prerelease: false
208
207
  name: ci_reporter
208
+ version_requirements: *id011
209
209
  - !ruby/object:Gem::Dependency
210
+ prerelease: false
210
211
  type: :development
211
212
  requirement: &id012 !ruby/object:Gem::Requirement
212
213
  none: false
@@ -219,10 +220,10 @@ dependencies:
219
220
  - 9
220
221
  - 9
221
222
  version: 0.9.9
222
- version_requirements: *id012
223
- prerelease: false
224
223
  name: rcov
224
+ version_requirements: *id012
225
225
  - !ruby/object:Gem::Dependency
226
+ prerelease: false
226
227
  type: :development
227
228
  requirement: &id013 !ruby/object:Gem::Requirement
228
229
  none: false
@@ -235,10 +236,10 @@ dependencies:
235
236
  - 2
236
237
  - 5
237
238
  version: 0.2.5
238
- version_requirements: *id013
239
- prerelease: false
240
239
  name: flexmls_gems
240
+ version_requirements: *id013
241
241
  - !ruby/object:Gem::Dependency
242
+ prerelease: false
242
243
  type: :development
243
244
  requirement: &id014 !ruby/object:Gem::Requirement
244
245
  none: false
@@ -249,10 +250,10 @@ dependencies:
249
250
  segments:
250
251
  - 0
251
252
  version: "0"
252
- version_requirements: *id014
253
- prerelease: false
254
253
  name: guard-rspec
254
+ version_requirements: *id014
255
255
  - !ruby/object:Gem::Dependency
256
+ prerelease: false
256
257
  type: :development
257
258
  requirement: &id015 !ruby/object:Gem::Requirement
258
259
  none: false
@@ -263,10 +264,10 @@ dependencies:
263
264
  segments:
264
265
  - 0
265
266
  version: "0"
266
- version_requirements: *id015
267
- prerelease: false
268
267
  name: rb-readline
268
+ version_requirements: *id015
269
269
  - !ruby/object:Gem::Dependency
270
+ prerelease: false
270
271
  type: :development
271
272
  requirement: &id016 !ruby/object:Gem::Requirement
272
273
  none: false
@@ -277,9 +278,8 @@ dependencies:
277
278
  segments:
278
279
  - 0
279
280
  version: "0"
280
- version_requirements: *id016
281
- prerelease: false
282
281
  name: rb-fsevent
282
+ version_requirements: *id016
283
283
  description: The spark_api gem handles most of the boilerplate for communicating with the Spark API rest services, including authentication and request parsing.
284
284
  email: api-support@sparkapi.com
285
285
  executables:
@@ -296,233 +296,233 @@ files:
296
296
  - README.md
297
297
  - VERSION
298
298
  - bin/spark_api
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
299
+ - lib/spark_api/options_hash.rb
317
300
  - lib/spark_api/connection.rb
301
+ - lib/spark_api/request.rb
318
302
  - lib/spark_api/multi_client.rb
319
- - lib/spark_api/models/document.rb
320
- - lib/spark_api/models/rental_calendar.rb
321
- - lib/spark_api/models/finders.rb
322
- - lib/spark_api/models/subresource.rb
323
- - lib/spark_api/models/fields.rb
324
- - lib/spark_api/models/photo.rb
325
- - lib/spark_api/models/contact.rb
326
303
  - 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
304
+ - lib/spark_api/models/account.rb
305
+ - lib/spark_api/models/virtual_tour.rb
306
+ - lib/spark_api/models/connect_prefs.rb
307
+ - lib/spark_api/models/portal.rb
308
+ - lib/spark_api/models/subresource.rb
309
+ - lib/spark_api/models/market_statistics.rb
330
310
  - lib/spark_api/models/system_info.rb
331
- - lib/spark_api/models/vow_account.rb
332
311
  - lib/spark_api/models/listing.rb
333
- - lib/spark_api/models/constraint.rb
334
- - lib/spark_api/models/base.rb
312
+ - lib/spark_api/models/contact.rb
335
313
  - lib/spark_api/models/listing_cart.rb
336
- - lib/spark_api/models/saved_search.rb
337
- - lib/spark_api/models/open_house.rb
338
- - lib/spark_api/models/activity.rb
314
+ - lib/spark_api/models/rental_calendar.rb
315
+ - lib/spark_api/models/concerns/savable.rb
316
+ - lib/spark_api/models/concerns/destroyable.rb
339
317
  - lib/spark_api/models/dirty.rb
340
- - lib/spark_api/models/connect_prefs.rb
318
+ - lib/spark_api/models/custom_fields.rb
341
319
  - lib/spark_api/models/shared_listing.rb
342
- - lib/spark_api/models/concerns/destroyable.rb
343
- - lib/spark_api/models/concerns/savable.rb
344
- - lib/spark_api/models/standard_fields.rb
345
- - lib/spark_api/models/market_statistics.rb
346
- - lib/spark_api/models/portal.rb
347
- - lib/spark_api/models/note.rb
320
+ - lib/spark_api/models/activity.rb
348
321
  - 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
322
+ - lib/spark_api/models/saved_search.rb
323
+ - lib/spark_api/models/standard_fields.rb
324
+ - lib/spark_api/models/document.rb
325
+ - lib/spark_api/models/open_house.rb
326
+ - lib/spark_api/models/vow_account.rb
327
+ - lib/spark_api/models/finders.rb
328
+ - lib/spark_api/models/fields.rb
329
+ - lib/spark_api/models/base.rb
354
330
  - lib/spark_api/models/tour_of_home.rb
331
+ - lib/spark_api/models/property_types.rb
332
+ - lib/spark_api/models/idx_link.rb
333
+ - lib/spark_api/models/notification.rb
334
+ - lib/spark_api/models/message.rb
335
+ - lib/spark_api/models/note.rb
336
+ - lib/spark_api/models/photo.rb
337
+ - lib/spark_api/models/concerns.rb
338
+ - lib/spark_api/models/constraint.rb
339
+ - lib/spark_api/models.rb
340
+ - lib/spark_api/primary_array.rb
355
341
  - 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
361
342
  - lib/spark_api/cli.rb
362
- - lib/spark_api/authentication.rb
343
+ - lib/spark_api/response.rb
363
344
  - lib/spark_api/configuration.rb
364
345
  - lib/spark_api/configuration/oauth2_configurable.rb
365
346
  - lib/spark_api/configuration/yaml.rb
347
+ - lib/spark_api/cli/setup.rb
348
+ - lib/spark_api/cli/api_auth.rb
349
+ - lib/spark_api/cli/oauth2.rb
350
+ - lib/spark_api/client.rb
351
+ - lib/spark_api/version.rb
352
+ - lib/spark_api/errors.rb
353
+ - lib/spark_api/authentication/base_auth.rb
354
+ - lib/spark_api/authentication/oauth2_impl/grant_type_base.rb
355
+ - lib/spark_api/authentication/oauth2_impl/grant_type_code.rb
356
+ - lib/spark_api/authentication/oauth2_impl/single_session_provider.rb
357
+ - lib/spark_api/authentication/oauth2_impl/simple_provider.rb
358
+ - lib/spark_api/authentication/oauth2_impl/grant_type_password.rb
359
+ - lib/spark_api/authentication/oauth2_impl/cli_provider.rb
360
+ - lib/spark_api/authentication/oauth2_impl/faraday_middleware.rb
361
+ - lib/spark_api/authentication/oauth2_impl/grant_type_refresh.rb
362
+ - lib/spark_api/authentication/api_auth.rb
363
+ - lib/spark_api/authentication/oauth2.rb
364
+ - lib/spark_api/faraday_middleware.rb
365
+ - lib/spark_api/authentication.rb
366
366
  - lib/spark_api.rb
367
- - script/console
368
- - script/example.rb
369
367
  - script/oauth2_example.rb
368
+ - script/console
370
369
  - script/combined_flow_example.rb
370
+ - script/example.rb
371
+ - spec/fixtures/fields/order.json
372
+ - spec/fixtures/fields/order_a.json
373
+ - spec/fixtures/session.json
371
374
  - spec/fixtures/portal/my_non_existant.json
375
+ - spec/fixtures/portal/disable.json
372
376
  - spec/fixtures/portal/my.json
373
377
  - spec/fixtures/portal/enable.json
374
- - spec/fixtures/portal/new.json
375
- - spec/fixtures/portal/disable.json
376
378
  - 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
379
+ - spec/fixtures/portal/new.json
388
380
  - spec/fixtures/generic_failure.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
381
+ - spec/fixtures/finders.json
408
382
  - spec/fixtures/property_types/property_types.json
409
- - spec/fixtures/accounts/all.json
383
+ - spec/fixtures/authentication_failure.json
384
+ - spec/fixtures/activities/get.json
410
385
  - spec/fixtures/accounts/password_save.json
411
386
  - spec/fixtures/accounts/office.json
412
- - spec/fixtures/accounts/my.json
413
387
  - spec/fixtures/accounts/my_put.json
414
- - spec/fixtures/accounts/my_save.json
388
+ - spec/fixtures/accounts/my.json
415
389
  - 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
427
- - spec/fixtures/listings/put_expiration_date.json
428
- - spec/fixtures/listings/no_subresources.json
429
- - spec/fixtures/listings/rental_calendar.json
430
- - spec/fixtures/listings/shared_listing_get.json
431
- - spec/fixtures/listings/constraints_with_pagination.json
432
- - spec/fixtures/listings/with_rental_calendar.json
433
- - spec/fixtures/listings/multiple.json
390
+ - spec/fixtures/accounts/my_save.json
391
+ - spec/fixtures/accounts/all.json
392
+ - spec/fixtures/contacts/vow_accounts/edit.json
393
+ - spec/fixtures/contacts/vow_accounts/get.json
394
+ - spec/fixtures/contacts/vow_accounts/post.json
395
+ - spec/fixtures/contacts/vow_accounts/new.json
396
+ - spec/fixtures/contacts/contacts.json
397
+ - spec/fixtures/contacts/my.json
398
+ - spec/fixtures/contacts/tags.json
399
+ - spec/fixtures/contacts/post.json
400
+ - spec/fixtures/contacts/new.json
401
+ - spec/fixtures/contacts/new_notify.json
402
+ - spec/fixtures/contacts/new_empty.json
434
403
  - 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
404
+ - spec/fixtures/listings/constraints.json
439
405
  - spec/fixtures/listings/with_documents.json
440
- - spec/fixtures/listings/put.json
441
- - spec/fixtures/listings/with_permissions.json
442
- - spec/fixtures/listings/with_vtour.json
443
- - spec/fixtures/listings/tour_of_homes_search.json
406
+ - spec/fixtures/listings/shared_listing_post.json
407
+ - spec/fixtures/listings/rental_calendar.json
408
+ - spec/fixtures/listings/no_subresources.json
444
409
  - spec/fixtures/listings/with_photos.json
410
+ - spec/fixtures/listings/put_expiration_date.json
411
+ - spec/fixtures/listings/photos/index.json
412
+ - spec/fixtures/listings/photos/post.json
413
+ - spec/fixtures/listings/photos/new.json
414
+ - spec/fixtures/listings/multiple.json
415
+ - spec/fixtures/listings/with_videos.json
416
+ - spec/fixtures/listings/tour_of_homes.json
417
+ - spec/fixtures/listings/shared_listing_get.json
445
418
  - spec/fixtures/listings/shared_listing_new.json
446
- - spec/fixtures/listings/videos_index.json
447
419
  - 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
420
+ - spec/fixtures/listings/with_rental_calendar.json
421
+ - spec/fixtures/listings/constraints_with_pagination.json
451
422
  - spec/fixtures/listings/document_index.json
452
- - spec/fixtures/listings/constraints.json
453
- - spec/fixtures/comments/new.json
423
+ - spec/fixtures/listings/virtual_tours_index.json
424
+ - spec/fixtures/listings/with_vtour.json
425
+ - spec/fixtures/listings/tour_of_homes_search.json
426
+ - spec/fixtures/listings/videos_index.json
427
+ - spec/fixtures/listings/with_permissions.json
428
+ - spec/fixtures/listings/put.json
429
+ - spec/fixtures/success.json
430
+ - spec/fixtures/standardfields/standardfields.json
431
+ - spec/fixtures/standardfields/nearby.json
432
+ - spec/fixtures/standardfields/stateorprovince.json
433
+ - spec/fixtures/standardfields/city.json
434
+ - spec/fixtures/notes/agent_shared_empty.json
435
+ - spec/fixtures/notes/agent_shared.json
436
+ - spec/fixtures/notes/add.json
437
+ - spec/fixtures/notes/new.json
438
+ - spec/fixtures/generic_delete.json
439
+ - spec/fixtures/oauth2/access_with_refresh.json
440
+ - spec/fixtures/oauth2/password_body.json
441
+ - spec/fixtures/oauth2/refresh_body.json
442
+ - spec/fixtures/oauth2/error.json
443
+ - spec/fixtures/oauth2/access_with_old_refresh.json
444
+ - spec/fixtures/oauth2/authorization_code_body.json
445
+ - spec/fixtures/oauth2/access.json
446
+ - spec/fixtures/oauth2_error.json
447
+ - spec/fixtures/errors/failure_with_msg.json
448
+ - spec/fixtures/errors/failure.json
449
+ - spec/fixtures/errors/expired.json
450
+ - spec/fixtures/errors/failure_with_constraint.json
454
451
  - spec/fixtures/comments/get.json
455
452
  - spec/fixtures/comments/post.json
456
- - spec/fixtures/finders.json
453
+ - spec/fixtures/comments/new.json
454
+ - spec/fixtures/count.json
455
+ - spec/fixtures/saved_searches/update.json
456
+ - spec/fixtures/saved_searches/get.json
457
+ - spec/fixtures/saved_searches/post.json
458
+ - spec/fixtures/saved_searches/new.json
459
+ - spec/fixtures/logo_fbs.png
460
+ - spec/fixtures/listing_carts/listing_cart.json
461
+ - spec/fixtures/listing_carts/add_listing.json
462
+ - spec/fixtures/listing_carts/add_listing_post.json
463
+ - spec/fixtures/listing_carts/remove_listing.json
464
+ - spec/fixtures/listing_carts/empty.json
465
+ - spec/fixtures/listing_carts/post.json
466
+ - spec/fixtures/listing_carts/new.json
467
+ - spec/fixtures/empty.json
468
+ - spec/fixtures/messages/new_with_recipients.json
469
+ - spec/fixtures/messages/post.json
470
+ - spec/fixtures/messages/new.json
471
+ - spec/fixtures/messages/new_empty.json
472
+ - spec/fixtures/base.json
457
473
  - spec/fixtures/notifications/notifications.json
458
- - spec/fixtures/notifications/new_empty.json
459
474
  - spec/fixtures/notifications/unread.json
460
475
  - spec/fixtures/notifications/mark_read.json
461
- - spec/fixtures/notifications/new.json
462
476
  - 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
477
+ - spec/fixtures/notifications/new.json
478
+ - spec/fixtures/notifications/new_empty.json
479
479
  - spec/unit/spark_api_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
480
+ - spec/unit/spark_api/primary_array_spec.rb
481
+ - spec/unit/spark_api/options_hash_spec.rb
482
+ - spec/unit/spark_api/models/finders_spec.rb
492
483
  - spec/unit/spark_api/models/saved_search_spec.rb
493
- - spec/unit/spark_api/models/contact_spec.rb
494
- - spec/unit/spark_api/models/listing_cart_spec.rb
495
484
  - spec/unit/spark_api/models/video_spec.rb
485
+ - spec/unit/spark_api/models/listing_cart_spec.rb
486
+ - spec/unit/spark_api/models/subresource_spec.rb
487
+ - spec/unit/spark_api/models/vow_account_spec.rb
488
+ - spec/unit/spark_api/models/message_spec.rb
489
+ - spec/unit/spark_api/models/shared_listing_spec.rb
490
+ - spec/unit/spark_api/models/dirty_spec.rb
491
+ - spec/unit/spark_api/models/listing_spec.rb
492
+ - spec/unit/spark_api/models/base_spec.rb
493
+ - spec/unit/spark_api/models/note_spec.rb
494
+ - spec/unit/spark_api/models/portal_spec.rb
495
+ - spec/unit/spark_api/models/system_info_spec.rb
496
+ - spec/unit/spark_api/models/account_spec.rb
496
497
  - spec/unit/spark_api/models/rental_calendar_spec.rb
497
498
  - spec/unit/spark_api/models/document_spec.rb
498
- - spec/unit/spark_api/models/activity_spec.rb
499
+ - spec/unit/spark_api/models/contact_spec.rb
499
500
  - 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
501
+ - spec/unit/spark_api/models/concerns/savable_spec.rb
502
+ - spec/unit/spark_api/models/concerns/destroyable_spec.rb
503
+ - spec/unit/spark_api/models/activity_spec.rb
504
+ - spec/unit/spark_api/models/virtual_tour_spec.rb
503
505
  - spec/unit/spark_api/models/fields_spec.rb
504
- - spec/unit/spark_api/models/shared_listing_spec.rb
505
- - spec/unit/spark_api/models/note_spec.rb
506
+ - spec/unit/spark_api/models/tour_of_home_spec.rb
507
+ - spec/unit/spark_api/models/notification_spec.rb
506
508
  - spec/unit/spark_api/models/connect_prefs_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
509
+ - spec/unit/spark_api/models/constraint_spec.rb
511
510
  - 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
517
511
  - spec/unit/spark_api/models/standard_fields_spec.rb
512
+ - spec/unit/spark_api/models/open_house_spec.rb
513
+ - spec/unit/spark_api/authentication_spec.rb
518
514
  - 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
522
515
  - spec/unit/spark_api/configuration_spec.rb
523
- - spec/unit/spark_api/request_spec.rb
524
516
  - spec/unit/spark_api/configuration/yaml_spec.rb
525
517
  - spec/unit/spark_api/multi_client_spec.rb
518
+ - spec/unit/spark_api/authentication/base_auth_spec.rb
519
+ - spec/unit/spark_api/authentication/oauth2_impl/faraday_middleware_spec.rb
520
+ - spec/unit/spark_api/authentication/oauth2_impl/grant_type_base_spec.rb
521
+ - spec/unit/spark_api/authentication/oauth2_impl/single_session_provider_spec.rb
522
+ - spec/unit/spark_api/authentication/api_auth_spec.rb
523
+ - spec/unit/spark_api/authentication/oauth2_spec.rb
524
+ - spec/unit/spark_api/request_spec.rb
525
+ - spec/unit/spark_api/paginate_spec.rb
526
526
  - spec/spec_helper.rb
527
527
  homepage: https://github.com/sparkapi/spark_api
528
528
  licenses: []
@@ -554,164 +554,164 @@ required_rubygems_version: !ruby/object:Gem::Requirement
554
554
  requirements: []
555
555
 
556
556
  rubyforge_project: spark_api
557
- rubygems_version: 1.8.24
557
+ rubygems_version: 1.8.15
558
558
  signing_key:
559
559
  specification_version: 3
560
560
  summary: A library for interacting with the Spark web services.
561
561
  test_files:
562
+ - spec/fixtures/fields/order.json
563
+ - spec/fixtures/fields/order_a.json
564
+ - spec/fixtures/session.json
562
565
  - spec/fixtures/portal/my_non_existant.json
566
+ - spec/fixtures/portal/disable.json
563
567
  - spec/fixtures/portal/my.json
564
568
  - spec/fixtures/portal/enable.json
565
- - spec/fixtures/portal/new.json
566
- - spec/fixtures/portal/disable.json
567
569
  - 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
570
+ - spec/fixtures/portal/new.json
579
571
  - spec/fixtures/generic_failure.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
572
+ - spec/fixtures/finders.json
599
573
  - spec/fixtures/property_types/property_types.json
600
- - spec/fixtures/accounts/all.json
574
+ - spec/fixtures/authentication_failure.json
575
+ - spec/fixtures/activities/get.json
601
576
  - spec/fixtures/accounts/password_save.json
602
577
  - spec/fixtures/accounts/office.json
603
- - spec/fixtures/accounts/my.json
604
578
  - spec/fixtures/accounts/my_put.json
605
- - spec/fixtures/accounts/my_save.json
579
+ - spec/fixtures/accounts/my.json
606
580
  - 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
618
- - spec/fixtures/listings/put_expiration_date.json
619
- - spec/fixtures/listings/no_subresources.json
620
- - spec/fixtures/listings/rental_calendar.json
621
- - spec/fixtures/listings/shared_listing_get.json
622
- - spec/fixtures/listings/constraints_with_pagination.json
623
- - spec/fixtures/listings/with_rental_calendar.json
624
- - spec/fixtures/listings/multiple.json
581
+ - spec/fixtures/accounts/my_save.json
582
+ - spec/fixtures/accounts/all.json
583
+ - spec/fixtures/contacts/vow_accounts/edit.json
584
+ - spec/fixtures/contacts/vow_accounts/get.json
585
+ - spec/fixtures/contacts/vow_accounts/post.json
586
+ - spec/fixtures/contacts/vow_accounts/new.json
587
+ - spec/fixtures/contacts/contacts.json
588
+ - spec/fixtures/contacts/my.json
589
+ - spec/fixtures/contacts/tags.json
590
+ - spec/fixtures/contacts/post.json
591
+ - spec/fixtures/contacts/new.json
592
+ - spec/fixtures/contacts/new_notify.json
593
+ - spec/fixtures/contacts/new_empty.json
625
594
  - 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
595
+ - spec/fixtures/listings/constraints.json
630
596
  - spec/fixtures/listings/with_documents.json
631
- - spec/fixtures/listings/put.json
632
- - spec/fixtures/listings/with_permissions.json
633
- - spec/fixtures/listings/with_vtour.json
634
- - spec/fixtures/listings/tour_of_homes_search.json
597
+ - spec/fixtures/listings/shared_listing_post.json
598
+ - spec/fixtures/listings/rental_calendar.json
599
+ - spec/fixtures/listings/no_subresources.json
635
600
  - spec/fixtures/listings/with_photos.json
601
+ - spec/fixtures/listings/put_expiration_date.json
602
+ - spec/fixtures/listings/photos/index.json
603
+ - spec/fixtures/listings/photos/post.json
604
+ - spec/fixtures/listings/photos/new.json
605
+ - spec/fixtures/listings/multiple.json
606
+ - spec/fixtures/listings/with_videos.json
607
+ - spec/fixtures/listings/tour_of_homes.json
608
+ - spec/fixtures/listings/shared_listing_get.json
636
609
  - spec/fixtures/listings/shared_listing_new.json
637
- - spec/fixtures/listings/videos_index.json
638
610
  - 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
611
+ - spec/fixtures/listings/with_rental_calendar.json
612
+ - spec/fixtures/listings/constraints_with_pagination.json
642
613
  - spec/fixtures/listings/document_index.json
643
- - spec/fixtures/listings/constraints.json
644
- - spec/fixtures/comments/new.json
614
+ - spec/fixtures/listings/virtual_tours_index.json
615
+ - spec/fixtures/listings/with_vtour.json
616
+ - spec/fixtures/listings/tour_of_homes_search.json
617
+ - spec/fixtures/listings/videos_index.json
618
+ - spec/fixtures/listings/with_permissions.json
619
+ - spec/fixtures/listings/put.json
620
+ - spec/fixtures/success.json
621
+ - spec/fixtures/standardfields/standardfields.json
622
+ - spec/fixtures/standardfields/nearby.json
623
+ - spec/fixtures/standardfields/stateorprovince.json
624
+ - spec/fixtures/standardfields/city.json
625
+ - spec/fixtures/notes/agent_shared_empty.json
626
+ - spec/fixtures/notes/agent_shared.json
627
+ - spec/fixtures/notes/add.json
628
+ - spec/fixtures/notes/new.json
629
+ - spec/fixtures/generic_delete.json
630
+ - spec/fixtures/oauth2/access_with_refresh.json
631
+ - spec/fixtures/oauth2/password_body.json
632
+ - spec/fixtures/oauth2/refresh_body.json
633
+ - spec/fixtures/oauth2/error.json
634
+ - spec/fixtures/oauth2/access_with_old_refresh.json
635
+ - spec/fixtures/oauth2/authorization_code_body.json
636
+ - spec/fixtures/oauth2/access.json
637
+ - spec/fixtures/oauth2_error.json
638
+ - spec/fixtures/errors/failure_with_msg.json
639
+ - spec/fixtures/errors/failure.json
640
+ - spec/fixtures/errors/expired.json
641
+ - spec/fixtures/errors/failure_with_constraint.json
645
642
  - spec/fixtures/comments/get.json
646
643
  - spec/fixtures/comments/post.json
647
- - spec/fixtures/finders.json
644
+ - spec/fixtures/comments/new.json
645
+ - spec/fixtures/count.json
646
+ - spec/fixtures/saved_searches/update.json
647
+ - spec/fixtures/saved_searches/get.json
648
+ - spec/fixtures/saved_searches/post.json
649
+ - spec/fixtures/saved_searches/new.json
650
+ - spec/fixtures/logo_fbs.png
651
+ - spec/fixtures/listing_carts/listing_cart.json
652
+ - spec/fixtures/listing_carts/add_listing.json
653
+ - spec/fixtures/listing_carts/add_listing_post.json
654
+ - spec/fixtures/listing_carts/remove_listing.json
655
+ - spec/fixtures/listing_carts/empty.json
656
+ - spec/fixtures/listing_carts/post.json
657
+ - spec/fixtures/listing_carts/new.json
658
+ - spec/fixtures/empty.json
659
+ - spec/fixtures/messages/new_with_recipients.json
660
+ - spec/fixtures/messages/post.json
661
+ - spec/fixtures/messages/new.json
662
+ - spec/fixtures/messages/new_empty.json
663
+ - spec/fixtures/base.json
648
664
  - spec/fixtures/notifications/notifications.json
649
- - spec/fixtures/notifications/new_empty.json
650
665
  - spec/fixtures/notifications/unread.json
651
666
  - spec/fixtures/notifications/mark_read.json
652
- - spec/fixtures/notifications/new.json
653
667
  - 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
668
+ - spec/fixtures/notifications/new.json
669
+ - spec/fixtures/notifications/new_empty.json
670
670
  - spec/unit/spark_api_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
671
+ - spec/unit/spark_api/primary_array_spec.rb
672
+ - spec/unit/spark_api/options_hash_spec.rb
673
+ - spec/unit/spark_api/models/finders_spec.rb
683
674
  - spec/unit/spark_api/models/saved_search_spec.rb
684
- - spec/unit/spark_api/models/contact_spec.rb
685
- - spec/unit/spark_api/models/listing_cart_spec.rb
686
675
  - spec/unit/spark_api/models/video_spec.rb
676
+ - spec/unit/spark_api/models/listing_cart_spec.rb
677
+ - spec/unit/spark_api/models/subresource_spec.rb
678
+ - spec/unit/spark_api/models/vow_account_spec.rb
679
+ - spec/unit/spark_api/models/message_spec.rb
680
+ - spec/unit/spark_api/models/shared_listing_spec.rb
681
+ - spec/unit/spark_api/models/dirty_spec.rb
682
+ - spec/unit/spark_api/models/listing_spec.rb
683
+ - spec/unit/spark_api/models/base_spec.rb
684
+ - spec/unit/spark_api/models/note_spec.rb
685
+ - spec/unit/spark_api/models/portal_spec.rb
686
+ - spec/unit/spark_api/models/system_info_spec.rb
687
+ - spec/unit/spark_api/models/account_spec.rb
687
688
  - spec/unit/spark_api/models/rental_calendar_spec.rb
688
689
  - spec/unit/spark_api/models/document_spec.rb
689
- - spec/unit/spark_api/models/activity_spec.rb
690
+ - spec/unit/spark_api/models/contact_spec.rb
690
691
  - 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
692
+ - spec/unit/spark_api/models/concerns/savable_spec.rb
693
+ - spec/unit/spark_api/models/concerns/destroyable_spec.rb
694
+ - spec/unit/spark_api/models/activity_spec.rb
695
+ - spec/unit/spark_api/models/virtual_tour_spec.rb
694
696
  - spec/unit/spark_api/models/fields_spec.rb
695
- - spec/unit/spark_api/models/shared_listing_spec.rb
696
- - spec/unit/spark_api/models/note_spec.rb
697
+ - spec/unit/spark_api/models/tour_of_home_spec.rb
698
+ - spec/unit/spark_api/models/notification_spec.rb
697
699
  - spec/unit/spark_api/models/connect_prefs_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
700
+ - spec/unit/spark_api/models/constraint_spec.rb
702
701
  - 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
708
702
  - spec/unit/spark_api/models/standard_fields_spec.rb
703
+ - spec/unit/spark_api/models/open_house_spec.rb
704
+ - spec/unit/spark_api/authentication_spec.rb
709
705
  - 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
713
706
  - spec/unit/spark_api/configuration_spec.rb
714
- - spec/unit/spark_api/request_spec.rb
715
707
  - spec/unit/spark_api/configuration/yaml_spec.rb
716
708
  - spec/unit/spark_api/multi_client_spec.rb
709
+ - spec/unit/spark_api/authentication/base_auth_spec.rb
710
+ - spec/unit/spark_api/authentication/oauth2_impl/faraday_middleware_spec.rb
711
+ - spec/unit/spark_api/authentication/oauth2_impl/grant_type_base_spec.rb
712
+ - spec/unit/spark_api/authentication/oauth2_impl/single_session_provider_spec.rb
713
+ - spec/unit/spark_api/authentication/api_auth_spec.rb
714
+ - spec/unit/spark_api/authentication/oauth2_spec.rb
715
+ - spec/unit/spark_api/request_spec.rb
716
+ - spec/unit/spark_api/paginate_spec.rb
717
717
  - spec/spec_helper.rb