senec 0.22.0 → 0.22.1

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/coverage/index.html CHANGED
@@ -13,7 +13,7 @@
13
13
  <img src="./assets/0.13.2/loading.gif" alt="loading"/>
14
14
  </div>
15
15
  <div id="wrapper" class="hide">
16
- <div class="timestamp">Generated <abbr class="timeago" title="2025-08-06T09:10:28+02:00">2025-08-06T09:10:28+02:00</abbr></div>
16
+ <div class="timestamp">Generated <abbr class="timeago" title="2025-09-12T09:37:13+02:00">2025-09-12T09:37:13+02:00</abbr></div>
17
17
  <ul class="group_tabs"></ul>
18
18
 
19
19
  <div id="content">
@@ -22,14 +22,14 @@
22
22
  <span class="group_name">All Files</span>
23
23
  (<span class="covered_percent">
24
24
  <span class="green">
25
- 99.48%
25
+ 99.84%
26
26
  </span>
27
27
 
28
28
  </span>
29
29
  covered at
30
30
  <span class="covered_strength">
31
31
  <span class="green">
32
- 8.28
32
+ 8.06
33
33
  </span>
34
34
  </span> hits/line
35
35
  )
@@ -42,11 +42,11 @@
42
42
  </div>
43
43
 
44
44
  <div class="t-line-summary">
45
- <b>581</b> relevant lines,
46
- <span class="green"><b>578</b> lines covered</span> and
47
- <span class="red"><b>3</b> lines missed. </span>
45
+ <b>607</b> relevant lines,
46
+ <span class="green"><b>606</b> lines covered</span> and
47
+ <span class="red"><b>1</b> lines missed. </span>
48
48
  (<span class="green">
49
- 99.48%
49
+ 99.84%
50
50
  </span>
51
51
  )
52
52
  </div>
@@ -82,12 +82,12 @@
82
82
 
83
83
  <tr class="t-file">
84
84
  <td class="strong t-file__name"><a href="#da88debbcd31a92182b17a5cb5c72079964065cb" class="src_link" title="lib/senec/cloud/connection.rb">lib/senec/cloud/connection.rb</a></td>
85
- <td class="green strong cell--number t-file__coverage">97.48 %</td>
86
- <td class="cell--number">268</td>
87
- <td class="cell--number">119</td>
88
- <td class="cell--number">116</td>
89
- <td class="cell--number">3</td>
90
- <td class="cell--number">12.75</td>
85
+ <td class="green strong cell--number t-file__coverage">99.15 %</td>
86
+ <td class="cell--number">263</td>
87
+ <td class="cell--number">118</td>
88
+ <td class="cell--number">117</td>
89
+ <td class="cell--number">1</td>
90
+ <td class="cell--number">13.08</td>
91
91
 
92
92
  </tr>
93
93
 
@@ -171,11 +171,11 @@
171
171
  <tr class="t-file">
172
172
  <td class="strong t-file__name"><a href="#aa6a6feb84f95151ca3e30ec55acd57ea44d2b57" class="src_link" title="spec/lib/senec/cloud/connection_spec.rb">spec/lib/senec/cloud/connection_spec.rb</a></td>
173
173
  <td class="green strong cell--number t-file__coverage">100.00 %</td>
174
- <td class="cell--number">197</td>
175
- <td class="cell--number">72</td>
176
- <td class="cell--number">72</td>
174
+ <td class="cell--number">237</td>
175
+ <td class="cell--number">99</td>
176
+ <td class="cell--number">99</td>
177
177
  <td class="cell--number">0</td>
178
- <td class="cell--number">2.89</td>
178
+ <td class="cell--number">2.60</td>
179
179
 
180
180
  </tr>
181
181
 
@@ -230,7 +230,7 @@
230
230
  <td class="cell--number">47</td>
231
231
  <td class="cell--number">47</td>
232
232
  <td class="cell--number">0</td>
233
- <td class="cell--number">37.28</td>
233
+ <td class="cell--number">37.34</td>
234
234
 
235
235
  </tr>
236
236
 
@@ -381,7 +381,7 @@
381
381
  <h3>lib/senec/cloud/connection.rb</h3>
382
382
  <h4>
383
383
  <span class="green">
384
- 97.48%
384
+ 99.15%
385
385
  </span>
386
386
 
387
387
  lines covered
@@ -390,9 +390,9 @@
390
390
 
391
391
 
392
392
  <div class="t-line-summary">
393
- <b>119</b> relevant lines.
394
- <span class="green"><b>116</b> lines covered</span> and
395
- <span class="red"><b>3</b> lines missed.</span>
393
+ <b>118</b> relevant lines.
394
+ <span class="green"><b>117</b> lines covered</span> and
395
+ <span class="red"><b>1</b> lines missed.</span>
396
396
  </div>
397
397
 
398
398
 
@@ -631,9 +631,9 @@
631
631
  </div>
632
632
 
633
633
  <div>
634
- <li class="covered" data-hits="19" data-linenumber="21">
634
+ <li class="covered" data-hits="22" data-linenumber="21">
635
635
 
636
- <span class="hits">19</span>
636
+ <span class="hits">22</span>
637
637
 
638
638
 
639
639
 
@@ -643,9 +643,9 @@
643
643
  </div>
644
644
 
645
645
  <div>
646
- <li class="covered" data-hits="19" data-linenumber="22">
646
+ <li class="covered" data-hits="22" data-linenumber="22">
647
647
 
648
- <span class="hits">19</span>
648
+ <span class="hits">22</span>
649
649
 
650
650
 
651
651
 
@@ -655,9 +655,9 @@
655
655
  </div>
656
656
 
657
657
  <div>
658
- <li class="covered" data-hits="19" data-linenumber="23">
658
+ <li class="covered" data-hits="22" data-linenumber="23">
659
659
 
660
- <span class="hits">19</span>
660
+ <span class="hits">22</span>
661
661
 
662
662
 
663
663
 
@@ -667,9 +667,9 @@
667
667
  </div>
668
668
 
669
669
  <div>
670
- <li class="covered" data-hits="19" data-linenumber="24">
670
+ <li class="covered" data-hits="22" data-linenumber="24">
671
671
 
672
- <span class="hits">19</span>
672
+ <span class="hits">22</span>
673
673
 
674
674
 
675
675
 
@@ -1011,9 +1011,9 @@
1011
1011
  </div>
1012
1012
 
1013
1013
  <div>
1014
- <li class="covered" data-hits="19" data-linenumber="56">
1014
+ <li class="covered" data-hits="22" data-linenumber="56">
1015
1015
 
1016
- <span class="hits">19</span>
1016
+ <span class="hits">22</span>
1017
1017
 
1018
1018
 
1019
1019
 
@@ -1055,9 +1055,9 @@
1055
1055
  </div>
1056
1056
 
1057
1057
  <div>
1058
- <li class="covered" data-hits="3" data-linenumber="60">
1058
+ <li class="covered" data-hits="6" data-linenumber="60">
1059
1059
 
1060
- <span class="hits">3</span>
1060
+ <span class="hits">6</span>
1061
1061
 
1062
1062
 
1063
1063
 
@@ -2286,14 +2286,14 @@
2286
2286
 
2287
2287
 
2288
2288
 
2289
- <code class="ruby"> def ensure_token_valid</code>
2289
+ <code class="ruby"> def ensure_token_valid!</code>
2290
2290
  </li>
2291
2291
  </div>
2292
2292
 
2293
2293
  <div>
2294
- <li class="covered" data-hits="15" data-linenumber="173">
2294
+ <li class="covered" data-hits="18" data-linenumber="173">
2295
2295
 
2296
- <span class="hits">15</span>
2296
+ <span class="hits">18</span>
2297
2297
 
2298
2298
 
2299
2299
 
@@ -2303,14 +2303,14 @@
2303
2303
  </div>
2304
2304
 
2305
2305
  <div>
2306
- <li class="covered" data-hits="15" data-linenumber="174">
2306
+ <li class="covered" data-hits="18" data-linenumber="174">
2307
2307
 
2308
- <span class="hits">15</span>
2308
+ <span class="hits">18</span>
2309
2309
 
2310
2310
 
2311
2311
 
2312
2312
 
2313
- <code class="ruby"> return true unless oauth_token.expired?</code>
2313
+ <code class="ruby"> return unless oauth_token.expired?</code>
2314
2314
  </li>
2315
2315
  </div>
2316
2316
 
@@ -2325,27 +2325,19 @@
2325
2325
  </div>
2326
2326
 
2327
2327
  <div>
2328
- <li class="missed" data-hits="0" data-linenumber="176">
2329
-
2330
-
2328
+ <li class="covered" data-hits="2" data-linenumber="176">
2331
2329
 
2332
-
2333
- <code class="ruby"> self.oauth_token = oauth_token.refresh!</code>
2334
- </li>
2335
- </div>
2336
-
2337
- <div>
2338
- <li class="missed" data-hits="0" data-linenumber="177">
2330
+ <span class="hits">2</span>
2339
2331
 
2340
2332
 
2341
2333
 
2342
2334
 
2343
- <code class="ruby"> true</code>
2335
+ <code class="ruby"> self.oauth_token = oauth_token.refresh!</code>
2344
2336
  </li>
2345
2337
  </div>
2346
2338
 
2347
2339
  <div>
2348
- <li class="never" data-hits="" data-linenumber="178">
2340
+ <li class="never" data-hits="" data-linenumber="177">
2349
2341
 
2350
2342
 
2351
2343
 
@@ -2355,55 +2347,41 @@
2355
2347
  </div>
2356
2348
 
2357
2349
  <div>
2358
- <li class="skipped" data-hits="" data-linenumber="179">
2359
-
2360
- <span class="hits">skipped</span>
2361
-
2362
-
2363
-
2364
-
2365
- <code class="ruby"> # :nocov:</code>
2366
- </li>
2367
- </div>
2368
-
2369
- <div>
2370
- <li class="skipped" data-hits="0" data-linenumber="180">
2350
+ <li class="covered" data-hits="1" data-linenumber="178">
2371
2351
 
2372
- <span class="hits">skipped</span>
2352
+ <span class="hits">1</span>
2373
2353
 
2374
2354
 
2375
2355
 
2376
2356
 
2377
- <code class="ruby"> warn &quot;Token refresh failed: #{e.message}&quot;</code>
2357
+ <code class="ruby"> warn &quot;Token refresh failed: #{e.message}, trying to re-authenticate...&quot;</code>
2378
2358
  </li>
2379
2359
  </div>
2380
2360
 
2381
2361
  <div>
2382
- <li class="skipped" data-hits="0" data-linenumber="181">
2383
-
2384
- <span class="hits">skipped</span>
2362
+ <li class="never" data-hits="" data-linenumber="179">
2385
2363
 
2386
2364
 
2387
2365
 
2388
2366
 
2389
- <code class="ruby"> false</code>
2367
+ <code class="ruby"></code>
2390
2368
  </li>
2391
2369
  </div>
2392
2370
 
2393
2371
  <div>
2394
- <li class="skipped" data-hits="" data-linenumber="182">
2372
+ <li class="covered" data-hits="1" data-linenumber="180">
2395
2373
 
2396
- <span class="hits">skipped</span>
2374
+ <span class="hits">1</span>
2397
2375
 
2398
2376
 
2399
2377
 
2400
2378
 
2401
- <code class="ruby"> # :nocov:</code>
2379
+ <code class="ruby"> authenticate!</code>
2402
2380
  </li>
2403
2381
  </div>
2404
2382
 
2405
2383
  <div>
2406
- <li class="never" data-hits="" data-linenumber="183">
2384
+ <li class="never" data-hits="" data-linenumber="181">
2407
2385
 
2408
2386
 
2409
2387
 
@@ -2413,7 +2391,7 @@
2413
2391
  </div>
2414
2392
 
2415
2393
  <div>
2416
- <li class="never" data-hits="" data-linenumber="184">
2394
+ <li class="never" data-hits="" data-linenumber="182">
2417
2395
 
2418
2396
 
2419
2397
 
@@ -2423,31 +2401,31 @@
2423
2401
  </div>
2424
2402
 
2425
2403
  <div>
2426
- <li class="covered" data-hits="1" data-linenumber="185">
2404
+ <li class="covered" data-hits="1" data-linenumber="183">
2427
2405
 
2428
2406
  <span class="hits">1</span>
2429
2407
 
2430
2408
 
2431
2409
 
2432
2410
 
2433
- <code class="ruby"> def get(url, default: nil)</code>
2411
+ <code class="ruby"> def get(url)</code>
2434
2412
  </li>
2435
2413
  </div>
2436
2414
 
2437
2415
  <div>
2438
- <li class="covered" data-hits="12" data-linenumber="186">
2416
+ <li class="covered" data-hits="15" data-linenumber="184">
2439
2417
 
2440
- <span class="hits">12</span>
2418
+ <span class="hits">15</span>
2441
2419
 
2442
2420
 
2443
2421
 
2444
2422
 
2445
- <code class="ruby"> return default unless ensure_token_valid</code>
2423
+ <code class="ruby"> ensure_token_valid!</code>
2446
2424
  </li>
2447
2425
  </div>
2448
2426
 
2449
2427
  <div>
2450
- <li class="never" data-hits="" data-linenumber="187">
2428
+ <li class="never" data-hits="" data-linenumber="185">
2451
2429
 
2452
2430
 
2453
2431
 
@@ -2457,9 +2435,9 @@
2457
2435
  </div>
2458
2436
 
2459
2437
  <div>
2460
- <li class="covered" data-hits="12" data-linenumber="188">
2438
+ <li class="covered" data-hits="15" data-linenumber="186">
2461
2439
 
2462
- <span class="hits">12</span>
2440
+ <span class="hits">15</span>
2463
2441
 
2464
2442
 
2465
2443
 
@@ -2469,31 +2447,9 @@
2469
2447
  </div>
2470
2448
 
2471
2449
  <div>
2472
- <li class="covered" data-hits="9" data-linenumber="189">
2473
-
2474
- <span class="hits">9</span>
2475
-
2476
-
2477
-
2478
-
2479
- <code class="ruby"> return default unless response.status == 200</code>
2480
- </li>
2481
- </div>
2482
-
2483
- <div>
2484
- <li class="never" data-hits="" data-linenumber="190">
2485
-
2486
-
2487
-
2488
-
2489
- <code class="ruby"></code>
2490
- </li>
2491
- </div>
2492
-
2493
- <div>
2494
- <li class="covered" data-hits="9" data-linenumber="191">
2450
+ <li class="covered" data-hits="12" data-linenumber="187">
2495
2451
 
2496
- <span class="hits">9</span>
2452
+ <span class="hits">12</span>
2497
2453
 
2498
2454
 
2499
2455
 
@@ -2503,7 +2459,7 @@
2503
2459
  </div>
2504
2460
 
2505
2461
  <div>
2506
- <li class="never" data-hits="" data-linenumber="192">
2462
+ <li class="never" data-hits="" data-linenumber="188">
2507
2463
 
2508
2464
 
2509
2465
 
@@ -2513,7 +2469,7 @@
2513
2469
  </div>
2514
2470
 
2515
2471
  <div>
2516
- <li class="skipped" data-hits="" data-linenumber="193">
2472
+ <li class="skipped" data-hits="" data-linenumber="189">
2517
2473
 
2518
2474
  <span class="hits">skipped</span>
2519
2475
 
@@ -2525,7 +2481,7 @@
2525
2481
  </div>
2526
2482
 
2527
2483
  <div>
2528
- <li class="skipped" data-hits="3" data-linenumber="194">
2484
+ <li class="skipped" data-hits="3" data-linenumber="190">
2529
2485
 
2530
2486
  <span class="hits">skipped</span>
2531
2487
 
@@ -2537,19 +2493,19 @@
2537
2493
  </div>
2538
2494
 
2539
2495
  <div>
2540
- <li class="skipped" data-hits="3" data-linenumber="195">
2496
+ <li class="skipped" data-hits="3" data-linenumber="191">
2541
2497
 
2542
2498
  <span class="hits">skipped</span>
2543
2499
 
2544
2500
 
2545
2501
 
2546
2502
 
2547
- <code class="ruby"> default</code>
2503
+ <code class="ruby"> nil</code>
2548
2504
  </li>
2549
2505
  </div>
2550
2506
 
2551
2507
  <div>
2552
- <li class="skipped" data-hits="" data-linenumber="196">
2508
+ <li class="skipped" data-hits="" data-linenumber="192">
2553
2509
 
2554
2510
  <span class="hits">skipped</span>
2555
2511
 
@@ -2561,7 +2517,7 @@
2561
2517
  </div>
2562
2518
 
2563
2519
  <div>
2564
- <li class="never" data-hits="" data-linenumber="197">
2520
+ <li class="never" data-hits="" data-linenumber="193">
2565
2521
 
2566
2522
 
2567
2523
 
@@ -2571,7 +2527,7 @@
2571
2527
  </div>
2572
2528
 
2573
2529
  <div>
2574
- <li class="never" data-hits="" data-linenumber="198">
2530
+ <li class="never" data-hits="" data-linenumber="194">
2575
2531
 
2576
2532
 
2577
2533
 
@@ -2581,31 +2537,31 @@
2581
2537
  </div>
2582
2538
 
2583
2539
  <div>
2584
- <li class="covered" data-hits="1" data-linenumber="199">
2540
+ <li class="covered" data-hits="1" data-linenumber="195">
2585
2541
 
2586
2542
  <span class="hits">1</span>
2587
2543
 
2588
2544
 
2589
2545
 
2590
2546
 
2591
- <code class="ruby"> def post(url, data, default: nil)</code>
2547
+ <code class="ruby"> def post(url, data)</code>
2592
2548
  </li>
2593
2549
  </div>
2594
2550
 
2595
2551
  <div>
2596
- <li class="covered" data-hits="3" data-linenumber="200">
2552
+ <li class="covered" data-hits="3" data-linenumber="196">
2597
2553
 
2598
2554
  <span class="hits">3</span>
2599
2555
 
2600
2556
 
2601
2557
 
2602
2558
 
2603
- <code class="ruby"> return default unless ensure_token_valid</code>
2559
+ <code class="ruby"> ensure_token_valid!</code>
2604
2560
  </li>
2605
2561
  </div>
2606
2562
 
2607
2563
  <div>
2608
- <li class="never" data-hits="" data-linenumber="201">
2564
+ <li class="never" data-hits="" data-linenumber="197">
2609
2565
 
2610
2566
 
2611
2567
 
@@ -2615,7 +2571,7 @@
2615
2571
  </div>
2616
2572
 
2617
2573
  <div>
2618
- <li class="covered" data-hits="3" data-linenumber="202">
2574
+ <li class="covered" data-hits="3" data-linenumber="198">
2619
2575
 
2620
2576
  <span class="hits">3</span>
2621
2577
 
@@ -2627,7 +2583,7 @@
2627
2583
  </div>
2628
2584
 
2629
2585
  <div>
2630
- <li class="never" data-hits="" data-linenumber="203">
2586
+ <li class="never" data-hits="" data-linenumber="199">
2631
2587
 
2632
2588
 
2633
2589
 
@@ -2637,7 +2593,7 @@
2637
2593
  </div>
2638
2594
 
2639
2595
  <div>
2640
- <li class="never" data-hits="" data-linenumber="204">
2596
+ <li class="never" data-hits="" data-linenumber="200">
2641
2597
 
2642
2598
 
2643
2599
 
@@ -2647,7 +2603,7 @@
2647
2603
  </div>
2648
2604
 
2649
2605
  <div>
2650
- <li class="never" data-hits="" data-linenumber="205">
2606
+ <li class="never" data-hits="" data-linenumber="201">
2651
2607
 
2652
2608
 
2653
2609
 
@@ -2657,7 +2613,7 @@
2657
2613
  </div>
2658
2614
 
2659
2615
  <div>
2660
- <li class="never" data-hits="" data-linenumber="206">
2616
+ <li class="never" data-hits="" data-linenumber="202">
2661
2617
 
2662
2618
 
2663
2619
 
@@ -2667,19 +2623,7 @@
2667
2623
  </div>
2668
2624
 
2669
2625
  <div>
2670
- <li class="covered" data-hits="2" data-linenumber="207">
2671
-
2672
- <span class="hits">2</span>
2673
-
2674
-
2675
-
2676
-
2677
- <code class="ruby"> return default unless response.status == 200</code>
2678
- </li>
2679
- </div>
2680
-
2681
- <div>
2682
- <li class="never" data-hits="" data-linenumber="208">
2626
+ <li class="never" data-hits="" data-linenumber="203">
2683
2627
 
2684
2628
 
2685
2629
 
@@ -2689,7 +2633,7 @@
2689
2633
  </div>
2690
2634
 
2691
2635
  <div>
2692
- <li class="covered" data-hits="2" data-linenumber="209">
2636
+ <li class="covered" data-hits="2" data-linenumber="204">
2693
2637
 
2694
2638
  <span class="hits">2</span>
2695
2639
 
@@ -2701,7 +2645,7 @@
2701
2645
  </div>
2702
2646
 
2703
2647
  <div>
2704
- <li class="never" data-hits="" data-linenumber="210">
2648
+ <li class="never" data-hits="" data-linenumber="205">
2705
2649
 
2706
2650
 
2707
2651
 
@@ -2711,7 +2655,7 @@
2711
2655
  </div>
2712
2656
 
2713
2657
  <div>
2714
- <li class="skipped" data-hits="" data-linenumber="211">
2658
+ <li class="skipped" data-hits="" data-linenumber="206">
2715
2659
 
2716
2660
  <span class="hits">skipped</span>
2717
2661
 
@@ -2723,7 +2667,7 @@
2723
2667
  </div>
2724
2668
 
2725
2669
  <div>
2726
- <li class="skipped" data-hits="1" data-linenumber="212">
2670
+ <li class="skipped" data-hits="1" data-linenumber="207">
2727
2671
 
2728
2672
  <span class="hits">skipped</span>
2729
2673
 
@@ -2735,19 +2679,19 @@
2735
2679
  </div>
2736
2680
 
2737
2681
  <div>
2738
- <li class="skipped" data-hits="1" data-linenumber="213">
2682
+ <li class="skipped" data-hits="1" data-linenumber="208">
2739
2683
 
2740
2684
  <span class="hits">skipped</span>
2741
2685
 
2742
2686
 
2743
2687
 
2744
2688
 
2745
- <code class="ruby"> default</code>
2689
+ <code class="ruby"> nil</code>
2746
2690
  </li>
2747
2691
  </div>
2748
2692
 
2749
2693
  <div>
2750
- <li class="skipped" data-hits="" data-linenumber="214">
2694
+ <li class="skipped" data-hits="" data-linenumber="209">
2751
2695
 
2752
2696
  <span class="hits">skipped</span>
2753
2697
 
@@ -2759,7 +2703,7 @@
2759
2703
  </div>
2760
2704
 
2761
2705
  <div>
2762
- <li class="never" data-hits="" data-linenumber="215">
2706
+ <li class="never" data-hits="" data-linenumber="210">
2763
2707
 
2764
2708
 
2765
2709
 
@@ -2769,7 +2713,7 @@
2769
2713
  </div>
2770
2714
 
2771
2715
  <div>
2772
- <li class="never" data-hits="" data-linenumber="216">
2716
+ <li class="never" data-hits="" data-linenumber="211">
2773
2717
 
2774
2718
 
2775
2719
 
@@ -2779,7 +2723,7 @@
2779
2723
  </div>
2780
2724
 
2781
2725
  <div>
2782
- <li class="covered" data-hits="1" data-linenumber="217">
2726
+ <li class="covered" data-hits="1" data-linenumber="212">
2783
2727
 
2784
2728
  <span class="hits">1</span>
2785
2729
 
@@ -2791,7 +2735,7 @@
2791
2735
  </div>
2792
2736
 
2793
2737
  <div>
2794
- <li class="covered" data-hits="58" data-linenumber="218">
2738
+ <li class="covered" data-hits="58" data-linenumber="213">
2795
2739
 
2796
2740
  <span class="hits">58</span>
2797
2741
 
@@ -2803,7 +2747,7 @@
2803
2747
  </div>
2804
2748
 
2805
2749
  <div>
2806
- <li class="never" data-hits="" data-linenumber="219">
2750
+ <li class="never" data-hits="" data-linenumber="214">
2807
2751
 
2808
2752
 
2809
2753
 
@@ -2813,7 +2757,7 @@
2813
2757
  </div>
2814
2758
 
2815
2759
  <div>
2816
- <li class="never" data-hits="" data-linenumber="220">
2760
+ <li class="never" data-hits="" data-linenumber="215">
2817
2761
 
2818
2762
 
2819
2763
 
@@ -2823,7 +2767,7 @@
2823
2767
  </div>
2824
2768
 
2825
2769
  <div>
2826
- <li class="covered" data-hits="58" data-linenumber="221">
2770
+ <li class="covered" data-hits="58" data-linenumber="216">
2827
2771
 
2828
2772
  <span class="hits">58</span>
2829
2773
 
@@ -2835,7 +2779,7 @@
2835
2779
  </div>
2836
2780
 
2837
2781
  <div>
2838
- <li class="covered" data-hits="58" data-linenumber="222">
2782
+ <li class="covered" data-hits="58" data-linenumber="217">
2839
2783
 
2840
2784
  <span class="hits">58</span>
2841
2785
 
@@ -2847,7 +2791,7 @@
2847
2791
  </div>
2848
2792
 
2849
2793
  <div>
2850
- <li class="covered" data-hits="58" data-linenumber="223">
2794
+ <li class="covered" data-hits="58" data-linenumber="218">
2851
2795
 
2852
2796
  <span class="hits">58</span>
2853
2797
 
@@ -2859,7 +2803,7 @@
2859
2803
  </div>
2860
2804
 
2861
2805
  <div>
2862
- <li class="covered" data-hits="58" data-linenumber="224">
2806
+ <li class="covered" data-hits="58" data-linenumber="219">
2863
2807
 
2864
2808
  <span class="hits">58</span>
2865
2809
 
@@ -2871,7 +2815,7 @@
2871
2815
  </div>
2872
2816
 
2873
2817
  <div>
2874
- <li class="never" data-hits="" data-linenumber="225">
2818
+ <li class="never" data-hits="" data-linenumber="220">
2875
2819
 
2876
2820
 
2877
2821
 
@@ -2881,7 +2825,7 @@
2881
2825
  </div>
2882
2826
 
2883
2827
  <div>
2884
- <li class="never" data-hits="" data-linenumber="226">
2828
+ <li class="never" data-hits="" data-linenumber="221">
2885
2829
 
2886
2830
 
2887
2831
 
@@ -2891,7 +2835,7 @@
2891
2835
  </div>
2892
2836
 
2893
2837
  <div>
2894
- <li class="never" data-hits="" data-linenumber="227">
2838
+ <li class="never" data-hits="" data-linenumber="222">
2895
2839
 
2896
2840
 
2897
2841
 
@@ -2901,7 +2845,7 @@
2901
2845
  </div>
2902
2846
 
2903
2847
  <div>
2904
- <li class="covered" data-hits="1" data-linenumber="228">
2848
+ <li class="covered" data-hits="1" data-linenumber="223">
2905
2849
 
2906
2850
  <span class="hits">1</span>
2907
2851
 
@@ -2913,7 +2857,7 @@
2913
2857
  </div>
2914
2858
 
2915
2859
  <div>
2916
- <li class="covered" data-hits="36" data-linenumber="229">
2860
+ <li class="covered" data-hits="36" data-linenumber="224">
2917
2861
 
2918
2862
  <span class="hits">36</span>
2919
2863
 
@@ -2925,7 +2869,7 @@
2925
2869
  </div>
2926
2870
 
2927
2871
  <div>
2928
- <li class="never" data-hits="" data-linenumber="230">
2872
+ <li class="never" data-hits="" data-linenumber="225">
2929
2873
 
2930
2874
 
2931
2875
 
@@ -2935,7 +2879,7 @@
2935
2879
  </div>
2936
2880
 
2937
2881
  <div>
2938
- <li class="never" data-hits="" data-linenumber="231">
2882
+ <li class="never" data-hits="" data-linenumber="226">
2939
2883
 
2940
2884
 
2941
2885
 
@@ -2945,7 +2889,7 @@
2945
2889
  </div>
2946
2890
 
2947
2891
  <div>
2948
- <li class="never" data-hits="" data-linenumber="232">
2892
+ <li class="never" data-hits="" data-linenumber="227">
2949
2893
 
2950
2894
 
2951
2895
 
@@ -2955,7 +2899,7 @@
2955
2899
  </div>
2956
2900
 
2957
2901
  <div>
2958
- <li class="never" data-hits="" data-linenumber="233">
2902
+ <li class="never" data-hits="" data-linenumber="228">
2959
2903
 
2960
2904
 
2961
2905
 
@@ -2965,7 +2909,7 @@
2965
2909
  </div>
2966
2910
 
2967
2911
  <div>
2968
- <li class="never" data-hits="" data-linenumber="234">
2912
+ <li class="never" data-hits="" data-linenumber="229">
2969
2913
 
2970
2914
 
2971
2915
 
@@ -2975,7 +2919,7 @@
2975
2919
  </div>
2976
2920
 
2977
2921
  <div>
2978
- <li class="never" data-hits="" data-linenumber="235">
2922
+ <li class="never" data-hits="" data-linenumber="230">
2979
2923
 
2980
2924
 
2981
2925
 
@@ -2985,7 +2929,7 @@
2985
2929
  </div>
2986
2930
 
2987
2931
  <div>
2988
- <li class="never" data-hits="" data-linenumber="236">
2932
+ <li class="never" data-hits="" data-linenumber="231">
2989
2933
 
2990
2934
 
2991
2935
 
@@ -2995,7 +2939,7 @@
2995
2939
  </div>
2996
2940
 
2997
2941
  <div>
2998
- <li class="never" data-hits="" data-linenumber="237">
2942
+ <li class="never" data-hits="" data-linenumber="232">
2999
2943
 
3000
2944
 
3001
2945
 
@@ -3005,7 +2949,7 @@
3005
2949
  </div>
3006
2950
 
3007
2951
  <div>
3008
- <li class="never" data-hits="" data-linenumber="238">
2952
+ <li class="never" data-hits="" data-linenumber="233">
3009
2953
 
3010
2954
 
3011
2955
 
@@ -3015,7 +2959,7 @@
3015
2959
  </div>
3016
2960
 
3017
2961
  <div>
3018
- <li class="covered" data-hits="1" data-linenumber="239">
2962
+ <li class="covered" data-hits="1" data-linenumber="234">
3019
2963
 
3020
2964
  <span class="hits">1</span>
3021
2965
 
@@ -3027,7 +2971,7 @@
3027
2971
  </div>
3028
2972
 
3029
2973
  <div>
3030
- <li class="covered" data-hits="57" data-linenumber="240">
2974
+ <li class="covered" data-hits="57" data-linenumber="235">
3031
2975
 
3032
2976
  <span class="hits">57</span>
3033
2977
 
@@ -3039,7 +2983,7 @@
3039
2983
  </div>
3040
2984
 
3041
2985
  <div>
3042
- <li class="never" data-hits="" data-linenumber="241">
2986
+ <li class="never" data-hits="" data-linenumber="236">
3043
2987
 
3044
2988
 
3045
2989
 
@@ -3049,7 +2993,7 @@
3049
2993
  </div>
3050
2994
 
3051
2995
  <div>
3052
- <li class="skipped" data-hits="" data-linenumber="242">
2996
+ <li class="skipped" data-hits="" data-linenumber="237">
3053
2997
 
3054
2998
  <span class="hits">skipped</span>
3055
2999
 
@@ -3061,7 +3005,7 @@
3061
3005
  </div>
3062
3006
 
3063
3007
  <div>
3064
- <li class="skipped" data-hits="0" data-linenumber="243">
3008
+ <li class="skipped" data-hits="0" data-linenumber="238">
3065
3009
 
3066
3010
  <span class="hits">skipped</span>
3067
3011
 
@@ -3073,7 +3017,7 @@
3073
3017
  </div>
3074
3018
 
3075
3019
  <div>
3076
- <li class="skipped" data-hits="" data-linenumber="244">
3020
+ <li class="skipped" data-hits="" data-linenumber="239">
3077
3021
 
3078
3022
  <span class="hits">skipped</span>
3079
3023
 
@@ -3085,7 +3029,7 @@
3085
3029
  </div>
3086
3030
 
3087
3031
  <div>
3088
- <li class="never" data-hits="" data-linenumber="245">
3032
+ <li class="never" data-hits="" data-linenumber="240">
3089
3033
 
3090
3034
 
3091
3035
 
@@ -3095,7 +3039,7 @@
3095
3039
  </div>
3096
3040
 
3097
3041
  <div>
3098
- <li class="never" data-hits="" data-linenumber="246">
3042
+ <li class="never" data-hits="" data-linenumber="241">
3099
3043
 
3100
3044
 
3101
3045
 
@@ -3105,7 +3049,7 @@
3105
3049
  </div>
3106
3050
 
3107
3051
  <div>
3108
- <li class="covered" data-hits="1" data-linenumber="247">
3052
+ <li class="covered" data-hits="1" data-linenumber="242">
3109
3053
 
3110
3054
  <span class="hits">1</span>
3111
3055
 
@@ -3117,7 +3061,7 @@
3117
3061
  </div>
3118
3062
 
3119
3063
  <div>
3120
- <li class="covered" data-hits="135" data-linenumber="248">
3064
+ <li class="covered" data-hits="135" data-linenumber="243">
3121
3065
 
3122
3066
  <span class="hits">135</span>
3123
3067
 
@@ -3129,7 +3073,7 @@
3129
3073
  </div>
3130
3074
 
3131
3075
  <div>
3132
- <li class="never" data-hits="" data-linenumber="249">
3076
+ <li class="never" data-hits="" data-linenumber="244">
3133
3077
 
3134
3078
 
3135
3079
 
@@ -3139,7 +3083,7 @@
3139
3083
  </div>
3140
3084
 
3141
3085
  <div>
3142
- <li class="never" data-hits="" data-linenumber="250">
3086
+ <li class="never" data-hits="" data-linenumber="245">
3143
3087
 
3144
3088
 
3145
3089
 
@@ -3149,7 +3093,7 @@
3149
3093
  </div>
3150
3094
 
3151
3095
  <div>
3152
- <li class="covered" data-hits="1" data-linenumber="251">
3096
+ <li class="covered" data-hits="1" data-linenumber="246">
3153
3097
 
3154
3098
  <span class="hits">1</span>
3155
3099
 
@@ -3161,7 +3105,7 @@
3161
3105
  </div>
3162
3106
 
3163
3107
  <div>
3164
- <li class="covered" data-hits="80" data-linenumber="252">
3108
+ <li class="covered" data-hits="80" data-linenumber="247">
3165
3109
 
3166
3110
  <span class="hits">80</span>
3167
3111
 
@@ -3173,7 +3117,7 @@
3173
3117
  </div>
3174
3118
 
3175
3119
  <div>
3176
- <li class="never" data-hits="" data-linenumber="253">
3120
+ <li class="never" data-hits="" data-linenumber="248">
3177
3121
 
3178
3122
 
3179
3123
 
@@ -3183,7 +3127,7 @@
3183
3127
  </div>
3184
3128
 
3185
3129
  <div>
3186
- <li class="never" data-hits="" data-linenumber="254">
3130
+ <li class="never" data-hits="" data-linenumber="249">
3187
3131
 
3188
3132
 
3189
3133
 
@@ -3193,7 +3137,7 @@
3193
3137
  </div>
3194
3138
 
3195
3139
  <div>
3196
- <li class="covered" data-hits="1" data-linenumber="255">
3140
+ <li class="covered" data-hits="1" data-linenumber="250">
3197
3141
 
3198
3142
  <span class="hits">1</span>
3199
3143
 
@@ -3205,7 +3149,7 @@
3205
3149
  </div>
3206
3150
 
3207
3151
  <div>
3208
- <li class="covered" data-hits="19" data-linenumber="256">
3152
+ <li class="covered" data-hits="19" data-linenumber="251">
3209
3153
 
3210
3154
  <span class="hits">19</span>
3211
3155
 
@@ -3217,7 +3161,7 @@
3217
3161
  </div>
3218
3162
 
3219
3163
  <div>
3220
- <li class="covered" data-hits="19" data-linenumber="257">
3164
+ <li class="covered" data-hits="19" data-linenumber="252">
3221
3165
 
3222
3166
  <span class="hits">19</span>
3223
3167
 
@@ -3229,7 +3173,7 @@
3229
3173
  </div>
3230
3174
 
3231
3175
  <div>
3232
- <li class="never" data-hits="" data-linenumber="258">
3176
+ <li class="never" data-hits="" data-linenumber="253">
3233
3177
 
3234
3178
 
3235
3179
 
@@ -3239,7 +3183,7 @@
3239
3183
  </div>
3240
3184
 
3241
3185
  <div>
3242
- <li class="covered" data-hits="19" data-linenumber="259">
3186
+ <li class="covered" data-hits="19" data-linenumber="254">
3243
3187
 
3244
3188
  <span class="hits">19</span>
3245
3189
 
@@ -3251,7 +3195,7 @@
3251
3195
  </div>
3252
3196
 
3253
3197
  <div>
3254
- <li class="never" data-hits="" data-linenumber="260">
3198
+ <li class="never" data-hits="" data-linenumber="255">
3255
3199
 
3256
3200
 
3257
3201
 
@@ -3261,7 +3205,7 @@
3261
3205
  </div>
3262
3206
 
3263
3207
  <div>
3264
- <li class="never" data-hits="" data-linenumber="261">
3208
+ <li class="never" data-hits="" data-linenumber="256">
3265
3209
 
3266
3210
 
3267
3211
 
@@ -3271,7 +3215,7 @@
3271
3215
  </div>
3272
3216
 
3273
3217
  <div>
3274
- <li class="covered" data-hits="57" data-linenumber="262">
3218
+ <li class="covered" data-hits="57" data-linenumber="257">
3275
3219
 
3276
3220
  <span class="hits">57</span>
3277
3221
 
@@ -3283,7 +3227,7 @@
3283
3227
  </div>
3284
3228
 
3285
3229
  <div>
3286
- <li class="covered" data-hits="57" data-linenumber="263">
3230
+ <li class="covered" data-hits="57" data-linenumber="258">
3287
3231
 
3288
3232
  <span class="hits">57</span>
3289
3233
 
@@ -3295,7 +3239,7 @@
3295
3239
  </div>
3296
3240
 
3297
3241
  <div>
3298
- <li class="never" data-hits="" data-linenumber="264">
3242
+ <li class="never" data-hits="" data-linenumber="259">
3299
3243
 
3300
3244
 
3301
3245
 
@@ -3305,7 +3249,7 @@
3305
3249
  </div>
3306
3250
 
3307
3251
  <div>
3308
- <li class="never" data-hits="" data-linenumber="265">
3252
+ <li class="never" data-hits="" data-linenumber="260">
3309
3253
 
3310
3254
 
3311
3255
 
@@ -3315,7 +3259,7 @@
3315
3259
  </div>
3316
3260
 
3317
3261
  <div>
3318
- <li class="never" data-hits="" data-linenumber="266">
3262
+ <li class="never" data-hits="" data-linenumber="261">
3319
3263
 
3320
3264
 
3321
3265
 
@@ -3325,7 +3269,7 @@
3325
3269
  </div>
3326
3270
 
3327
3271
  <div>
3328
- <li class="never" data-hits="" data-linenumber="267">
3272
+ <li class="never" data-hits="" data-linenumber="262">
3329
3273
 
3330
3274
 
3331
3275
 
@@ -3335,7 +3279,7 @@
3335
3279
  </div>
3336
3280
 
3337
3281
  <div>
3338
- <li class="never" data-hits="" data-linenumber="268">
3282
+ <li class="never" data-hits="" data-linenumber="263">
3339
3283
 
3340
3284
 
3341
3285
 
@@ -7458,8 +7402,8 @@
7458
7402
 
7459
7403
 
7460
7404
  <div class="t-line-summary">
7461
- <b>72</b> relevant lines.
7462
- <span class="green"><b>72</b> lines covered</span> and
7405
+ <b>99</b> relevant lines.
7406
+ <span class="green"><b>99</b> lines covered</span> and
7463
7407
  <span class="red"><b>0</b> lines missed.</span>
7464
7408
  </div>
7465
7409
 
@@ -7483,14 +7427,14 @@
7483
7427
  </div>
7484
7428
 
7485
7429
  <div>
7486
- <li class="covered" data-hits="20" data-linenumber="2">
7430
+ <li class="covered" data-hits="23" data-linenumber="2">
7487
7431
 
7488
- <span class="hits">20</span>
7432
+ <span class="hits">23</span>
7489
7433
 
7490
7434
 
7491
7435
 
7492
7436
 
7493
- <code class="ruby"> subject(:connection) { described_class.new(username:, password:, totp_uri:) }</code>
7437
+ <code class="ruby"> let(:connection) { described_class.new(username:, password:, totp_uri:) }</code>
7494
7438
  </li>
7495
7439
  </div>
7496
7440
 
@@ -7505,9 +7449,9 @@
7505
7449
  </div>
7506
7450
 
7507
7451
  <div>
7508
- <li class="covered" data-hits="20" data-linenumber="4">
7452
+ <li class="covered" data-hits="23" data-linenumber="4">
7509
7453
 
7510
- <span class="hits">20</span>
7454
+ <span class="hits">23</span>
7511
7455
 
7512
7456
 
7513
7457
 
@@ -7517,9 +7461,9 @@
7517
7461
  </div>
7518
7462
 
7519
7463
  <div>
7520
- <li class="covered" data-hits="19" data-linenumber="5">
7464
+ <li class="covered" data-hits="22" data-linenumber="5">
7521
7465
 
7522
- <span class="hits">19</span>
7466
+ <span class="hits">22</span>
7523
7467
 
7524
7468
 
7525
7469
 
@@ -7529,9 +7473,9 @@
7529
7473
  </div>
7530
7474
 
7531
7475
  <div>
7532
- <li class="covered" data-hits="19" data-linenumber="6">
7476
+ <li class="covered" data-hits="22" data-linenumber="6">
7533
7477
 
7534
- <span class="hits">19</span>
7478
+ <span class="hits">22</span>
7535
7479
 
7536
7480
 
7537
7481
 
@@ -9580,6 +9524,460 @@
9580
9524
 
9581
9525
 
9582
9526
 
9527
+ <code class="ruby"></code>
9528
+ </li>
9529
+ </div>
9530
+
9531
+ <div>
9532
+ <li class="covered" data-hits="1" data-linenumber="198">
9533
+
9534
+ <span class="hits">1</span>
9535
+
9536
+
9537
+
9538
+
9539
+ <code class="ruby"> describe &#39;token refresh behavior&#39; do</code>
9540
+ </li>
9541
+ </div>
9542
+
9543
+ <div>
9544
+ <li class="covered" data-hits="4" data-linenumber="199">
9545
+
9546
+ <span class="hits">4</span>
9547
+
9548
+
9549
+
9550
+
9551
+ <code class="ruby"> subject(:response) { connection.systems }</code>
9552
+ </li>
9553
+ </div>
9554
+
9555
+ <div>
9556
+ <li class="never" data-hits="" data-linenumber="200">
9557
+
9558
+
9559
+
9560
+
9561
+ <code class="ruby"></code>
9562
+ </li>
9563
+ </div>
9564
+
9565
+ <div>
9566
+ <li class="covered" data-hits="4" data-linenumber="201">
9567
+
9568
+ <span class="hits">4</span>
9569
+
9570
+
9571
+
9572
+
9573
+ <code class="ruby"> let(:oauth_response) { instance_double(OAuth2::Response, body: [{ &#39;id&#39; =&gt; &#39;12345&#39; }].to_json) }</code>
9574
+ </li>
9575
+ </div>
9576
+
9577
+ <div>
9578
+ <li class="never" data-hits="" data-linenumber="202">
9579
+
9580
+
9581
+
9582
+
9583
+ <code class="ruby"></code>
9584
+ </li>
9585
+ </div>
9586
+
9587
+ <div>
9588
+ <li class="covered" data-hits="4" data-linenumber="203">
9589
+
9590
+ <span class="hits">4</span>
9591
+
9592
+
9593
+
9594
+
9595
+ <code class="ruby"> before { allow(connection).to receive(:authenticate!) }</code>
9596
+ </li>
9597
+ </div>
9598
+
9599
+ <div>
9600
+ <li class="never" data-hits="" data-linenumber="204">
9601
+
9602
+
9603
+
9604
+
9605
+ <code class="ruby"></code>
9606
+ </li>
9607
+ </div>
9608
+
9609
+ <div>
9610
+ <li class="covered" data-hits="1" data-linenumber="205">
9611
+
9612
+ <span class="hits">1</span>
9613
+
9614
+
9615
+
9616
+
9617
+ <code class="ruby"> it &#39;uses valid tokens directly&#39; do</code>
9618
+ </li>
9619
+ </div>
9620
+
9621
+ <div>
9622
+ <li class="covered" data-hits="1" data-linenumber="206">
9623
+
9624
+ <span class="hits">1</span>
9625
+
9626
+
9627
+
9628
+
9629
+ <code class="ruby"> token = instance_double(OAuth2::AccessToken, expired?: false)</code>
9630
+ </li>
9631
+ </div>
9632
+
9633
+ <div>
9634
+ <li class="covered" data-hits="1" data-linenumber="207">
9635
+
9636
+ <span class="hits">1</span>
9637
+
9638
+
9639
+
9640
+
9641
+ <code class="ruby"> allow(token).to receive(:get).and_return(oauth_response)</code>
9642
+ </li>
9643
+ </div>
9644
+
9645
+ <div>
9646
+ <li class="covered" data-hits="1" data-linenumber="208">
9647
+
9648
+ <span class="hits">1</span>
9649
+
9650
+
9651
+
9652
+
9653
+ <code class="ruby"> connection.instance_variable_set(:@oauth_token, token)</code>
9654
+ </li>
9655
+ </div>
9656
+
9657
+ <div>
9658
+ <li class="never" data-hits="" data-linenumber="209">
9659
+
9660
+
9661
+
9662
+
9663
+ <code class="ruby"></code>
9664
+ </li>
9665
+ </div>
9666
+
9667
+ <div>
9668
+ <li class="covered" data-hits="1" data-linenumber="210">
9669
+
9670
+ <span class="hits">1</span>
9671
+
9672
+
9673
+
9674
+
9675
+ <code class="ruby"> expect(response).to be_a(Array)</code>
9676
+ </li>
9677
+ </div>
9678
+
9679
+ <div>
9680
+ <li class="covered" data-hits="1" data-linenumber="211">
9681
+
9682
+ <span class="hits">1</span>
9683
+
9684
+
9685
+
9686
+
9687
+ <code class="ruby"> expect(connection).not_to have_received(:authenticate!)</code>
9688
+ </li>
9689
+ </div>
9690
+
9691
+ <div>
9692
+ <li class="never" data-hits="" data-linenumber="212">
9693
+
9694
+
9695
+
9696
+
9697
+ <code class="ruby"> end</code>
9698
+ </li>
9699
+ </div>
9700
+
9701
+ <div>
9702
+ <li class="never" data-hits="" data-linenumber="213">
9703
+
9704
+
9705
+
9706
+
9707
+ <code class="ruby"></code>
9708
+ </li>
9709
+ </div>
9710
+
9711
+ <div>
9712
+ <li class="covered" data-hits="1" data-linenumber="214">
9713
+
9714
+ <span class="hits">1</span>
9715
+
9716
+
9717
+
9718
+
9719
+ <code class="ruby"> it &#39;refreshes expired tokens successfully&#39; do</code>
9720
+ </li>
9721
+ </div>
9722
+
9723
+ <div>
9724
+ <li class="covered" data-hits="1" data-linenumber="215">
9725
+
9726
+ <span class="hits">1</span>
9727
+
9728
+
9729
+
9730
+
9731
+ <code class="ruby"> old_token = instance_double(OAuth2::AccessToken, expired?: true)</code>
9732
+ </li>
9733
+ </div>
9734
+
9735
+ <div>
9736
+ <li class="covered" data-hits="1" data-linenumber="216">
9737
+
9738
+ <span class="hits">1</span>
9739
+
9740
+
9741
+
9742
+
9743
+ <code class="ruby"> new_token = instance_double(OAuth2::AccessToken)</code>
9744
+ </li>
9745
+ </div>
9746
+
9747
+ <div>
9748
+ <li class="covered" data-hits="1" data-linenumber="217">
9749
+
9750
+ <span class="hits">1</span>
9751
+
9752
+
9753
+
9754
+
9755
+ <code class="ruby"> allow(old_token).to receive(:refresh!).and_return(new_token)</code>
9756
+ </li>
9757
+ </div>
9758
+
9759
+ <div>
9760
+ <li class="covered" data-hits="1" data-linenumber="218">
9761
+
9762
+ <span class="hits">1</span>
9763
+
9764
+
9765
+
9766
+
9767
+ <code class="ruby"> allow(new_token).to receive(:get).and_return(oauth_response)</code>
9768
+ </li>
9769
+ </div>
9770
+
9771
+ <div>
9772
+ <li class="covered" data-hits="1" data-linenumber="219">
9773
+
9774
+ <span class="hits">1</span>
9775
+
9776
+
9777
+
9778
+
9779
+ <code class="ruby"> connection.instance_variable_set(:@oauth_token, old_token)</code>
9780
+ </li>
9781
+ </div>
9782
+
9783
+ <div>
9784
+ <li class="never" data-hits="" data-linenumber="220">
9785
+
9786
+
9787
+
9788
+
9789
+ <code class="ruby"></code>
9790
+ </li>
9791
+ </div>
9792
+
9793
+ <div>
9794
+ <li class="covered" data-hits="1" data-linenumber="221">
9795
+
9796
+ <span class="hits">1</span>
9797
+
9798
+
9799
+
9800
+
9801
+ <code class="ruby"> expect(response).to be_a(Array)</code>
9802
+ </li>
9803
+ </div>
9804
+
9805
+ <div>
9806
+ <li class="covered" data-hits="1" data-linenumber="222">
9807
+
9808
+ <span class="hits">1</span>
9809
+
9810
+
9811
+
9812
+
9813
+ <code class="ruby"> expect(connection).not_to have_received(:authenticate!)</code>
9814
+ </li>
9815
+ </div>
9816
+
9817
+ <div>
9818
+ <li class="never" data-hits="" data-linenumber="223">
9819
+
9820
+
9821
+
9822
+
9823
+ <code class="ruby"> end</code>
9824
+ </li>
9825
+ </div>
9826
+
9827
+ <div>
9828
+ <li class="never" data-hits="" data-linenumber="224">
9829
+
9830
+
9831
+
9832
+
9833
+ <code class="ruby"></code>
9834
+ </li>
9835
+ </div>
9836
+
9837
+ <div>
9838
+ <li class="covered" data-hits="1" data-linenumber="225">
9839
+
9840
+ <span class="hits">1</span>
9841
+
9842
+
9843
+
9844
+
9845
+ <code class="ruby"> it &#39;re-authenticates when token refresh fails&#39; do</code>
9846
+ </li>
9847
+ </div>
9848
+
9849
+ <div>
9850
+ <li class="covered" data-hits="1" data-linenumber="226">
9851
+
9852
+ <span class="hits">1</span>
9853
+
9854
+
9855
+
9856
+
9857
+ <code class="ruby"> old_token = instance_double(OAuth2::AccessToken, expired?: true)</code>
9858
+ </li>
9859
+ </div>
9860
+
9861
+ <div>
9862
+ <li class="covered" data-hits="1" data-linenumber="227">
9863
+
9864
+ <span class="hits">1</span>
9865
+
9866
+
9867
+
9868
+
9869
+ <code class="ruby"> new_token = instance_double(OAuth2::AccessToken)</code>
9870
+ </li>
9871
+ </div>
9872
+
9873
+ <div>
9874
+ <li class="covered" data-hits="1" data-linenumber="228">
9875
+
9876
+ <span class="hits">1</span>
9877
+
9878
+
9879
+
9880
+
9881
+ <code class="ruby"> allow(old_token).to receive(:refresh!).and_raise(OAuth2::Error.new(&#39;invalid_grant&#39;))</code>
9882
+ </li>
9883
+ </div>
9884
+
9885
+ <div>
9886
+ <li class="covered" data-hits="2" data-linenumber="229">
9887
+
9888
+ <span class="hits">2</span>
9889
+
9890
+
9891
+
9892
+
9893
+ <code class="ruby"> allow(connection).to receive(:authenticate!) { connection.instance_variable_set(:@oauth_token, new_token) }</code>
9894
+ </li>
9895
+ </div>
9896
+
9897
+ <div>
9898
+ <li class="covered" data-hits="1" data-linenumber="230">
9899
+
9900
+ <span class="hits">1</span>
9901
+
9902
+
9903
+
9904
+
9905
+ <code class="ruby"> allow(new_token).to receive(:get).and_return(oauth_response)</code>
9906
+ </li>
9907
+ </div>
9908
+
9909
+ <div>
9910
+ <li class="covered" data-hits="1" data-linenumber="231">
9911
+
9912
+ <span class="hits">1</span>
9913
+
9914
+
9915
+
9916
+
9917
+ <code class="ruby"> connection.instance_variable_set(:@oauth_token, old_token)</code>
9918
+ </li>
9919
+ </div>
9920
+
9921
+ <div>
9922
+ <li class="never" data-hits="" data-linenumber="232">
9923
+
9924
+
9925
+
9926
+
9927
+ <code class="ruby"></code>
9928
+ </li>
9929
+ </div>
9930
+
9931
+ <div>
9932
+ <li class="covered" data-hits="1" data-linenumber="233">
9933
+
9934
+ <span class="hits">1</span>
9935
+
9936
+
9937
+
9938
+
9939
+ <code class="ruby"> expect(response).to be_a(Array)</code>
9940
+ </li>
9941
+ </div>
9942
+
9943
+ <div>
9944
+ <li class="covered" data-hits="1" data-linenumber="234">
9945
+
9946
+ <span class="hits">1</span>
9947
+
9948
+
9949
+
9950
+
9951
+ <code class="ruby"> expect(connection).to have_received(:authenticate!)</code>
9952
+ </li>
9953
+ </div>
9954
+
9955
+ <div>
9956
+ <li class="never" data-hits="" data-linenumber="235">
9957
+
9958
+
9959
+
9960
+
9961
+ <code class="ruby"> end</code>
9962
+ </li>
9963
+ </div>
9964
+
9965
+ <div>
9966
+ <li class="never" data-hits="" data-linenumber="236">
9967
+
9968
+
9969
+
9970
+
9971
+ <code class="ruby"> end</code>
9972
+ </li>
9973
+ </div>
9974
+
9975
+ <div>
9976
+ <li class="never" data-hits="" data-linenumber="237">
9977
+
9978
+
9979
+
9980
+
9583
9981
  <code class="ruby">end</code>
9584
9982
  </li>
9585
9983
  </div>
@@ -16382,9 +16780,9 @@
16382
16780
  </div>
16383
16781
 
16384
16782
  <div>
16385
- <li class="covered" data-hits="68" data-linenumber="217">
16783
+ <li class="covered" data-hits="71" data-linenumber="217">
16386
16784
 
16387
- <span class="hits">68</span>
16785
+ <span class="hits">71</span>
16388
16786
 
16389
16787
 
16390
16788