google-api-client 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. checksums.yaml +13 -5
  2. data/CHANGELOG.md +14 -0
  3. data/Gemfile +0 -36
  4. data/README.md +12 -1
  5. data/Rakefile +1 -8
  6. data/google-api-client.gemspec +40 -0
  7. data/lib/google/api_client.rb +98 -30
  8. data/lib/google/api_client/auth/compute_service_account.rb +1 -1
  9. data/lib/google/api_client/auth/file_storage.rb +19 -44
  10. data/lib/google/api_client/auth/installed_app.rb +11 -7
  11. data/lib/google/api_client/auth/storage.rb +101 -0
  12. data/lib/google/api_client/auth/storages/file_store.rb +58 -0
  13. data/lib/google/api_client/auth/storages/redis_store.rb +54 -0
  14. data/lib/google/api_client/batch.rb +13 -11
  15. data/lib/google/api_client/charset.rb +33 -0
  16. data/lib/google/api_client/client_secrets.rb +9 -6
  17. data/lib/google/api_client/discovery/api.rb +3 -3
  18. data/lib/google/api_client/discovery/resource.rb +3 -3
  19. data/lib/google/api_client/discovery/schema.rb +3 -5
  20. data/lib/google/api_client/errors.rb +5 -0
  21. data/lib/google/api_client/railtie.rb +2 -1
  22. data/lib/google/api_client/request.rb +1 -2
  23. data/lib/google/api_client/result.rb +4 -2
  24. data/lib/google/api_client/service.rb +2 -2
  25. data/lib/google/api_client/service/batch.rb +7 -0
  26. data/lib/google/api_client/service/stub_generator.rb +4 -2
  27. data/lib/google/api_client/service_account.rb +3 -0
  28. data/lib/google/api_client/version.rb +8 -13
  29. data/spec/google/api_client/auth/storage_spec.rb +122 -0
  30. data/spec/google/api_client/auth/storages/file_store_spec.rb +40 -0
  31. data/spec/google/api_client/auth/storages/redis_store_spec.rb +70 -0
  32. data/spec/google/api_client/batch_spec.rb +29 -30
  33. data/spec/google/api_client/client_secrets_spec.rb +53 -0
  34. data/spec/google/api_client/discovery_spec.rb +101 -91
  35. data/spec/google/api_client/gzip_spec.rb +21 -9
  36. data/spec/google/api_client/media_spec.rb +31 -32
  37. data/spec/google/api_client/request_spec.rb +3 -4
  38. data/spec/google/api_client/result_spec.rb +51 -47
  39. data/spec/google/api_client/service_account_spec.rb +40 -35
  40. data/spec/google/api_client/service_spec.rb +144 -112
  41. data/spec/google/api_client/simple_file_store_spec.rb +30 -34
  42. data/spec/google/api_client_spec.rb +139 -40
  43. data/spec/spec_helper.rb +9 -1
  44. metadata +111 -88
  45. data/CONTRIBUTING.md +0 -32
  46. data/lib/cacerts.pem +0 -2183
  47. data/lib/google/inflection.rb +0 -28
  48. data/spec/fixtures/files/privatekey.p12 +0 -0
  49. data/spec/fixtures/files/sample.txt +0 -33
  50. data/spec/fixtures/files/secret.pem +0 -19
  51. data/tasks/gem.rake +0 -97
  52. data/tasks/git.rake +0 -45
  53. data/tasks/metrics.rake +0 -22
  54. data/tasks/spec.rake +0 -57
  55. data/tasks/wiki.rake +0 -82
  56. data/tasks/yard.rake +0 -29
@@ -0,0 +1,53 @@
1
+ # encoding:utf-8
2
+
3
+ # Copyright 2013 Google Inc.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ require 'spec_helper'
18
+
19
+ require 'google/api_client/client_secrets'
20
+
21
+ FIXTURES_PATH = File.expand_path('../../../fixtures', __FILE__)
22
+
23
+ RSpec.describe Google::APIClient::ClientSecrets do
24
+
25
+ context 'with JSON file' do
26
+ let(:file) { File.join(FIXTURES_PATH, 'files', 'client_secrets.json') }
27
+ subject(:secrets) { Google::APIClient::ClientSecrets.load(file)}
28
+
29
+ it 'should load the correct client ID' do
30
+ expect(secrets.client_id).to be == '898243283568.apps.googleusercontent.com'
31
+ end
32
+
33
+ it 'should load the correct client secret' do
34
+ expect(secrets.client_secret).to be == 'i8YaXdGgiQ4_KrTVNGsB7QP1'
35
+ end
36
+
37
+ context 'serialzed to hash' do
38
+ subject(:hash) { secrets.to_hash }
39
+ it 'should contain the flow as the first key' do
40
+ expect(hash).to have_key "installed"
41
+ end
42
+
43
+ it 'should contain the client ID' do
44
+ expect(hash["installed"]["client_id"]).to be == '898243283568.apps.googleusercontent.com'
45
+ end
46
+
47
+ it 'should contain the client secret' do
48
+ expect(hash["installed"]["client_secret"]).to be == 'i8YaXdGgiQ4_KrTVNGsB7QP1'
49
+ end
50
+
51
+ end
52
+ end
53
+ end
@@ -22,9 +22,10 @@ require 'multi_json'
22
22
  require 'compat/multi_json'
23
23
  require 'signet/oauth_1/client'
24
24
  require 'google/api_client'
25
- require 'google/api_client/version'
26
25
 
27
- describe Google::APIClient do
26
+ fixtures_path = File.expand_path('../../../fixtures', __FILE__)
27
+
28
+ RSpec.describe Google::APIClient do
28
29
  include ConnectionHelpers
29
30
  CLIENT = Google::APIClient.new(:application_name => 'API Client Tests') unless defined?(CLIENT)
30
31
 
@@ -35,42 +36,51 @@ describe Google::APIClient do
35
36
  end
36
37
 
37
38
  it 'should raise a type error for bogus authorization' do
38
- (lambda do
39
+ expect(lambda do
39
40
  Google::APIClient.new(:application_name => 'API Client Tests', :authorization => 42)
40
- end).should raise_error(TypeError)
41
+ end).to raise_error(TypeError)
41
42
  end
42
43
 
43
44
  it 'should not be able to retrieve the discovery document for a bogus API' do
44
- (lambda do
45
+ expect(lambda do
45
46
  CLIENT.discovery_document('bogus')
46
- end).should raise_error(Google::APIClient::TransmissionError)
47
- (lambda do
47
+ end).to raise_error(Google::APIClient::TransmissionError)
48
+ expect(lambda do
48
49
  CLIENT.discovered_api('bogus')
49
- end).should raise_error(Google::APIClient::TransmissionError)
50
+ end).to raise_error(Google::APIClient::TransmissionError)
50
51
  end
51
52
 
52
53
  it 'should raise an error for bogus services' do
53
- (lambda do
54
+ expect(lambda do
54
55
  CLIENT.discovered_api(42)
55
- end).should raise_error(TypeError)
56
+ end).to raise_error(TypeError)
56
57
  end
57
58
 
58
59
  it 'should raise an error for bogus services' do
59
- (lambda do
60
+ expect(lambda do
60
61
  CLIENT.preferred_version(42)
61
- end).should raise_error(TypeError)
62
+ end).to raise_error(TypeError)
62
63
  end
63
64
 
64
65
  it 'should raise an error for bogus methods' do
65
- (lambda do
66
+ expect(lambda do
66
67
  CLIENT.execute(42)
67
- end).should raise_error(TypeError)
68
+ end).to raise_error(TypeError)
68
69
  end
69
70
 
70
71
  it 'should not return a preferred version for bogus service names' do
71
- CLIENT.preferred_version('bogus').should == nil
72
+ expect(CLIENT.preferred_version('bogus')).to eq(nil)
72
73
  end
73
74
 
75
+ describe 'with zoo API' do
76
+ it 'should return API instance registered from file' do
77
+ zoo_json = File.join(fixtures_path, 'files', 'zoo.json')
78
+ contents = File.open(zoo_json, 'rb') { |io| io.read }
79
+ api = CLIENT.register_discovery_document('zoo', 'v1', contents)
80
+ expect(api).to be_kind_of(Google::APIClient::API)
81
+ end
82
+ end
83
+
74
84
  describe 'with the prediction API' do
75
85
  before do
76
86
  CLIENT.authorization = nil
@@ -80,7 +90,7 @@ describe Google::APIClient do
80
90
  end
81
91
 
82
92
  it 'should correctly determine the discovery URI' do
83
- CLIENT.discovery_uri('prediction').should ===
93
+ expect(CLIENT.discovery_uri('prediction')).to be ===
84
94
  'https://www.googleapis.com/discovery/v1/apis/prediction/v1/rest'
85
95
  end
86
96
 
@@ -135,61 +145,61 @@ describe Google::APIClient do
135
145
  end
136
146
 
137
147
  it 'should correctly generate API objects' do
138
- CLIENT.discovered_api('prediction', 'v1.2').name.should == 'prediction'
139
- CLIENT.discovered_api('prediction', 'v1.2').version.should == 'v1.2'
140
- CLIENT.discovered_api(:prediction, 'v1.2').name.should == 'prediction'
141
- CLIENT.discovered_api(:prediction, 'v1.2').version.should == 'v1.2'
148
+ expect(CLIENT.discovered_api('prediction', 'v1.2').name).to eq('prediction')
149
+ expect(CLIENT.discovered_api('prediction', 'v1.2').version).to eq('v1.2')
150
+ expect(CLIENT.discovered_api(:prediction, 'v1.2').name).to eq('prediction')
151
+ expect(CLIENT.discovered_api(:prediction, 'v1.2').version).to eq('v1.2')
142
152
  end
143
153
 
144
154
  it 'should discover methods' do
145
- CLIENT.discovered_method(
155
+ expect(CLIENT.discovered_method(
146
156
  'prediction.training.insert', 'prediction', 'v1.2'
147
- ).name.should == 'insert'
148
- CLIENT.discovered_method(
157
+ ).name).to eq('insert')
158
+ expect(CLIENT.discovered_method(
149
159
  :'prediction.training.insert', :prediction, 'v1.2'
150
- ).name.should == 'insert'
151
- CLIENT.discovered_method(
160
+ ).name).to eq('insert')
161
+ expect(CLIENT.discovered_method(
152
162
  'prediction.training.delete', 'prediction', 'v1.2'
153
- ).name.should == 'delete'
163
+ ).name).to eq('delete')
154
164
  end
155
165
 
156
166
  it 'should define the origin API in discovered methods' do
157
- CLIENT.discovered_method(
167
+ expect(CLIENT.discovered_method(
158
168
  'prediction.training.insert', 'prediction', 'v1.2'
159
- ).api.name.should == 'prediction'
169
+ ).api.name).to eq('prediction')
160
170
  end
161
171
 
162
172
  it 'should not find methods that are not in the discovery document' do
163
- CLIENT.discovered_method(
173
+ expect(CLIENT.discovered_method(
164
174
  'prediction.bogus', 'prediction', 'v1.2'
165
- ).should == nil
175
+ )).to eq(nil)
166
176
  end
167
177
 
168
178
  it 'should raise an error for bogus methods' do
169
- (lambda do
179
+ expect(lambda do
170
180
  CLIENT.discovered_method(42, 'prediction', 'v1.2')
171
- end).should raise_error(TypeError)
181
+ end).to raise_error(TypeError)
172
182
  end
173
183
 
174
184
  it 'should raise an error for bogus methods' do
175
- (lambda do
185
+ expect(lambda do
176
186
  CLIENT.execute(:api_method => CLIENT.discovered_api('prediction', 'v1.2'))
177
- end).should raise_error(TypeError)
187
+ end).to raise_error(TypeError)
178
188
  end
179
189
 
180
190
  it 'should correctly determine the preferred version' do
181
- CLIENT.preferred_version('prediction').version.should_not == 'v1'
182
- CLIENT.preferred_version(:prediction).version.should_not == 'v1'
191
+ expect(CLIENT.preferred_version('prediction').version).not_to eq('v1')
192
+ expect(CLIENT.preferred_version(:prediction).version).not_to eq('v1')
183
193
  end
184
194
 
185
195
  it 'should return a batch path' do
186
- CLIENT.discovered_api('prediction', 'v1.2').batch_path.should_not be_nil
196
+ expect(CLIENT.discovered_api('prediction', 'v1.2').batch_path).not_to be_nil
187
197
  end
188
198
 
189
199
  it 'should generate valid requests' do
190
200
  conn = stub_connection do |stub|
191
201
  stub.post('/prediction/v1.2/training?data=12345') do |env|
192
- env[:body].should == ''
202
+ expect(env[:body]).to eq('')
193
203
  [200, {}, '{}']
194
204
  end
195
205
  end
@@ -207,7 +217,7 @@ describe Google::APIClient do
207
217
  # bare ampersand (&) in 0.4.7. ensure that it gets converted
208
218
  # to a CGI-escaped semicolon (%3B) instead.
209
219
  stub.post('/prediction/v1.2/training?data=12345%3B67890') do |env|
210
- env[:body].should == ''
220
+ expect(env[:body]).to eq('')
211
221
  [200, {}, '{}']
212
222
  end
213
223
  end
@@ -222,7 +232,7 @@ describe Google::APIClient do
222
232
  it 'should generate valid requests when multivalued parameters are passed' do
223
233
  conn = stub_connection do |stub|
224
234
  stub.post('/prediction/v1.2/training?data=1&data=2') do |env|
225
- env.params['data'].should include('1', '2')
235
+ expect(env.params['data']).to include('1', '2')
226
236
  [200, {}, '{}']
227
237
  end
228
238
  end
@@ -271,7 +281,7 @@ describe Google::APIClient do
271
281
 
272
282
  conn = stub_connection do |stub|
273
283
  stub.post('/prediction/v1.2/training') do |env|
274
- env[:url].host.should == 'testing-domain.example.com'
284
+ expect(env[:url].host).to eq('testing-domain.example.com')
275
285
  [200, {}, '{}']
276
286
  end
277
287
  end
@@ -291,8 +301,8 @@ describe Google::APIClient do
291
301
 
292
302
  conn = stub_connection do |stub|
293
303
  stub.post('/prediction/v1.2/training?data=12345') do |env|
294
- env[:request_headers].should have_key('Authorization')
295
- env[:request_headers]['Authorization'].should =~ /^OAuth/
304
+ expect(env[:request_headers]).to have_key('Authorization')
305
+ expect(env[:request_headers]['Authorization']).to match(/^OAuth/)
296
306
  [200, {}, '{}']
297
307
  end
298
308
  end
@@ -311,8 +321,8 @@ describe Google::APIClient do
311
321
 
312
322
  conn = stub_connection do |stub|
313
323
  stub.post('/prediction/v1.2/training?data=12345') do |env|
314
- env[:request_headers].should have_key('Authorization')
315
- env[:request_headers]['Authorization'].should =~ /^Bearer/
324
+ expect(env[:request_headers]).to have_key('Authorization')
325
+ expect(env[:request_headers]['Authorization']).to match(/^Bearer/)
316
326
  [200, {}, '{}']
317
327
  end
318
328
  end
@@ -333,7 +343,7 @@ describe Google::APIClient do
333
343
  @prediction.training.insert,
334
344
  {'data' => '12345'}
335
345
  )
336
- result.response.status.should == 401
346
+ expect(result.response.status).to eq(401)
337
347
  end
338
348
 
339
349
  it 'should not be able to execute improperly authorized requests' do
@@ -343,11 +353,11 @@ describe Google::APIClient do
343
353
  @prediction.training.insert,
344
354
  {'data' => '12345'}
345
355
  )
346
- result.response.status.should == 401
356
+ expect(result.response.status).to eq(401)
347
357
  end
348
358
 
349
359
  it 'should not be able to execute improperly authorized requests' do
350
- (lambda do
360
+ expect(lambda do
351
361
  CLIENT.authorization = :oauth_1
352
362
  CLIENT.authorization.token_credential_key = '12345'
353
363
  CLIENT.authorization.token_credential_secret = '12345'
@@ -355,25 +365,25 @@ describe Google::APIClient do
355
365
  @prediction.training.insert,
356
366
  {'data' => '12345'}
357
367
  )
358
- end).should raise_error(Google::APIClient::ClientError)
368
+ end).to raise_error(Google::APIClient::ClientError)
359
369
  end
360
370
 
361
371
  it 'should not be able to execute improperly authorized requests' do
362
- (lambda do
372
+ expect(lambda do
363
373
  CLIENT.authorization = :oauth_2
364
374
  CLIENT.authorization.access_token = '12345'
365
375
  result = CLIENT.execute!(
366
376
  @prediction.training.insert,
367
377
  {'data' => '12345'}
368
378
  )
369
- end).should raise_error(Google::APIClient::ClientError)
379
+ end).to raise_error(Google::APIClient::ClientError)
370
380
  end
371
381
 
372
382
  it 'should correctly handle unnamed parameters' do
373
383
  conn = stub_connection do |stub|
374
384
  stub.post('/prediction/v1.2/training') do |env|
375
- env[:request_headers].should have_key('Content-Type')
376
- env[:request_headers]['Content-Type'].should == 'application/json'
385
+ expect(env[:request_headers]).to have_key('Content-Type')
386
+ expect(env[:request_headers]['Content-Type']).to eq('application/json')
377
387
  [200, {}, '{}']
378
388
  end
379
389
  end
@@ -396,32 +406,32 @@ describe Google::APIClient do
396
406
  end
397
407
 
398
408
  it 'should correctly determine the discovery URI' do
399
- CLIENT.discovery_uri('plus').should ===
409
+ expect(CLIENT.discovery_uri('plus')).to be ===
400
410
  'https://www.googleapis.com/discovery/v1/apis/plus/v1/rest'
401
411
  end
402
412
 
403
413
  it 'should find APIs that are in the discovery document' do
404
- CLIENT.discovered_api('plus').name.should == 'plus'
405
- CLIENT.discovered_api('plus').version.should == 'v1'
406
- CLIENT.discovered_api(:plus).name.should == 'plus'
407
- CLIENT.discovered_api(:plus).version.should == 'v1'
414
+ expect(CLIENT.discovered_api('plus').name).to eq('plus')
415
+ expect(CLIENT.discovered_api('plus').version).to eq('v1')
416
+ expect(CLIENT.discovered_api(:plus).name).to eq('plus')
417
+ expect(CLIENT.discovered_api(:plus).version).to eq('v1')
408
418
  end
409
419
 
410
420
  it 'should find methods that are in the discovery document' do
411
421
  # TODO(bobaman) Fix this when the RPC names are correct
412
- CLIENT.discovered_method(
422
+ expect(CLIENT.discovered_method(
413
423
  'plus.activities.list', 'plus'
414
- ).name.should == 'list'
424
+ ).name).to eq('list')
415
425
  end
416
426
 
417
427
  it 'should define the origin API in discovered methods' do
418
- CLIENT.discovered_method(
428
+ expect(CLIENT.discovered_method(
419
429
  'plus.activities.list', 'plus'
420
- ).api.name.should == 'plus'
430
+ ).api.name).to eq('plus')
421
431
  end
422
432
 
423
433
  it 'should not find methods that are not in the discovery document' do
424
- CLIENT.discovered_method('plus.bogus', 'plus').should == nil
434
+ expect(CLIENT.discovered_method('plus.bogus', 'plus')).to eq(nil)
425
435
  end
426
436
 
427
437
  it 'should generate requests against the correct URIs' do
@@ -443,17 +453,17 @@ describe Google::APIClient do
443
453
  end
444
454
 
445
455
  it 'should correctly validate parameters' do
446
- (lambda do
456
+ expect(lambda do
447
457
  CLIENT.execute(
448
458
  :api_method => @plus.activities.list,
449
459
  :parameters => {'alt' => 'json'},
450
460
  :authenticated => false
451
461
  )
452
- end).should raise_error(ArgumentError)
462
+ end).to raise_error(ArgumentError)
453
463
  end
454
464
 
455
465
  it 'should correctly validate parameters' do
456
- (lambda do
466
+ expect(lambda do
457
467
  CLIENT.execute(
458
468
  :api_method => @plus.activities.list,
459
469
  :parameters => {
@@ -461,7 +471,7 @@ describe Google::APIClient do
461
471
  },
462
472
  :authenticated => false
463
473
  ).to_env(CLIENT.connection)
464
- end).should raise_error(ArgumentError)
474
+ end).to raise_error(ArgumentError)
465
475
  end
466
476
  end
467
477
 
@@ -472,27 +482,27 @@ describe Google::APIClient do
472
482
  end
473
483
 
474
484
  it 'should correctly determine the discovery URI' do
475
- CLIENT.discovery_uri('adsense', 'v1.3').to_s.should ===
485
+ expect(CLIENT.discovery_uri('adsense', 'v1.3').to_s).to be ===
476
486
  'https://www.googleapis.com/discovery/v1/apis/adsense/v1.3/rest'
477
487
  end
478
488
 
479
489
  it 'should find APIs that are in the discovery document' do
480
- CLIENT.discovered_api('adsense', 'v1.3').name.should == 'adsense'
481
- CLIENT.discovered_api('adsense', 'v1.3').version.should == 'v1.3'
490
+ expect(CLIENT.discovered_api('adsense', 'v1.3').name).to eq('adsense')
491
+ expect(CLIENT.discovered_api('adsense', 'v1.3').version).to eq('v1.3')
482
492
  end
483
493
 
484
494
  it 'should return a batch path' do
485
- CLIENT.discovered_api('adsense', 'v1.3').batch_path.should_not be_nil
495
+ expect(CLIENT.discovered_api('adsense', 'v1.3').batch_path).not_to be_nil
486
496
  end
487
497
 
488
498
  it 'should find methods that are in the discovery document' do
489
- CLIENT.discovered_method(
499
+ expect(CLIENT.discovered_method(
490
500
  'adsense.reports.generate', 'adsense', 'v1.3'
491
- ).name.should == 'generate'
501
+ ).name).to eq('generate')
492
502
  end
493
503
 
494
504
  it 'should not find methods that are not in the discovery document' do
495
- CLIENT.discovered_method('adsense.bogus', 'adsense', 'v1.3').should == nil
505
+ expect(CLIENT.discovered_method('adsense.bogus', 'adsense', 'v1.3')).to eq(nil)
496
506
  end
497
507
 
498
508
  it 'should generate requests against the correct URIs' do
@@ -514,16 +524,16 @@ describe Google::APIClient do
514
524
  :api_method => @adsense.adclients.list,
515
525
  :authenticated => false
516
526
  )
517
- result.response.status.should == 401
527
+ expect(result.response.status).to eq(401)
518
528
  end
519
529
 
520
530
  it 'should fail when validating missing required parameters' do
521
- (lambda do
531
+ expect(lambda do
522
532
  CLIENT.execute(
523
533
  :api_method => @adsense.reports.generate,
524
534
  :authenticated => false
525
535
  )
526
- end).should raise_error(ArgumentError)
536
+ end).to raise_error(ArgumentError)
527
537
  end
528
538
 
529
539
  it 'should succeed when validating parameters in a correct call' do
@@ -532,7 +542,7 @@ describe Google::APIClient do
532
542
  [200, {}, '{}']
533
543
  end
534
544
  end
535
- (lambda do
545
+ expect(lambda do
536
546
  CLIENT.execute(
537
547
  :api_method => @adsense.reports.generate,
538
548
  :parameters => {
@@ -544,12 +554,12 @@ describe Google::APIClient do
544
554
  :authenticated => false,
545
555
  :connection => conn
546
556
  )
547
- end).should_not raise_error
557
+ end).not_to raise_error
548
558
  conn.verify
549
559
  end
550
560
 
551
561
  it 'should fail when validating parameters with invalid values' do
552
- (lambda do
562
+ expect(lambda do
553
563
  CLIENT.execute(
554
564
  :api_method => @adsense.reports.generate,
555
565
  :parameters => {
@@ -560,7 +570,7 @@ describe Google::APIClient do
560
570
  },
561
571
  :authenticated => false
562
572
  )
563
- end).should raise_error(ArgumentError)
573
+ end).to raise_error(ArgumentError)
564
574
  end
565
575
 
566
576
  it 'should succeed when validating repeated parameters in a correct call' do
@@ -571,7 +581,7 @@ describe Google::APIClient do
571
581
  [200, {}, '{}']
572
582
  end
573
583
  end
574
- (lambda do
584
+ expect(lambda do
575
585
  CLIENT.execute(
576
586
  :api_method => @adsense.reports.generate,
577
587
  :parameters => {
@@ -583,12 +593,12 @@ describe Google::APIClient do
583
593
  :authenticated => false,
584
594
  :connection => conn
585
595
  )
586
- end).should_not raise_error
596
+ end).not_to raise_error
587
597
  conn.verify
588
598
  end
589
599
 
590
600
  it 'should fail when validating incorrect repeated parameters' do
591
- (lambda do
601
+ expect(lambda do
592
602
  CLIENT.execute(
593
603
  :api_method => @adsense.reports.generate,
594
604
  :parameters => {
@@ -599,7 +609,7 @@ describe Google::APIClient do
599
609
  },
600
610
  :authenticated => false
601
611
  )
602
- end).should raise_error(ArgumentError)
612
+ end).to raise_error(ArgumentError)
603
613
  end
604
614
 
605
615
  it 'should generate valid requests when multivalued parameters are passed' do
@@ -607,8 +617,8 @@ describe Google::APIClient do
607
617
  stub.get('/adsense/v1.3/reports?dimension=DATE&dimension=PRODUCT_CODE'+
608
618
  '&endDate=2010-01-01&metric=CLICKS&metric=PAGE_VIEWS&'+
609
619
  'startDate=2000-01-01') do |env|
610
- env.params['dimension'].should include('DATE', 'PRODUCT_CODE')
611
- env.params['metric'].should include('CLICKS', 'PAGE_VIEWS')
620
+ expect(env.params['dimension']).to include('DATE', 'PRODUCT_CODE')
621
+ expect(env.params['metric']).to include('CLICKS', 'PAGE_VIEWS')
612
622
  [200, {}, '{}']
613
623
  end
614
624
  end
@@ -634,19 +644,19 @@ describe Google::APIClient do
634
644
  end
635
645
 
636
646
  it 'should include media upload info methods' do
637
- @drive.files.insert.media_upload.should_not == nil
647
+ expect(@drive.files.insert.media_upload).not_to eq(nil)
638
648
  end
639
649
 
640
650
  it 'should include accepted media types' do
641
- @drive.files.insert.media_upload.accepted_types.should_not be_empty
651
+ expect(@drive.files.insert.media_upload.accepted_types).not_to be_empty
642
652
  end
643
653
 
644
654
  it 'should have an upload path' do
645
- @drive.files.insert.media_upload.uri_template.should_not == nil
655
+ expect(@drive.files.insert.media_upload.uri_template).not_to eq(nil)
646
656
  end
647
657
 
648
658
  it 'should have a max file size' do
649
- @drive.files.insert.media_upload.max_size.should_not == nil
659
+ expect(@drive.files.insert.media_upload.max_size).not_to eq(nil)
650
660
  end
651
661
  end
652
662
  end