spark_api 1.4.34 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/VERSION +1 -1
  4. data/lib/spark_api/authentication/api_auth.rb +1 -1
  5. data/lib/spark_api/authentication/oauth2.rb +1 -1
  6. data/lib/spark_api/authentication/oauth2_impl/grant_type_base.rb +1 -1
  7. data/lib/spark_api/client.rb +2 -2
  8. data/lib/spark_api/request.rb +1 -1
  9. data/spec/spec_helper.rb +9 -4
  10. data/spec/unit/spark_api/authentication/api_auth_spec.rb +21 -22
  11. data/spec/unit/spark_api/authentication/base_auth_spec.rb +3 -3
  12. data/spec/unit/spark_api/authentication/oauth2_impl/faraday_middleware_spec.rb +1 -1
  13. data/spec/unit/spark_api/authentication/oauth2_impl/grant_type_base_spec.rb +1 -1
  14. data/spec/unit/spark_api/authentication/oauth2_impl/single_session_provider_spec.rb +2 -2
  15. data/spec/unit/spark_api/authentication/oauth2_spec.rb +40 -40
  16. data/spec/unit/spark_api/authentication_spec.rb +2 -2
  17. data/spec/unit/spark_api/configuration/yaml_spec.rb +44 -44
  18. data/spec/unit/spark_api/configuration_spec.rb +56 -57
  19. data/spec/unit/spark_api/faraday_middleware_spec.rb +12 -12
  20. data/spec/unit/spark_api/models/account_spec.rb +20 -20
  21. data/spec/unit/spark_api/models/activity_spec.rb +5 -5
  22. data/spec/unit/spark_api/models/base_spec.rb +32 -32
  23. data/spec/unit/spark_api/models/concerns/destroyable_spec.rb +2 -2
  24. data/spec/unit/spark_api/models/concerns/savable_spec.rb +19 -19
  25. data/spec/unit/spark_api/models/connect_prefs_spec.rb +1 -1
  26. data/spec/unit/spark_api/models/constraint_spec.rb +1 -1
  27. data/spec/unit/spark_api/models/contact_spec.rb +50 -50
  28. data/spec/unit/spark_api/models/dirty_spec.rb +12 -12
  29. data/spec/unit/spark_api/models/document_spec.rb +3 -3
  30. data/spec/unit/spark_api/models/fields_spec.rb +17 -17
  31. data/spec/unit/spark_api/models/finders_spec.rb +7 -7
  32. data/spec/unit/spark_api/models/floplan_spec.rb +4 -4
  33. data/spec/unit/spark_api/models/listing_cart_spec.rb +46 -46
  34. data/spec/unit/spark_api/models/listing_meta_translations_spec.rb +6 -6
  35. data/spec/unit/spark_api/models/listing_spec.rb +91 -91
  36. data/spec/unit/spark_api/models/message_spec.rb +10 -10
  37. data/spec/unit/spark_api/models/note_spec.rb +10 -10
  38. data/spec/unit/spark_api/models/notification_spec.rb +6 -6
  39. data/spec/unit/spark_api/models/open_house_spec.rb +4 -4
  40. data/spec/unit/spark_api/models/photo_spec.rb +8 -8
  41. data/spec/unit/spark_api/models/portal_spec.rb +4 -4
  42. data/spec/unit/spark_api/models/property_types_spec.rb +5 -5
  43. data/spec/unit/spark_api/models/rental_calendar_spec.rb +13 -11
  44. data/spec/unit/spark_api/models/rule_spec.rb +2 -2
  45. data/spec/unit/spark_api/models/saved_search_spec.rb +33 -33
  46. data/spec/unit/spark_api/models/search_template/quick_search_spec.rb +5 -5
  47. data/spec/unit/spark_api/models/shared_listing_spec.rb +12 -12
  48. data/spec/unit/spark_api/models/sort_spec.rb +3 -3
  49. data/spec/unit/spark_api/models/standard_fields_spec.rb +12 -12
  50. data/spec/unit/spark_api/models/subresource_spec.rb +18 -18
  51. data/spec/unit/spark_api/models/system_info_spec.rb +7 -7
  52. data/spec/unit/spark_api/models/tour_of_home_spec.rb +3 -3
  53. data/spec/unit/spark_api/models/video_spec.rb +9 -9
  54. data/spec/unit/spark_api/models/virtual_tour_spec.rb +7 -7
  55. data/spec/unit/spark_api/models/vow_account_spec.rb +8 -8
  56. data/spec/unit/spark_api/multi_client_spec.rb +14 -14
  57. data/spec/unit/spark_api/options_hash_spec.rb +4 -4
  58. data/spec/unit/spark_api/paginate_spec.rb +71 -71
  59. data/spec/unit/spark_api/primary_array_spec.rb +5 -5
  60. data/spec/unit/spark_api/request_spec.rb +60 -60
  61. data/spec/unit/spark_api_spec.rb +6 -6
  62. metadata +162 -233
@@ -13,7 +13,7 @@ describe SparkApi::Authentication do
13
13
  client = SparkApi.client
14
14
  stub_auth_request
15
15
  session = client.get "/session/c401736bf3d3f754f07c04e460e09573"
16
- session[0]["AuthToken"].should eq("c401736bf3d3f754f07c04e460e09573")
16
+ expect(session[0]["AuthToken"]).to eq("c401736bf3d3f754f07c04e460e09573")
17
17
  end
18
18
  it "should delete a session" do
19
19
  stub_auth_request
@@ -26,7 +26,7 @@ describe SparkApi::Authentication do
26
26
  to_return(:body => fixture("success.json"))
27
27
  client = SparkApi.client
28
28
  client.logout
29
- client.session.should eq(nil)
29
+ expect(client.session).to eq(nil)
30
30
  end
31
31
 
32
32
  end
@@ -4,70 +4,70 @@ describe SparkApi::Configuration::YamlConfig, "Yaml Config" do
4
4
  describe "api auth" do
5
5
  let(:api_file){ "spec/config/spark_api/test_key.yml" }
6
6
  it "should load a configured api key for development" do
7
- subject.stub(:env){ {} }
8
- subject.api_env.should eq("development")
7
+ allow(subject).to receive(:env){ {} }
8
+ expect(subject.api_env).to eq("development")
9
9
  subject.load_file(api_file)
10
- subject.oauth2?.should eq(false)
11
- subject.ssl_verify?.should eq(false)
12
- subject.api_key.should eq("demo_key")
13
- subject.api_secret.should eq("t3sts3cr3t")
14
- subject.endpoint.should eq("https://developers.sparkapi.com")
15
- subject.name.should eq("test_key")
16
- subject.client_keys.keys.should =~ [:api_key, :api_secret, :endpoint, :ssl_verify]
17
- subject.oauth2_keys.keys.should eq([])
10
+ expect(subject.oauth2?).to eq(false)
11
+ expect(subject.ssl_verify?).to eq(false)
12
+ expect(subject.api_key).to eq("demo_key")
13
+ expect(subject.api_secret).to eq("t3sts3cr3t")
14
+ expect(subject.endpoint).to eq("https://developers.sparkapi.com")
15
+ expect(subject.name).to eq("test_key")
16
+ expect(subject.client_keys.keys).to match_array([:api_key, :api_secret, :endpoint, :ssl_verify])
17
+ expect(subject.oauth2_keys.keys).to eq([])
18
18
  end
19
19
  it "should load a configured api key for production" do
20
- subject.stub(:env){ {"SPARK_API_ENV" => "production"} }
21
- subject.api_env.should eq("production")
20
+ allow(subject).to receive(:env){ {"SPARK_API_ENV" => "production"} }
21
+ expect(subject.api_env).to eq("production")
22
22
  subject.load_file(api_file)
23
- subject.oauth2?.should eq(false)
24
- subject.api_key.should eq("prod_demo_key")
25
- subject.api_secret.should eq("prod_t3sts3cr3t")
26
- subject.endpoint.should eq("https://api.sparkapi.com")
23
+ expect(subject.oauth2?).to eq(false)
24
+ expect(subject.api_key).to eq("prod_demo_key")
25
+ expect(subject.api_secret).to eq("prod_t3sts3cr3t")
26
+ expect(subject.endpoint).to eq("https://api.sparkapi.com")
27
27
  end
28
28
  it "should raise an error for a bad configuration" do
29
- subject.stub(:env){ {} }
29
+ allow(subject).to receive(:env){ {} }
30
30
  expect { subject.load_file("spec/config/spark_api/some_random_key.yml")}.to raise_error
31
- subject.stub(:env){ {"RAILS_ENV" => "fake_env"} }
31
+ allow(subject).to receive(:env){ {"RAILS_ENV" => "fake_env"} }
32
32
  expect { subject.load_file(api_file)}.to raise_error
33
33
  end
34
34
  end
35
35
  describe "oauth2" do
36
36
  let(:oauth2_file){ "spec/config/spark_api/test_oauth.yml" }
37
37
  it "should load a configured api key for development" do
38
- subject.stub(:env){ {} }
39
- subject.api_env.should eq("development")
38
+ allow(subject).to receive(:env){ {} }
39
+ expect(subject.api_env).to eq("development")
40
40
  subject.load_file(oauth2_file)
41
- subject.oauth2?.should eq(true)
42
- subject.authorization_uri.should eq("https://developers.sparkplatform.com/oauth2")
43
- subject.access_uri.should eq("https://developers.sparkapi.com/v1/oauth2/grant")
44
- subject.redirect_uri.should eq("http://localhost/oauth2/callback")
45
- subject.client_id.should eq("developmentid124nj4qu3pua")
46
- subject.client_secret.should eq("developmentsecret4orkp29f")
47
- subject.endpoint.should eq("https://developers.sparkapi.com")
48
- subject.oauth2_provider.should eq("SparkApi::TestOAuth2Provider")
49
- subject.name.should eq("test_oauth")
50
- subject.client_keys.keys.should =~ [:endpoint, :oauth2_provider]
51
- subject.oauth2_keys.keys.should =~ [:authorization_uri, :client_id, :access_uri, :client_secret, :redirect_uri, :sparkbar_uri]
41
+ expect(subject.oauth2?).to eq(true)
42
+ expect(subject.authorization_uri).to eq("https://developers.sparkplatform.com/oauth2")
43
+ expect(subject.access_uri).to eq("https://developers.sparkapi.com/v1/oauth2/grant")
44
+ expect(subject.redirect_uri).to eq("http://localhost/oauth2/callback")
45
+ expect(subject.client_id).to eq("developmentid124nj4qu3pua")
46
+ expect(subject.client_secret).to eq("developmentsecret4orkp29f")
47
+ expect(subject.endpoint).to eq("https://developers.sparkapi.com")
48
+ expect(subject.oauth2_provider).to eq("SparkApi::TestOAuth2Provider")
49
+ expect(subject.name).to eq("test_oauth")
50
+ expect(subject.client_keys.keys).to match_array([:endpoint, :oauth2_provider])
51
+ expect(subject.oauth2_keys.keys).to match_array([:authorization_uri, :client_id, :access_uri, :client_secret, :redirect_uri, :sparkbar_uri])
52
52
  end
53
53
  it "should load a configured api key for production" do
54
- subject.stub(:env){ {"SPARK_API_ENV" => "production"} }
55
- subject.api_env.should eq("production")
54
+ allow(subject).to receive(:env){ {"SPARK_API_ENV" => "production"} }
55
+ expect(subject.api_env).to eq("production")
56
56
  subject.load_file(oauth2_file)
57
- subject.oauth2?.should eq(true)
58
- subject.authorization_uri.should eq("https://sparkplatform.com/oauth2")
59
- subject.access_uri.should eq("https://api.sparkapi.com/v1/oauth2/grant")
60
- subject.redirect_uri.should eq("http://localhost/oauth2/callback")
61
- subject.client_id.should eq("production1id124nj4qu3pua")
62
- subject.client_secret.should eq("productionsecret4orkp29fv")
63
- subject.endpoint.should eq("https://api.sparkapi.com")
64
- subject.oauth2_provider.should eq(subject.class::DEFAULT_OAUTH2_PROVIDER)
65
- subject.name.should eq("test_oauth")
57
+ expect(subject.oauth2?).to eq(true)
58
+ expect(subject.authorization_uri).to eq("https://sparkplatform.com/oauth2")
59
+ expect(subject.access_uri).to eq("https://api.sparkapi.com/v1/oauth2/grant")
60
+ expect(subject.redirect_uri).to eq("http://localhost/oauth2/callback")
61
+ expect(subject.client_id).to eq("production1id124nj4qu3pua")
62
+ expect(subject.client_secret).to eq("productionsecret4orkp29fv")
63
+ expect(subject.endpoint).to eq("https://api.sparkapi.com")
64
+ expect(subject.oauth2_provider).to eq(subject.class::DEFAULT_OAUTH2_PROVIDER)
65
+ expect(subject.name).to eq("test_oauth")
66
66
  end
67
67
 
68
68
  it "should list available keys" do
69
- SparkApi::Configuration::YamlConfig.stub(:config_path) { "spec/config/spark_api" }
70
- subject.class.config_keys.should =~ ["test_key", "test_oauth", "test_single_session_oauth"]
69
+ allow(SparkApi::Configuration::YamlConfig).to receive(:config_path) { "spec/config/spark_api" }
70
+ expect(subject.class.config_keys).to match_array(["test_key", "test_oauth", "test_single_session_oauth"])
71
71
  end
72
72
  end
73
73
  end
@@ -3,18 +3,18 @@ require './spec/spec_helper'
3
3
  describe SparkApi::Client, "Client config" do
4
4
  describe "default settings" do
5
5
  it "should return the proper defaults when called with no arguments" do
6
- SparkApi.api_key.should be_nil
7
- SparkApi.api_secret.should be_nil
8
- SparkApi.version.should match("v1")
9
- SparkApi.ssl_verify.should be_true
10
- SparkApi.auth_endpoint.should match("sparkplatform.com/openid")
11
- SparkApi.endpoint.should match("api.sparkapi.com")
12
- SparkApi.user_agent.should match(/Spark API Ruby Gem .*/)
6
+ expect(SparkApi.api_key).to be_nil
7
+ expect(SparkApi.api_secret).to be_nil
8
+ expect(SparkApi.version).to match("v1")
9
+ expect(SparkApi.ssl_verify).to be true
10
+ expect(SparkApi.auth_endpoint).to match("sparkplatform.com/openid")
11
+ expect(SparkApi.endpoint).to match("api.sparkapi.com")
12
+ expect(SparkApi.user_agent).to match(/Spark API Ruby Gem .*/)
13
13
  SparkApi.api_key = "my_api_key"
14
- SparkApi.api_key.should match("my_api_key")
15
- SparkApi.timeout.should eq(5)
16
- SparkApi.request_id_chain.should be_nil
17
- SparkApi.middleware.should eq('spark_api')
14
+ expect(SparkApi.api_key).to match("my_api_key")
15
+ expect(SparkApi.timeout).to eq(5)
16
+ expect(SparkApi.request_id_chain).to be_nil
17
+ expect(SparkApi.middleware).to eq('spark_api')
18
18
  end
19
19
  end
20
20
 
@@ -28,30 +28,30 @@ describe SparkApi::Client, "Client config" do
28
28
  :timeout => 15,
29
29
  :request_id_chain => 'foobar')
30
30
 
31
- client.api_key.should match("key_of_wade")
32
- client.api_secret.should match("TopSecret")
33
- client.api_user.should match("1234")
34
- client.auth_endpoint.should match("https://login.wade.dev.fbsdata.com")
35
- client.endpoint.should match("http://api.wade.dev.fbsdata.com")
36
- client.version.should match("v1")
37
- client.timeout.should eq(15)
38
- client.request_id_chain.should eq('foobar')
31
+ expect(client.api_key).to match("key_of_wade")
32
+ expect(client.api_secret).to match("TopSecret")
33
+ expect(client.api_user).to match("1234")
34
+ expect(client.auth_endpoint).to match("https://login.wade.dev.fbsdata.com")
35
+ expect(client.endpoint).to match("http://api.wade.dev.fbsdata.com")
36
+ expect(client.version).to match("v1")
37
+ expect(client.timeout).to eq(15)
38
+ expect(client.request_id_chain).to eq('foobar')
39
39
  end
40
40
 
41
41
  it "should allow unverified ssl certificates when verification is off" do
42
42
  client = SparkApi::Client.new(:auth_endpoint => "https://login.wade.dev.fbsdata.com",
43
43
  :endpoint => "https://api.wade.dev.fbsdata.com",
44
44
  :ssl_verify => false)
45
- client.ssl_verify.should be_false
46
- client.connection.ssl.verify.should be_false
45
+ expect(client.ssl_verify).to be false
46
+ expect(client.connection.ssl.verify).to be false
47
47
  end
48
48
 
49
49
  it "should allow restrict ssl certificates when verification is on" do
50
50
  client = SparkApi::Client.new(:auth_endpoint => "https://login.wade.dev.fbsdata.com",
51
51
  :endpoint => "https://api.wade.dev.fbsdata.com",
52
52
  :ssl_verify => true)
53
- client.ssl_verify.should be_true
54
- client.connection.ssl.should be_empty
53
+ expect(client.ssl_verify).to be true
54
+ expect(client.connection.ssl).to be_empty
55
55
  end
56
56
  end
57
57
 
@@ -67,11 +67,11 @@ describe SparkApi::Client, "Client config" do
67
67
 
68
68
  it "should convert the configuration to oauth2 when specified" do
69
69
  oauth2_client.oauthify!
70
- oauth2_client.oauth2_provider.should be_a(SparkApi::Authentication::SimpleProvider)
70
+ expect(oauth2_client.oauth2_provider).to be_a(SparkApi::Authentication::SimpleProvider)
71
71
  end
72
72
 
73
73
  it "should say oauth2_enabled? when it is" do
74
- oauth2_client.oauth2_enabled?().should be_true
74
+ expect(oauth2_client.oauth2_enabled?()).to be true
75
75
  end
76
76
 
77
77
  it "should say oauth2_enabled? is false" do
@@ -80,11 +80,11 @@ describe SparkApi::Client, "Client config" do
80
80
  :callback => "http://wade.dev.fbsdata.com/callback",
81
81
  :auth_endpoint => "https://login.wade.dev.fbsdata.com",
82
82
  :endpoint => "http://api.wade.dev.fbsdata.com")
83
- client.oauth2_enabled?().should be_false
83
+ expect(client.oauth2_enabled?()).to be false
84
84
  end
85
85
 
86
86
  it "should properly build a grant_uri from the endpoint" do
87
- oauth2_client.grant_uri.should eq("http://api.wade.dev.fbsdata.com/v1/oauth2/grant")
87
+ expect(oauth2_client.grant_uri).to eq("http://api.wade.dev.fbsdata.com/v1/oauth2/grant")
88
88
  end
89
89
  end
90
90
 
@@ -100,14 +100,14 @@ describe SparkApi::Client, "Client config" do
100
100
  config.timeout = 15
101
101
  end
102
102
 
103
- SparkApi.api_key.should match("my_key")
104
- SparkApi.api_secret.should match("my_secret")
105
- SparkApi.api_user.should match("1234")
106
- SparkApi.version.should match("veleventy")
107
- SparkApi.endpoint.should match("test.api.sparkapi.com")
108
- SparkApi.user_agent.should match("my useragent")
109
- SparkApi.oauth2_enabled?().should be_false
110
- SparkApi.timeout.should eq(15)
103
+ expect(SparkApi.api_key).to match("my_key")
104
+ expect(SparkApi.api_secret).to match("my_secret")
105
+ expect(SparkApi.api_user).to match("1234")
106
+ expect(SparkApi.version).to match("veleventy")
107
+ expect(SparkApi.endpoint).to match("test.api.sparkapi.com")
108
+ expect(SparkApi.user_agent).to match("my useragent")
109
+ expect(SparkApi.oauth2_enabled?()).to be false
110
+ expect(SparkApi.timeout).to eq(15)
111
111
  end
112
112
 
113
113
  it "should correctly set up the client for oauth2" do
@@ -120,7 +120,7 @@ describe SparkApi::Client, "Client config" do
120
120
  config.user_agent = "my useragent"
121
121
  config.authentication_mode = SparkApi::Authentication::OAuth2
122
122
  end
123
- SparkApi.oauth2_enabled?().should be_true
123
+ expect(SparkApi.oauth2_enabled?()).to be true
124
124
  end
125
125
 
126
126
  it "should reset" do
@@ -133,12 +133,11 @@ describe SparkApi::Client, "Client config" do
133
133
  config.request_id_chain = 'foobar'
134
134
  end
135
135
 
136
- SparkApi.api_key.should match("my_key")
137
- SparkApi.request_id_chain.should eq("foobar")
136
+ expect(SparkApi.api_key).to match("my_key")
137
+ expect(SparkApi.request_id_chain).to eq("foobar")
138
138
  SparkApi.reset
139
- SparkApi.api_key.should == SparkApi::Configuration::DEFAULT_API_KEY
140
- SparkApi.request_id_chain.should SparkApi::Configuration::DEFAULT_REQUEST_ID_CHAIN
141
-
139
+ expect(SparkApi.api_key).to eq(SparkApi::Configuration::DEFAULT_API_KEY)
140
+ expect(SparkApi.request_id_chain).to eq(SparkApi::Configuration::DEFAULT_REQUEST_ID_CHAIN)
142
141
  end
143
142
  end
144
143
 
@@ -152,7 +151,7 @@ describe SparkApi::Client, "Client config" do
152
151
  }).
153
152
  to_return(:body => '{"D":{"Success": true,"Results": [{"SSL":false}]}}')
154
153
 
155
- SparkApi.client.get('/connections')[0]["SSL"].should eq(false)
154
+ expect(SparkApi.client.get('/connections')[0]["SSL"]).to eq(false)
156
155
  end
157
156
 
158
157
  it "should use https when ssl is enabled" do
@@ -165,7 +164,7 @@ describe SparkApi::Client, "Client config" do
165
164
  to_return(:body => '{"D":{"Success": true,"Results": [{"SSL":true}]}}')
166
165
 
167
166
  c = SparkApi::Client.new(:endpoint => "https://api.sparkapi.com", :ssl => true)
168
- c.get('/connections')[0]["SSL"].should eq(true)
167
+ expect(c.get('/connections')[0]["SSL"]).to eq(true)
169
168
  end
170
169
 
171
170
  it "should have correct headers based on configuration" do
@@ -182,7 +181,7 @@ describe SparkApi::Client, "Client config" do
182
181
  config.user_agent = "my useragent"
183
182
  end
184
183
  SparkApi.client.get '/headers'
185
- WebMock.should have_requested(:get, "#{SparkApi.endpoint}/#{SparkApi.version}/headers?ApiUser=foobar&ApiSig=717a066c4f4302c5ca9507e484db4812&AuthToken=c401736bf3d3f754f07c04e460e09573").
184
+ expect(WebMock).to have_requested(:get, "#{SparkApi.endpoint}/#{SparkApi.version}/headers?ApiUser=foobar&ApiSig=717a066c4f4302c5ca9507e484db4812&AuthToken=c401736bf3d3f754f07c04e460e09573").
186
185
  with(:headers => {
187
186
  'User-Agent' => SparkApi::Configuration::DEFAULT_USER_AGENT,
188
187
  SparkApi::Configuration::X_SPARK_API_USER_AGENT => "my useragent",
@@ -206,7 +205,7 @@ describe SparkApi::Client, "Client config" do
206
205
  config.request_id_chain = 'foobar'
207
206
  end
208
207
  SparkApi.client.get '/headers'
209
- WebMock.should have_requested(:get, "#{SparkApi.endpoint}/#{SparkApi.version}/headers?ApiUser=foobar&ApiSig=717a066c4f4302c5ca9507e484db4812&AuthToken=c401736bf3d3f754f07c04e460e09573").
208
+ expect(WebMock).to have_requested(:get, "#{SparkApi.endpoint}/#{SparkApi.version}/headers?ApiUser=foobar&ApiSig=717a066c4f4302c5ca9507e484db4812&AuthToken=c401736bf3d3f754f07c04e460e09573").
210
209
  with(:headers => {
211
210
  'User-Agent' => SparkApi::Configuration::DEFAULT_USER_AGENT,
212
211
  SparkApi::Configuration::X_SPARK_API_USER_AGENT => "my useragent",
@@ -218,24 +217,24 @@ describe SparkApi::Client, "Client config" do
218
217
 
219
218
  it "should not set gzip header by default" do
220
219
  c = SparkApi::Client.new(:endpoint => "https://sparkapi.com")
221
- c.connection.headers["Accept-Encoding"].should be_nil
220
+ expect(c.connection.headers["Accept-Encoding"]).to be_nil
222
221
  end
223
222
 
224
223
  it "should set gzip header if compress option is set" do
225
224
  c = SparkApi::Client.new(:endpoint => "https://api.sparkapi.com",
226
225
  :compress => true)
227
- c.connection.headers["Accept-Encoding"].should eq("gzip, deflate")
226
+ expect(c.connection.headers["Accept-Encoding"]).to eq("gzip, deflate")
228
227
  end
229
228
 
230
229
  it "should set default timeout of 5 seconds" do
231
230
  c = SparkApi::Client.new(:endpoint => "https://sparkapi.com")
232
- c.connection.options[:timeout].should eq(5)
231
+ expect(c.connection.options[:timeout]).to eq(5)
233
232
  end
234
233
 
235
234
  it "should set alternate timeout if specified" do
236
235
  c = SparkApi::Client.new(:endpoint => "https://sparkapi.com",
237
236
  :timeout => 15)
238
- c.connection.options[:timeout].should eq(15)
237
+ expect(c.connection.options[:timeout]).to eq(15)
239
238
  end
240
239
  end
241
240
 
@@ -250,14 +249,14 @@ describe SparkApi::Client, "Client config" do
250
249
  :middleware => 'reso_api',
251
250
  :dictionary_version => '1.6')
252
251
 
253
- client.api_key.should match("key_of_cody")
254
- client.api_secret.should match("TopSecret")
255
- client.api_user.should match("1234")
256
- client.endpoint.should match("http://api.coolio.dev.fbsdata.com")
257
- client.timeout.should eq(15)
258
- client.request_id_chain.should eq('foobar')
259
- client.middleware.should eq('reso_api')
260
- client.dictionary_version.should eq('1.6')
252
+ expect(client.api_key).to match("key_of_cody")
253
+ expect(client.api_secret).to match("TopSecret")
254
+ expect(client.api_user).to match("1234")
255
+ expect(client.endpoint).to match("http://api.coolio.dev.fbsdata.com")
256
+ expect(client.timeout).to eq(15)
257
+ expect(client.request_id_chain).to eq('foobar')
258
+ expect(client.middleware).to eq('reso_api')
259
+ expect(client.dictionary_version).to eq('1.6')
261
260
  end
262
261
  end
263
262
  end
@@ -64,13 +64,13 @@ describe SparkApi do
64
64
  end
65
65
 
66
66
  it "should raised exception when token is expired" do
67
- expect { @connection.get('/expired')}.to raise_error(SparkApi::PermissionDenied){ |e| e.code.should == SparkApi::ResponseCodes::SESSION_TOKEN_EXPIRED }
67
+ expect { @connection.get('/expired')}.to raise_error(SparkApi::PermissionDenied){ |e| expect(e.code).to eq(SparkApi::ResponseCodes::SESSION_TOKEN_EXPIRED) }
68
68
  end
69
69
 
70
70
  it "should raised exception on error" do
71
- expect { @connection.get('/methodnotallowed')}.to raise_error(SparkApi::NotAllowed){ |e| e.message.should == "Method Not Allowed" }
72
- expect { @connection.get('/epicfail')}.to raise_error(SparkApi::ClientError){ |e| e.status.should be(500) }
73
- expect { @connection.get('/unknownerror')}.to raise_error(SparkApi::ClientError){ |e| e.status.should be(499) }
71
+ expect { @connection.get('/methodnotallowed')}.to raise_error(SparkApi::NotAllowed){ |e| expect(e.message).to eq("Method Not Allowed") }
72
+ expect { @connection.get('/epicfail')}.to raise_error(SparkApi::ClientError){ |e| expect(e.status).to be(500) }
73
+ expect { @connection.get('/unknownerror')}.to raise_error(SparkApi::ClientError){ |e| expect(e.status).to be(499) }
74
74
  end
75
75
 
76
76
  it "should raised exception on invalid responses" do
@@ -81,20 +81,20 @@ describe SparkApi do
81
81
 
82
82
  it "should give me a session response" do
83
83
  response = @connection.post('/session').body
84
- response.success.should eq(true)
84
+ expect(response.success).to eq(true)
85
85
  session = SparkApi::Authentication::Session.new(response.results[0])
86
- session.auth_token.should eq("xxxxx")
86
+ expect(session.auth_token).to eq("xxxxx")
87
87
  end
88
88
 
89
89
  it "should give me an api response" do
90
90
  response = @connection.get('/system').body
91
- response.success.should eq(true)
92
- response.results.length.should be > 0
91
+ expect(response.success).to eq(true)
92
+ expect(response.results.length).to be > 0
93
93
  end
94
94
 
95
95
  it "should include the errors in the response" do
96
96
  expect { @connection.get('/badresourcerequest')}.to raise_error(SparkApi::BadResourceRequest){ |e|
97
- e.errors.should == "Some errors and stuff."
97
+ expect(e.errors).to eq("Some errors and stuff.")
98
98
  }
99
99
  end
100
100
 
@@ -111,7 +111,7 @@ describe SparkApi do
111
111
  :response_headers => {}
112
112
  }
113
113
 
114
- middleware.decompress_body(env).should eq("UNCOMPRESSED")
114
+ expect(middleware.decompress_body(env)).to eq("UNCOMPRESSED")
115
115
  end
116
116
 
117
117
  it "should unzip gzipped data" do
@@ -129,7 +129,7 @@ describe SparkApi do
129
129
  }
130
130
  }
131
131
 
132
- middleware.decompress_body(env).should eq(bod)
132
+ expect(middleware.decompress_body(env)).to eq(bod)
133
133
  end
134
134
 
135
135
  it "should inflate deflated data" do
@@ -143,7 +143,7 @@ describe SparkApi do
143
143
  }
144
144
  }
145
145
 
146
- middleware.decompress_body(env).should eq(bod)
146
+ expect(middleware.decompress_body(env)).to eq(bod)
147
147
  end
148
148
  end
149
149
 
@@ -101,20 +101,20 @@ describe Account do
101
101
 
102
102
  it "should respond to attributes" do
103
103
  ['Name','Id','Mls','MlsId','Office'].each do |k|
104
- (@account.send k.to_sym).should be_a(String)
104
+ expect(@account.send k.to_sym).to be_a(String)
105
105
  end
106
106
  end
107
107
 
108
108
  it "should have primary subresources" do
109
- @account.emails.primary.Address.should eq("work@test.com")
110
- @account.phones.primary.Number.should eq("701-555-1212")
111
- @account.addresses.primary.Address.should eq("101 Main Ave, Phoenix, AZ 12345")
112
- @account.websites.primary.Uri.should eq("http://iamthebestagent.com")
109
+ expect(@account.emails.primary.Address).to eq("work@test.com")
110
+ expect(@account.phones.primary.Number).to eq("701-555-1212")
111
+ expect(@account.addresses.primary.Address).to eq("101 Main Ave, Phoenix, AZ 12345")
112
+ expect(@account.websites.primary.Uri).to eq("http://iamthebestagent.com")
113
113
  end
114
114
 
115
115
  it "should be able to provide a primary image" do
116
- @account.primary_img("Photo").Name.should == 'My Photo 1'
117
- @account.primary_img("Logo").Name.should == '1 My Logo'
116
+ expect(@account.primary_img("Photo").Name).to eq('My Photo 1')
117
+ expect(@account.primary_img("Logo").Name).to eq('1 My Logo')
118
118
  end
119
119
 
120
120
  after(:each) do
@@ -131,19 +131,19 @@ describe Account do
131
131
  on_get_it "should get my account" do
132
132
  stub_api_get("/my/account", 'accounts/my.json')
133
133
  account = Account.my
134
- account.Id.should eq("20000426173054342350000000")
135
- account.websites.first.Name.should == 'My Work Website'
134
+ expect(account.Id).to eq("20000426173054342350000000")
135
+ expect(account.websites.first.Name).to eq('My Work Website')
136
136
  end
137
137
 
138
138
  on_put_it "should save my portal account" do
139
139
  stub_api_get("/my/account", 'accounts/my_portal.json')
140
140
  stub_api_put("/my/account", 'accounts/my_save.json', 'accounts/my_put.json')
141
141
  account = Account.my
142
- account.Id.should eq("20110426173054342350000000")
143
- account.GetEmailUpdates.should eq(false)
142
+ expect(account.Id).to eq("20110426173054342350000000")
143
+ expect(account.GetEmailUpdates).to eq(false)
144
144
  account.GetEmailUpdates = true
145
145
  account.save!
146
- account.GetEmailUpdates.should eq(true)
146
+ expect(account.GetEmailUpdates).to eq(true)
147
147
  end
148
148
  end
149
149
 
@@ -151,10 +151,10 @@ describe Account do
151
151
  on_get_it "should get all accounts" do
152
152
  stub_api_get("/accounts", 'accounts/all.json')
153
153
  accounts = Account.get
154
- accounts.should be_an(Array)
155
- accounts.length.should eq(3)
156
- accounts.first.Id.should eq("20000426173054342350000000")
157
- accounts.last.Id.should eq("20110126173054382350000000")
154
+ expect(accounts).to be_an(Array)
155
+ expect(accounts.length).to eq(3)
156
+ expect(accounts.first.Id).to eq("20000426173054342350000000")
157
+ expect(accounts.last.Id).to eq("20110126173054382350000000")
158
158
  end
159
159
  on_put_it "should save password" do
160
160
  stub_api_get("/my/account", 'accounts/my.json')
@@ -162,7 +162,7 @@ describe Account do
162
162
  stub_api_put("/accounts/#{account.Id}", 'accounts/password_save.json', 'accounts/my.json')
163
163
  account.Password = "1"
164
164
  account.PasswordValidation = "1"
165
- account.save.should be(true)
165
+ expect(account.save).to be(true)
166
166
  end
167
167
  end
168
168
 
@@ -170,10 +170,10 @@ describe Account do
170
170
  on_get_it "should all office accounts" do
171
171
  stub_api_get("/accounts/by/office/20030426173014239760000000", 'accounts/office.json')
172
172
  accounts = Account.by_office("20030426173014239760000000")
173
- accounts.should be_an(Array)
174
- accounts.length.should eq(2)
173
+ expect(accounts).to be_an(Array)
174
+ expect(accounts.length).to eq(2)
175
175
  accounts.each do |account|
176
- accounts.first.OfficeId.should eq("20030426173014239760000000")
176
+ expect(accounts.first.OfficeId).to eq("20030426173014239760000000")
177
177
  end
178
178
  end
179
179
  end