sauce_whisk 0.0.13 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +1 -0
- data/Gemfile +3 -2
- data/README.md +40 -5
- data/changelog.markdown +10 -0
- data/lib/sauce_whisk.rb +21 -2
- data/lib/sauce_whisk/assets.rb +25 -2
- data/lib/sauce_whisk/jobs.rb +35 -6
- data/lib/sauce_whisk/rest_request_builder.rb +19 -4
- data/lib/sauce_whisk/version.rb +1 -1
- data/sauce_whisk.gemspec +4 -4
- data/spec/fixtures/vcr_cassettes/assets.yml +205 -57
- data/spec/fixtures/vcr_cassettes/info.yml +131 -5
- data/spec/fixtures/vcr_cassettes/jobs.yml +130 -10
- data/spec/lib/sauce_whisk/account_spec.rb +8 -8
- data/spec/lib/sauce_whisk/accounts_spec.rb +8 -8
- data/spec/lib/sauce_whisk/asset_spec.rb +5 -5
- data/spec/lib/sauce_whisk/assets_spec.rb +18 -3
- data/spec/lib/sauce_whisk/info_spec.rb +5 -5
- data/spec/lib/sauce_whisk/job_spec.rb +32 -18
- data/spec/lib/sauce_whisk/jobs_spec.rb +46 -10
- data/spec/lib/sauce_whisk/rest_request_builder_spec.rb +41 -18
- data/spec/lib/sauce_whisk/sauce_whisk_spec.rb +25 -6
- data/spec/lib/sauce_whisk/subaccounts_spec.rb +2 -2
- data/spec/lib/sauce_whisk/tunnel_spec.rb +6 -6
- data/spec/lib/sauce_whisk/tunnels_spec.rb +9 -9
- metadata +10 -10
@@ -8,7 +8,7 @@ http_interactions:
|
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
Accept:
|
11
|
-
-
|
11
|
+
- "*/*; q=0.5, application/xml"
|
12
12
|
Accept-Encoding:
|
13
13
|
- gzip, deflate
|
14
14
|
User-Agent:
|
@@ -55,7 +55,7 @@ http_interactions:
|
|
55
55
|
string: ''
|
56
56
|
headers:
|
57
57
|
Accept:
|
58
|
-
-
|
58
|
+
- "*/*; q=0.5, application/xml"
|
59
59
|
Accept-Encoding:
|
60
60
|
- gzip, deflate
|
61
61
|
User-Agent:
|
@@ -99,7 +99,7 @@ http_interactions:
|
|
99
99
|
string: ''
|
100
100
|
headers:
|
101
101
|
Accept:
|
102
|
-
-
|
102
|
+
- "*/*; q=0.5, application/xml"
|
103
103
|
Accept-Encoding:
|
104
104
|
- gzip, deflate
|
105
105
|
User-Agent:
|
@@ -176,7 +176,7 @@ http_interactions:
|
|
176
176
|
string: ''
|
177
177
|
headers:
|
178
178
|
Accept:
|
179
|
-
-
|
179
|
+
- "*/*; q=0.5, application/xml"
|
180
180
|
Accept-Encoding:
|
181
181
|
- gzip, deflate
|
182
182
|
User-Agent:
|
@@ -245,4 +245,130 @@ http_interactions:
|
|
245
245
|
dlR7nE0Mmoei+fEfsOfe4odoAAA=
|
246
246
|
http_version:
|
247
247
|
recorded_at: Thu, 13 Jun 2013 07:06:39 GMT
|
248
|
-
|
248
|
+
- request:
|
249
|
+
method: get
|
250
|
+
uri: https://saucelabs.com/rest/v1/info/status
|
251
|
+
body:
|
252
|
+
encoding: US-ASCII
|
253
|
+
string: ''
|
254
|
+
headers:
|
255
|
+
Accept:
|
256
|
+
- "*/*; q=0.5, application/xml"
|
257
|
+
Accept-Encoding:
|
258
|
+
- gzip, deflate
|
259
|
+
User-Agent:
|
260
|
+
- Ruby
|
261
|
+
response:
|
262
|
+
status:
|
263
|
+
code: 200
|
264
|
+
message: OK
|
265
|
+
headers:
|
266
|
+
Server:
|
267
|
+
- nginx
|
268
|
+
Date:
|
269
|
+
- Tue, 08 Jul 2014 04:26:38 GMT
|
270
|
+
Content-Type:
|
271
|
+
- application/json
|
272
|
+
Transfer-Encoding:
|
273
|
+
- chunked
|
274
|
+
Connection:
|
275
|
+
- keep-alive
|
276
|
+
Access-Control-Allow-Origin:
|
277
|
+
- http://status.saucelabs.com
|
278
|
+
X-Backend:
|
279
|
+
- mix
|
280
|
+
Content-Encoding:
|
281
|
+
- gzip
|
282
|
+
body:
|
283
|
+
encoding: ASCII-8BIT
|
284
|
+
string: !binary |-
|
285
|
+
H4sIAAAAAAAAAy2MSw6CQAxA956i6ZoQhBlFllxk0gyNNoqQaYEF4e5CcP0+
|
286
|
+
Ky4kFkx6xgaK/Obu/vrwdVk676qizgCV0yyRwzByIpPhS59dtTTxAY1s0tCz
|
287
|
+
Kj2PBbakEuEfwckhvji+FUZS5S7H7fIDE3jQhHgAAAA=
|
288
|
+
http_version:
|
289
|
+
recorded_at: Tue, 08 Jul 2014 04:26:32 GMT
|
290
|
+
- request:
|
291
|
+
method: get
|
292
|
+
uri: https://saucelabs.com/rest/v1/info/status
|
293
|
+
body:
|
294
|
+
encoding: US-ASCII
|
295
|
+
string: ''
|
296
|
+
headers:
|
297
|
+
Accept:
|
298
|
+
- "*/*; q=0.5, application/xml"
|
299
|
+
Accept-Encoding:
|
300
|
+
- gzip, deflate
|
301
|
+
User-Agent:
|
302
|
+
- Ruby
|
303
|
+
response:
|
304
|
+
status:
|
305
|
+
code: 200
|
306
|
+
message: OK
|
307
|
+
headers:
|
308
|
+
Server:
|
309
|
+
- nginx
|
310
|
+
Date:
|
311
|
+
- Tue, 08 Jul 2014 04:33:38 GMT
|
312
|
+
Content-Type:
|
313
|
+
- application/json
|
314
|
+
Transfer-Encoding:
|
315
|
+
- chunked
|
316
|
+
Connection:
|
317
|
+
- keep-alive
|
318
|
+
Access-Control-Allow-Origin:
|
319
|
+
- http://status.saucelabs.com
|
320
|
+
X-Backend:
|
321
|
+
- mix
|
322
|
+
Content-Encoding:
|
323
|
+
- gzip
|
324
|
+
body:
|
325
|
+
encoding: ASCII-8BIT
|
326
|
+
string: !binary |-
|
327
|
+
H4sIAAAAAAAAAy2MzQ6CMAyA7zxF0zMhCwwQj7zI0owGGkTI2unB+O5K9Pz9
|
328
|
+
vPBJYsFkY7yCq9rGXfrOD97VzeC8LwGV00Mih/3gRCb7nW5f1VLmExpZ1rCx
|
329
|
+
Ks3nAkdSifCP4MchLhxXhYNUearwXXwASBpagngAAAA=
|
330
|
+
http_version:
|
331
|
+
recorded_at: Tue, 08 Jul 2014 04:33:32 GMT
|
332
|
+
- request:
|
333
|
+
method: get
|
334
|
+
uri: https://saucelabs.com/rest/v1/info/status
|
335
|
+
body:
|
336
|
+
encoding: US-ASCII
|
337
|
+
string: ''
|
338
|
+
headers:
|
339
|
+
Accept:
|
340
|
+
- "*/*; q=0.5, application/xml"
|
341
|
+
Accept-Encoding:
|
342
|
+
- gzip, deflate
|
343
|
+
User-Agent:
|
344
|
+
- Ruby
|
345
|
+
response:
|
346
|
+
status:
|
347
|
+
code: 200
|
348
|
+
message: OK
|
349
|
+
headers:
|
350
|
+
Server:
|
351
|
+
- nginx
|
352
|
+
Date:
|
353
|
+
- Tue, 08 Jul 2014 04:33:51 GMT
|
354
|
+
Content-Type:
|
355
|
+
- application/json
|
356
|
+
Transfer-Encoding:
|
357
|
+
- chunked
|
358
|
+
Connection:
|
359
|
+
- keep-alive
|
360
|
+
Access-Control-Allow-Origin:
|
361
|
+
- http://status.saucelabs.com
|
362
|
+
X-Backend:
|
363
|
+
- mix
|
364
|
+
Content-Encoding:
|
365
|
+
- gzip
|
366
|
+
body:
|
367
|
+
encoding: ASCII-8BIT
|
368
|
+
string: !binary |-
|
369
|
+
H4sIAAAAAAAAAy2MSw6CQAxA956i6doQ+UxwXHKRSTM20iBCph1YEO4uRNfv
|
370
|
+
s+FKYsFkZHzArXCVr3zja9e48l635RVQOS0SOUwzJzKZPvQ+VEuZT2hkWcPI
|
371
|
+
qvQ6F9iRSoR/BD8Osec4KMykys8C98sXaUzMpHgAAAA=
|
372
|
+
http_version:
|
373
|
+
recorded_at: Tue, 08 Jul 2014 04:33:44 GMT
|
374
|
+
recorded_with: VCR 2.9.2
|
@@ -8,7 +8,7 @@ http_interactions:
|
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
Accept:
|
11
|
-
-
|
11
|
+
- "*/*; q=0.5, application/xml"
|
12
12
|
Accept-Encoding:
|
13
13
|
- gzip, deflate
|
14
14
|
User-Agent:
|
@@ -100,7 +100,7 @@ http_interactions:
|
|
100
100
|
string: '{"passed":true}'
|
101
101
|
headers:
|
102
102
|
Accept:
|
103
|
-
-
|
103
|
+
- "*/*; q=0.5, application/xml"
|
104
104
|
Accept-Encoding:
|
105
105
|
- gzip, deflate
|
106
106
|
Content-Length:
|
@@ -152,7 +152,7 @@ http_interactions:
|
|
152
152
|
string: ''
|
153
153
|
headers:
|
154
154
|
Accept:
|
155
|
-
-
|
155
|
+
- "*/*; q=0.5, application/xml"
|
156
156
|
Accept-Encoding:
|
157
157
|
- gzip, deflate
|
158
158
|
User-Agent:
|
@@ -202,7 +202,7 @@ http_interactions:
|
|
202
202
|
string: ''
|
203
203
|
headers:
|
204
204
|
Accept:
|
205
|
-
-
|
205
|
+
- "*/*; q=0.5, application/xml"
|
206
206
|
Accept-Encoding:
|
207
207
|
- gzip, deflate
|
208
208
|
User-Agent:
|
@@ -248,7 +248,7 @@ http_interactions:
|
|
248
248
|
string: ''
|
249
249
|
headers:
|
250
250
|
Accept:
|
251
|
-
-
|
251
|
+
- "*/*; q=0.5, application/xml"
|
252
252
|
Accept-Encoding:
|
253
253
|
- gzip, deflate
|
254
254
|
Content-Length:
|
@@ -298,7 +298,7 @@ http_interactions:
|
|
298
298
|
string: ''
|
299
299
|
headers:
|
300
300
|
Accept:
|
301
|
-
-
|
301
|
+
- "*/*; q=0.5, application/xml"
|
302
302
|
Accept-Encoding:
|
303
303
|
- gzip, deflate
|
304
304
|
Content-Length:
|
@@ -348,7 +348,7 @@ http_interactions:
|
|
348
348
|
string: ''
|
349
349
|
headers:
|
350
350
|
Accept:
|
351
|
-
-
|
351
|
+
- "*/*; q=0.5, application/xml"
|
352
352
|
Accept-Encoding:
|
353
353
|
- gzip, deflate
|
354
354
|
Content-Length:
|
@@ -402,7 +402,7 @@ http_interactions:
|
|
402
402
|
string: ''
|
403
403
|
headers:
|
404
404
|
Accept:
|
405
|
-
-
|
405
|
+
- "*/*; q=0.5, application/xml"
|
406
406
|
Accept-Encoding:
|
407
407
|
- gzip, deflate
|
408
408
|
Content-Length:
|
@@ -456,7 +456,7 @@ http_interactions:
|
|
456
456
|
string: ''
|
457
457
|
headers:
|
458
458
|
Accept:
|
459
|
-
-
|
459
|
+
- "*/*; q=0.5, application/xml"
|
460
460
|
Accept-Encoding:
|
461
461
|
- gzip, deflate
|
462
462
|
Content-Length:
|
@@ -498,4 +498,124 @@ http_interactions:
|
|
498
498
|
string: '{"errors": "Not Found"}'
|
499
499
|
http_version:
|
500
500
|
recorded_at: Mon, 10 Jun 2013 08:54:49 GMT
|
501
|
-
|
501
|
+
- request:
|
502
|
+
method: get
|
503
|
+
uri: https://<SAUCE_USERNAME>:<SAUCE_ACCESS_KEY>@saucelabs.com/rest/v1/<SAUCE_USERNAME>/jobs/1ca64b180cfa40e0a4aee5a4a482f271/assets
|
504
|
+
body:
|
505
|
+
encoding: US-ASCII
|
506
|
+
string: ''
|
507
|
+
headers:
|
508
|
+
Accept:
|
509
|
+
- "*/*; q=0.5, application/xml"
|
510
|
+
Accept-Encoding:
|
511
|
+
- gzip, deflate
|
512
|
+
User-Agent:
|
513
|
+
- Ruby
|
514
|
+
response:
|
515
|
+
status:
|
516
|
+
code: 400
|
517
|
+
message: Bad Request
|
518
|
+
headers:
|
519
|
+
Server:
|
520
|
+
- nginx
|
521
|
+
Date:
|
522
|
+
- Fri, 11 Jul 2014 04:54:09 GMT
|
523
|
+
Content-Type:
|
524
|
+
- application/json
|
525
|
+
Transfer-Encoding:
|
526
|
+
- chunked
|
527
|
+
Connection:
|
528
|
+
- keep-alive
|
529
|
+
body:
|
530
|
+
encoding: US-ASCII
|
531
|
+
string: |
|
532
|
+
"Job hasn't finished running"
|
533
|
+
http_version:
|
534
|
+
recorded_at: Fri, 11 Jul 2014 04:53:50 GMT
|
535
|
+
- request:
|
536
|
+
method: get
|
537
|
+
uri: https://<SAUCE_USERNAME>:<SAUCE_ACCESS_KEY>@saucelabs.com/rest/v1/<SAUCE_USERNAME>/jobs/1ca64b180cfa40e0a4aee5a4a482f271/assets
|
538
|
+
body:
|
539
|
+
encoding: US-ASCII
|
540
|
+
string: ''
|
541
|
+
headers:
|
542
|
+
Accept:
|
543
|
+
- "*/*; q=0.5, application/xml"
|
544
|
+
Accept-Encoding:
|
545
|
+
- gzip, deflate
|
546
|
+
User-Agent:
|
547
|
+
- Ruby
|
548
|
+
response:
|
549
|
+
status:
|
550
|
+
code: 200
|
551
|
+
message: OK
|
552
|
+
headers:
|
553
|
+
Server:
|
554
|
+
- nginx
|
555
|
+
Date:
|
556
|
+
- Fri, 11 Jul 2014 04:59:38 GMT
|
557
|
+
Content-Type:
|
558
|
+
- application/json
|
559
|
+
Transfer-Encoding:
|
560
|
+
- chunked
|
561
|
+
Connection:
|
562
|
+
- keep-alive
|
563
|
+
X-Backend:
|
564
|
+
- mix
|
565
|
+
Content-Encoding:
|
566
|
+
- gzip
|
567
|
+
body:
|
568
|
+
encoding: ASCII-8BIT
|
569
|
+
string: !binary |-
|
570
|
+
H4sIAAAAAAAAA6tWKk4sTU7VzclPV7JSUAJSelnF+XlKOgpKZZkpqfkgQTBD
|
571
|
+
Ly2nDCRanJqTmpdZmgvTAecXpxaVpRbpgYRBypKLUlPzijPyS4qBqqKVDIAA
|
572
|
+
IaZXkAdWBRQ0xCpqhFXUGE00tpYLAPwfWkvAAAAA
|
573
|
+
http_version:
|
574
|
+
recorded_at: Fri, 11 Jul 2014 04:59:18 GMT
|
575
|
+
- request:
|
576
|
+
method: get
|
577
|
+
uri: https://<SAUCE_USERNAME>:<SAUCE_ACCESS_KEY>@saucelabs.com/rest/v1/<SAUCE_USERNAME>/jobs/1ca64b180cfa40e0a4aee5a4a482f271
|
578
|
+
body:
|
579
|
+
encoding: US-ASCII
|
580
|
+
string: ''
|
581
|
+
headers:
|
582
|
+
Accept:
|
583
|
+
- "*/*; q=0.5, application/xml"
|
584
|
+
Accept-Encoding:
|
585
|
+
- gzip, deflate
|
586
|
+
User-Agent:
|
587
|
+
- Ruby
|
588
|
+
response:
|
589
|
+
status:
|
590
|
+
code: 200
|
591
|
+
message: OK
|
592
|
+
headers:
|
593
|
+
Server:
|
594
|
+
- nginx
|
595
|
+
Date:
|
596
|
+
- Fri, 11 Jul 2014 07:03:49 GMT
|
597
|
+
Content-Type:
|
598
|
+
- application/json
|
599
|
+
Transfer-Encoding:
|
600
|
+
- chunked
|
601
|
+
Connection:
|
602
|
+
- keep-alive
|
603
|
+
X-Backend:
|
604
|
+
- mix
|
605
|
+
Content-Encoding:
|
606
|
+
- gzip
|
607
|
+
body:
|
608
|
+
encoding: ASCII-8BIT
|
609
|
+
string: !binary |-
|
610
|
+
H4sIAAAAAAAAA61Sy07kMBC88xVWzkweKAMDNz6AE+KAEIo6dmfGu447crcH
|
611
|
+
0Gr/HXd2VzPishcOseSqVj3a+VWNid4Y08AHSjIcMbGnWN2Z6qa6NNXRO6Qh
|
612
|
+
p6DIQWThu6YBZhSuGbLFACPXlubmB43cdBau+7HbtXaCvsUWekDclrPfXU1X
|
613
|
+
N12z6tVTOKq4TQhS3AbxMxaDrm+37bbvu52SmYXmjQOBQsUcQgH/hT2PWbe1
|
614
|
+
itFbxKSA+wgQQdZ0Snin6P+S6WSg/TdWZQwYfZ43JXDJWxd1NRmzD+7UaFEH
|
615
|
+
vUvKqPc8Bm9PPAtIZo1UnJeAsnYS2Cv28vpnojzc1xXeqlaid7+KTxBY1YvG
|
616
|
+
DNHxEEkGztYi85S18bawEVaN6plyMk8ltrnfYxTzeKAcnBnRlGUYsJaS83Fv
|
617
|
+
hIwc0CwJNylHzVXEM4QzQ4zuS7TyKZ4SpVNLWhs+gDVdW9+uayr/xs+FfBQ8
|
618
|
+
29bf99dhhgmSr35ffAJrf/AcwwIAAA==
|
619
|
+
http_version:
|
620
|
+
recorded_at: Fri, 11 Jul 2014 07:03:28 GMT
|
621
|
+
recorded_with: VCR 2.9.2
|
@@ -13,12 +13,12 @@ describe SauceWhisk::Account do
|
|
13
13
|
}
|
14
14
|
|
15
15
|
test_account = SauceWhisk::Account.new options
|
16
|
-
test_account.access_key.
|
17
|
-
test_account.minutes.
|
18
|
-
test_account.mac_minutes.
|
19
|
-
test_account.manual_minutes.
|
20
|
-
test_account.mac_manual_minutes.
|
21
|
-
test_account.username.
|
16
|
+
expect( test_account.access_key ).to eq 12345
|
17
|
+
expect( test_account.minutes ).to eq 23
|
18
|
+
expect( test_account.mac_minutes ).to eq 11
|
19
|
+
expect( test_account.manual_minutes ).to eq 4
|
20
|
+
expect( test_account.mac_manual_minutes ).to eq 87
|
21
|
+
expect( test_account.username ).to eq "someone"
|
22
22
|
end
|
23
23
|
|
24
24
|
it "sets concurrency figures" do
|
@@ -28,8 +28,8 @@ describe SauceWhisk::Account do
|
|
28
28
|
}
|
29
29
|
|
30
30
|
test_account = SauceWhisk::Account.new concurrencies
|
31
|
-
test_account.mac_concurrency.
|
32
|
-
test_account.total_concurrency.
|
31
|
+
expect( test_account.mac_concurrency ).to eq 23
|
32
|
+
expect( test_account.total_concurrency ).to eq 100
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
@@ -12,23 +12,23 @@ describe SauceWhisk::Accounts, :vcr => {:cassette_name => "accounts", :match_req
|
|
12
12
|
it "returns an Account object" do
|
13
13
|
username = ENV["SAUCE_USERNAME"]
|
14
14
|
account = SauceWhisk::Accounts.fetch(username)
|
15
|
-
account.
|
15
|
+
expect( account ).to be_an_instance_of SauceWhisk::Account
|
16
16
|
|
17
|
-
account.username.
|
18
|
-
account.access_key.
|
17
|
+
expect( account.username) .to eq username
|
18
|
+
expect( account.access_key ).to_not be_nil
|
19
19
|
end
|
20
20
|
|
21
21
|
it "includes the concurrency by default" do
|
22
22
|
account = SauceWhisk::Accounts.fetch ENV["SAUCE_USERNAME"]
|
23
23
|
assert_requested :get, "https://#{auth}@saucelabs.com/rest/v1/#{ENV["SAUCE_USERNAME"]}/limits"
|
24
|
-
account.total_concurrency.
|
25
|
-
account.mac_concurrency.
|
24
|
+
expect( account.total_concurrency ).to eq 20
|
25
|
+
expect( account.mac_concurrency ).to eq 5
|
26
26
|
end
|
27
27
|
|
28
28
|
it "should not include concurrency when conservative is set to false" do
|
29
29
|
account = SauceWhisk::Accounts.fetch(ENV["SAUCE_USERNAME"], false)
|
30
30
|
assert_not_requested :get, "https://#{auth}@saucelabs.com/rest/v1/#{ENV["SAUCE_USERNAME"]}/limits"
|
31
|
-
account.total_concurrency.
|
31
|
+
expect( account.total_concurrency ).to be_nil
|
32
32
|
end
|
33
33
|
|
34
34
|
context "with an invalid account" do
|
@@ -84,7 +84,7 @@ describe SauceWhisk::Accounts, :vcr => {:cassette_name => "accounts", :match_req
|
|
84
84
|
sub = SauceWhisk::Accounts.create_subaccount(parent, "Manny", "newsub77",
|
85
85
|
"Manny@blackbooks.co.uk", "davesdisease")
|
86
86
|
|
87
|
-
sub.
|
87
|
+
expect( sub ).to be_a_kind_of SauceWhisk::Account
|
88
88
|
end
|
89
89
|
|
90
90
|
it "returns a Subaccount, parented to the Parent account" do
|
@@ -93,7 +93,7 @@ describe SauceWhisk::Accounts, :vcr => {:cassette_name => "accounts", :match_req
|
|
93
93
|
sub = SauceWhisk::Accounts.create_subaccount(parent, "Manny", "newsub77",
|
94
94
|
"Manny@blackbooks.co.uk", "davesdisease")
|
95
95
|
|
96
|
-
sub.parent.
|
96
|
+
expect( sub.parent ).to be parent
|
97
97
|
end
|
98
98
|
|
99
99
|
context "trying to create too many subaccounts" do
|
@@ -15,25 +15,25 @@ describe SauceWhisk::Asset do
|
|
15
15
|
end
|
16
16
|
|
17
17
|
it "should store the name" do
|
18
|
-
@asset.name.
|
18
|
+
expect( @asset.name ).to eq name
|
19
19
|
end
|
20
20
|
|
21
21
|
it "should store the data" do
|
22
|
-
@asset.data.
|
22
|
+
expect( @asset.data ).to eq data
|
23
23
|
end
|
24
24
|
|
25
25
|
it "should store the type" do
|
26
|
-
@asset.asset_type.
|
26
|
+
expect( @asset.asset_type ).to eq type
|
27
27
|
end
|
28
28
|
|
29
29
|
it "should store the job_id" do
|
30
|
-
@asset.job.
|
30
|
+
expect( @asset.job ).to eq job_id
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
34
34
|
describe "#type" do
|
35
35
|
it "should default to screenshot" do
|
36
|
-
SauceWhisk::Asset.new.asset_type.
|
36
|
+
expect( SauceWhisk::Asset.new.asset_type ).to eq :screenshot
|
37
37
|
end
|
38
38
|
end
|
39
39
|
end
|