storyblok 3.1.0 → 3.3.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 (37) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/Gemfile +1 -1
  4. data/LICENSE +21 -0
  5. data/README.md +5 -1
  6. data/lib/storyblok/client.rb +26 -6
  7. data/lib/storyblok/version.rb +1 -1
  8. metadata +4 -32
  9. data/Gemfile.lock +0 -128
  10. data/coverage/.last_run.json +0 -5
  11. data/coverage/.resultset.json +0 -547
  12. data/coverage/.resultset.json.lock +0 -0
  13. data/coverage/assets/0.10.2/application.css +0 -799
  14. data/coverage/assets/0.10.2/application.js +0 -1707
  15. data/coverage/assets/0.10.2/colorbox/border.png +0 -0
  16. data/coverage/assets/0.10.2/colorbox/controls.png +0 -0
  17. data/coverage/assets/0.10.2/colorbox/loading.gif +0 -0
  18. data/coverage/assets/0.10.2/colorbox/loading_background.png +0 -0
  19. data/coverage/assets/0.10.2/favicon_green.png +0 -0
  20. data/coverage/assets/0.10.2/favicon_red.png +0 -0
  21. data/coverage/assets/0.10.2/favicon_yellow.png +0 -0
  22. data/coverage/assets/0.10.2/loading.gif +0 -0
  23. data/coverage/assets/0.10.2/magnify.png +0 -0
  24. data/coverage/assets/0.10.2/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  25. data/coverage/assets/0.10.2/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  26. data/coverage/assets/0.10.2/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  27. data/coverage/assets/0.10.2/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  28. data/coverage/assets/0.10.2/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  29. data/coverage/assets/0.10.2/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  30. data/coverage/assets/0.10.2/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  31. data/coverage/assets/0.10.2/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  32. data/coverage/assets/0.10.2/smoothness/images/ui-icons_222222_256x240.png +0 -0
  33. data/coverage/assets/0.10.2/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  34. data/coverage/assets/0.10.2/smoothness/images/ui-icons_454545_256x240.png +0 -0
  35. data/coverage/assets/0.10.2/smoothness/images/ui-icons_888888_256x240.png +0 -0
  36. data/coverage/assets/0.10.2/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  37. data/coverage/index.html +0 -3380
data/coverage/index.html DELETED
@@ -1,3380 +0,0 @@
1
- <!DOCTYPE html>
2
- <html xmlns='http://www.w3.org/1999/xhtml'>
3
- <head>
4
- <title>Code coverage for Storyblok-ruby</title>
5
- <meta http-equiv="content-type" content="text/html; charset=utf-8" />
6
- <script src='./assets/0.10.2/application.js' type='text/javascript'></script>
7
- <link href='./assets/0.10.2/application.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
8
- <link rel="shortcut icon" type="image/png" href="./assets/0.10.2/favicon_red.png" />
9
- <link rel="icon" type="image/png" href="./assets/0.10.2/favicon.png" />
10
- </head>
11
-
12
- <body>
13
- <div id="loading">
14
- <img src="./assets/0.10.2/loading.gif" alt="loading"/>
15
- </div>
16
- <div id="wrapper" style="display:none;">
17
- <div class="timestamp">Generated <abbr class="timeago" title="2022-08-02T16:20:40-03:00">2022-08-02T16:20:40-03:00</abbr></div>
18
- <ul class="group_tabs"></ul>
19
-
20
- <div id="content">
21
- <div class="file_list_container" id="AllFiles">
22
- <h2>
23
- <span class="group_name">All Files</span>
24
- (<span class="covered_percent"><span class="red">53.06%</span></span>
25
- covered at
26
- <span class="covered_strength">
27
- <span class="red">
28
- 0.56
29
- </span>
30
- </span> hits/line)
31
- </h2>
32
- <a name="AllFiles"></a>
33
- <div>
34
- <b>4</b> files in total.
35
- <b>245</b> relevant lines.
36
- <span class="green"><b>130</b> lines covered</span> and
37
- <span class="red"><b>115</b> lines missed </span>
38
- </div>
39
- <table class="file_list">
40
- <thead>
41
- <tr>
42
- <th>File</th>
43
- <th>% covered</th>
44
- <th>Lines</th>
45
- <th>Relevant Lines</th>
46
- <th>Lines covered</th>
47
- <th>Lines missed</th>
48
- <th>Avg. Hits / Line</th>
49
- </tr>
50
- </thead>
51
- <tbody>
52
-
53
- <tr>
54
- <td class="strong"><a href="#c4f7010c4dfc332cd94848fce4de393e534e0e6b" class="src_link" title="lib/storyblok/cache/redis.rb">lib/storyblok/cache/redis.rb</a></td>
55
- <td class="red strong">34.62 %</td>
56
- <td>52</td>
57
- <td>26</td>
58
- <td>9</td>
59
- <td>17</td>
60
- <td>0.3</td>
61
- </tr>
62
-
63
- <tr>
64
- <td class="strong"><a href="#32ca8f0400eeeae2bfd404aeb46c4a4067976781" class="src_link" title="lib/storyblok/client.rb">lib/storyblok/client.rb</a></td>
65
- <td class="red strong">55.62 %</td>
66
- <td>401</td>
67
- <td>178</td>
68
- <td>99</td>
69
- <td>79</td>
70
- <td>0.6</td>
71
- </tr>
72
-
73
- <tr>
74
- <td class="strong"><a href="#3846dec82cee306c736ccd6cc6381035e7a9b1cc" class="src_link" title="lib/storyblok/links.rb">lib/storyblok/links.rb</a></td>
75
- <td class="red strong">27.27 %</td>
76
- <td>41</td>
77
- <td>22</td>
78
- <td>6</td>
79
- <td>16</td>
80
- <td>0.3</td>
81
- </tr>
82
-
83
- <tr>
84
- <td class="strong"><a href="#70b299798924fab373f866c247e8f20b4f7c2747" class="src_link" title="lib/storyblok/request.rb">lib/storyblok/request.rb</a></td>
85
- <td class="yellow strong">84.21 %</td>
86
- <td>38</td>
87
- <td>19</td>
88
- <td>16</td>
89
- <td>3</td>
90
- <td>0.8</td>
91
- </tr>
92
-
93
- </tbody>
94
- </table>
95
- </div>
96
-
97
-
98
-
99
- </div>
100
-
101
- <div id="footer">
102
- Generated by <a href="http://github.com/colszowka/simplecov">simplecov</a> v0.17.1
103
- and simplecov-html v0.10.2<br/>
104
- using RSpec
105
- </div>
106
-
107
- <div class="source_files">
108
-
109
- <div class="source_table" id="c4f7010c4dfc332cd94848fce4de393e534e0e6b">
110
- <div class="header">
111
- <h3>lib/storyblok/cache/redis.rb</h3>
112
- <h4><span class="red">34.62 %</span> covered</h4>
113
- <div>
114
- <b>26</b> relevant lines.
115
- <span class="green"><b>9</b> lines covered</span> and
116
- <span class="red"><b>17</b> lines missed.</span>
117
- </div>
118
- </div>
119
-
120
- <pre>
121
- <ol>
122
-
123
- <li class="covered" data-hits="1" data-linenumber="1">
124
- <span class="hits">1</span>
125
-
126
- <code class="ruby">module Storyblok</code>
127
- </li>
128
-
129
- <li class="covered" data-hits="1" data-linenumber="2">
130
- <span class="hits">1</span>
131
-
132
- <code class="ruby"> module Cache</code>
133
- </li>
134
-
135
- <li class="covered" data-hits="1" data-linenumber="3">
136
- <span class="hits">1</span>
137
-
138
- <code class="ruby"> class Redis</code>
139
- </li>
140
-
141
- <li class="never" data-hits="" data-linenumber="4">
142
-
143
-
144
- <code class="ruby"> DEFAULT_CONFIGURATION = {</code>
145
- </li>
146
-
147
- <li class="covered" data-hits="1" data-linenumber="5">
148
- <span class="hits">1</span>
149
-
150
- <code class="ruby"> ttl: 60 * 60 * 24</code>
151
- </li>
152
-
153
- <li class="never" data-hits="" data-linenumber="6">
154
-
155
-
156
- <code class="ruby"> }.freeze</code>
157
- </li>
158
-
159
- <li class="never" data-hits="" data-linenumber="7">
160
-
161
-
162
- <code class="ruby"></code>
163
- </li>
164
-
165
- <li class="covered" data-hits="1" data-linenumber="8">
166
- <span class="hits">1</span>
167
-
168
- <code class="ruby"> attr_reader :redis</code>
169
- </li>
170
-
171
- <li class="never" data-hits="" data-linenumber="9">
172
-
173
-
174
- <code class="ruby"></code>
175
- </li>
176
-
177
- <li class="covered" data-hits="1" data-linenumber="10">
178
- <span class="hits">1</span>
179
-
180
- <code class="ruby"> def initialize(*args)</code>
181
- </li>
182
-
183
- <li class="missed" data-hits="0" data-linenumber="11">
184
-
185
-
186
- <code class="ruby"> options = args.last.is_a?(::Hash) ? args.pop : {}</code>
187
- </li>
188
-
189
- <li class="never" data-hits="" data-linenumber="12">
190
-
191
-
192
- <code class="ruby"></code>
193
- </li>
194
-
195
- <li class="missed" data-hits="0" data-linenumber="13">
196
-
197
-
198
- <code class="ruby"> @redis = options.delete(:redis) || begin</code>
199
- </li>
200
-
201
- <li class="missed" data-hits="0" data-linenumber="14">
202
-
203
-
204
- <code class="ruby"> if defined?(::Redis)</code>
205
- </li>
206
-
207
- <li class="missed" data-hits="0" data-linenumber="15">
208
-
209
-
210
- <code class="ruby"> ::Redis.current</code>
211
- </li>
212
-
213
- <li class="never" data-hits="" data-linenumber="16">
214
-
215
-
216
- <code class="ruby"> else</code>
217
- </li>
218
-
219
- <li class="missed" data-hits="0" data-linenumber="17">
220
-
221
-
222
- <code class="ruby"> raise &quot;Redis.current could not be found. Supply :redis option or make sure Redis.current is available.&quot;</code>
223
- </li>
224
-
225
- <li class="never" data-hits="" data-linenumber="18">
226
-
227
-
228
- <code class="ruby"> end</code>
229
- </li>
230
-
231
- <li class="never" data-hits="" data-linenumber="19">
232
-
233
-
234
- <code class="ruby"> end</code>
235
- </li>
236
-
237
- <li class="never" data-hits="" data-linenumber="20">
238
-
239
-
240
- <code class="ruby"></code>
241
- </li>
242
-
243
- <li class="missed" data-hits="0" data-linenumber="21">
244
-
245
-
246
- <code class="ruby"> @options = DEFAULT_CONFIGURATION.merge(options)</code>
247
- </li>
248
-
249
- <li class="never" data-hits="" data-linenumber="22">
250
-
251
-
252
- <code class="ruby"> end</code>
253
- </li>
254
-
255
- <li class="never" data-hits="" data-linenumber="23">
256
-
257
-
258
- <code class="ruby"></code>
259
- </li>
260
-
261
- <li class="covered" data-hits="1" data-linenumber="24">
262
- <span class="hits">1</span>
263
-
264
- <code class="ruby"> def cache(key, expire = nil)</code>
265
- </li>
266
-
267
- <li class="missed" data-hits="0" data-linenumber="25">
268
-
269
-
270
- <code class="ruby"> if expire == 0</code>
271
- </li>
272
-
273
- <li class="missed" data-hits="0" data-linenumber="26">
274
-
275
-
276
- <code class="ruby"> return yield(self)</code>
277
- </li>
278
-
279
- <li class="never" data-hits="" data-linenumber="27">
280
-
281
-
282
- <code class="ruby"> end</code>
283
- </li>
284
-
285
- <li class="never" data-hits="" data-linenumber="28">
286
-
287
-
288
- <code class="ruby"></code>
289
- </li>
290
-
291
- <li class="missed" data-hits="0" data-linenumber="29">
292
-
293
-
294
- <code class="ruby"> expire ||= @options[:ttl]</code>
295
- </li>
296
-
297
- <li class="never" data-hits="" data-linenumber="30">
298
-
299
-
300
- <code class="ruby"></code>
301
- </li>
302
-
303
- <li class="missed" data-hits="0" data-linenumber="31">
304
-
305
-
306
- <code class="ruby"> if (value = get(key)).nil?</code>
307
- </li>
308
-
309
- <li class="missed" data-hits="0" data-linenumber="32">
310
-
311
-
312
- <code class="ruby"> value = yield(self)</code>
313
- </li>
314
-
315
- <li class="missed" data-hits="0" data-linenumber="33">
316
-
317
-
318
- <code class="ruby"> set(key, value, expire)</code>
319
- </li>
320
-
321
- <li class="never" data-hits="" data-linenumber="34">
322
-
323
-
324
- <code class="ruby"> end</code>
325
- </li>
326
-
327
- <li class="never" data-hits="" data-linenumber="35">
328
-
329
-
330
- <code class="ruby"></code>
331
- </li>
332
-
333
- <li class="missed" data-hits="0" data-linenumber="36">
334
-
335
-
336
- <code class="ruby"> value</code>
337
- </li>
338
-
339
- <li class="never" data-hits="" data-linenumber="37">
340
-
341
-
342
- <code class="ruby"> end</code>
343
- </li>
344
-
345
- <li class="never" data-hits="" data-linenumber="38">
346
-
347
-
348
- <code class="ruby"></code>
349
- </li>
350
-
351
- <li class="covered" data-hits="1" data-linenumber="39">
352
- <span class="hits">1</span>
353
-
354
- <code class="ruby"> def get(key)</code>
355
- </li>
356
-
357
- <li class="missed" data-hits="0" data-linenumber="40">
358
-
359
-
360
- <code class="ruby"> @redis.get(key)</code>
361
- </li>
362
-
363
- <li class="never" data-hits="" data-linenumber="41">
364
-
365
-
366
- <code class="ruby"> end</code>
367
- </li>
368
-
369
- <li class="never" data-hits="" data-linenumber="42">
370
-
371
-
372
- <code class="ruby"></code>
373
- </li>
374
-
375
- <li class="covered" data-hits="1" data-linenumber="43">
376
- <span class="hits">1</span>
377
-
378
- <code class="ruby"> def set(key, value, expire = false)</code>
379
- </li>
380
-
381
- <li class="missed" data-hits="0" data-linenumber="44">
382
-
383
-
384
- <code class="ruby"> if expire</code>
385
- </li>
386
-
387
- <li class="missed" data-hits="0" data-linenumber="45">
388
-
389
-
390
- <code class="ruby"> @redis.setex(key, expire, value)</code>
391
- </li>
392
-
393
- <li class="never" data-hits="" data-linenumber="46">
394
-
395
-
396
- <code class="ruby"> else</code>
397
- </li>
398
-
399
- <li class="missed" data-hits="0" data-linenumber="47">
400
-
401
-
402
- <code class="ruby"> @redis.set(key, value)</code>
403
- </li>
404
-
405
- <li class="never" data-hits="" data-linenumber="48">
406
-
407
-
408
- <code class="ruby"> end</code>
409
- </li>
410
-
411
- <li class="never" data-hits="" data-linenumber="49">
412
-
413
-
414
- <code class="ruby"> end</code>
415
- </li>
416
-
417
- <li class="never" data-hits="" data-linenumber="50">
418
-
419
-
420
- <code class="ruby"> end</code>
421
- </li>
422
-
423
- <li class="never" data-hits="" data-linenumber="51">
424
-
425
-
426
- <code class="ruby"> end</code>
427
- </li>
428
-
429
- <li class="never" data-hits="" data-linenumber="52">
430
-
431
-
432
- <code class="ruby">end</code>
433
- </li>
434
-
435
- </ol>
436
- </pre>
437
- </div>
438
-
439
-
440
- <div class="source_table" id="32ca8f0400eeeae2bfd404aeb46c4a4067976781">
441
- <div class="header">
442
- <h3>lib/storyblok/client.rb</h3>
443
- <h4><span class="red">55.62 %</span> covered</h4>
444
- <div>
445
- <b>178</b> relevant lines.
446
- <span class="green"><b>99</b> lines covered</span> and
447
- <span class="red"><b>79</b> lines missed.</span>
448
- </div>
449
- </div>
450
-
451
- <pre>
452
- <ol>
453
-
454
- <li class="covered" data-hits="1" data-linenumber="1">
455
- <span class="hits">1</span>
456
-
457
- <code class="ruby">require_relative &#39;request&#39;</code>
458
- </li>
459
-
460
- <li class="covered" data-hits="1" data-linenumber="2">
461
- <span class="hits">1</span>
462
-
463
- <code class="ruby">require_relative &#39;links&#39;</code>
464
- </li>
465
-
466
- <li class="never" data-hits="" data-linenumber="3">
467
-
468
-
469
- <code class="ruby"></code>
470
- </li>
471
-
472
- <li class="covered" data-hits="1" data-linenumber="4">
473
- <span class="hits">1</span>
474
-
475
- <code class="ruby">require &#39;storyblok/richtext&#39;</code>
476
- </li>
477
-
478
- <li class="covered" data-hits="1" data-linenumber="5">
479
- <span class="hits">1</span>
480
-
481
- <code class="ruby">require &#39;rest-client&#39;</code>
482
- </li>
483
-
484
- <li class="covered" data-hits="1" data-linenumber="6">
485
- <span class="hits">1</span>
486
-
487
- <code class="ruby">require &#39;logger&#39;</code>
488
- </li>
489
-
490
- <li class="covered" data-hits="1" data-linenumber="7">
491
- <span class="hits">1</span>
492
-
493
- <code class="ruby">require &#39;base64&#39;</code>
494
- </li>
495
-
496
- <li class="covered" data-hits="1" data-linenumber="8">
497
- <span class="hits">1</span>
498
-
499
- <code class="ruby">require &#39;json&#39;</code>
500
- </li>
501
-
502
- <li class="never" data-hits="" data-linenumber="9">
503
-
504
-
505
- <code class="ruby"></code>
506
- </li>
507
-
508
- <li class="covered" data-hits="1" data-linenumber="10">
509
- <span class="hits">1</span>
510
-
511
- <code class="ruby">module Storyblok</code>
512
- </li>
513
-
514
- <li class="covered" data-hits="1" data-linenumber="11">
515
- <span class="hits">1</span>
516
-
517
- <code class="ruby"> class Client</code>
518
- </li>
519
-
520
- <li class="never" data-hits="" data-linenumber="12">
521
-
522
-
523
- <code class="ruby"> DEFAULT_CONFIGURATION = {</code>
524
- </li>
525
-
526
- <li class="covered" data-hits="1" data-linenumber="13">
527
- <span class="hits">1</span>
528
-
529
- <code class="ruby"> secure: true,</code>
530
- </li>
531
-
532
- <li class="never" data-hits="" data-linenumber="14">
533
-
534
-
535
- <code class="ruby"> api_version: 2,</code>
536
- </li>
537
-
538
- <li class="never" data-hits="" data-linenumber="15">
539
-
540
-
541
- <code class="ruby"> logger: false,</code>
542
- </li>
543
-
544
- <li class="never" data-hits="" data-linenumber="16">
545
-
546
-
547
- <code class="ruby"> log_level: Logger::INFO,</code>
548
- </li>
549
-
550
- <li class="never" data-hits="" data-linenumber="17">
551
-
552
-
553
- <code class="ruby"> version: &#39;draft&#39;,</code>
554
- </li>
555
-
556
- <li class="skipped" data-hits="" data-linenumber="18">
557
-
558
- <span class="hits">skipped</span>
559
- <code class="ruby"> # :nocov:</code>
560
- </li>
561
-
562
- <li class="skipped" data-hits="0" data-linenumber="19">
563
-
564
- <span class="hits">skipped</span>
565
- <code class="ruby"> component_resolver: -&gt;(component, data) { &#39;&#39; },</code>
566
- </li>
567
-
568
- <li class="skipped" data-hits="" data-linenumber="20">
569
-
570
- <span class="hits">skipped</span>
571
- <code class="ruby"> # :nocov:</code>
572
- </li>
573
-
574
- <li class="never" data-hits="" data-linenumber="21">
575
-
576
-
577
- <code class="ruby"> cache_version: Time.now.to_i,</code>
578
- </li>
579
-
580
- <li class="never" data-hits="" data-linenumber="22">
581
-
582
-
583
- <code class="ruby"> cache: nil</code>
584
- </li>
585
-
586
- <li class="never" data-hits="" data-linenumber="23">
587
-
588
-
589
- <code class="ruby"> }</code>
590
- </li>
591
-
592
- <li class="never" data-hits="" data-linenumber="24">
593
-
594
-
595
- <code class="ruby"></code>
596
- </li>
597
-
598
- <li class="covered" data-hits="1" data-linenumber="25">
599
- <span class="hits">1</span>
600
-
601
- <code class="ruby"> attr_reader :configuration, :logger</code>
602
- </li>
603
-
604
- <li class="covered" data-hits="1" data-linenumber="26">
605
- <span class="hits">1</span>
606
-
607
- <code class="ruby"> attr_accessor :cache_version</code>
608
- </li>
609
-
610
- <li class="never" data-hits="" data-linenumber="27">
611
-
612
-
613
- <code class="ruby"></code>
614
- </li>
615
-
616
- <li class="never" data-hits="" data-linenumber="28">
617
-
618
-
619
- <code class="ruby"> # @param [Hash] given_configuration</code>
620
- </li>
621
-
622
- <li class="never" data-hits="" data-linenumber="29">
623
-
624
-
625
- <code class="ruby"> # @option given_configuration [String] :token Required if oauth_token is not set</code>
626
- </li>
627
-
628
- <li class="never" data-hits="" data-linenumber="30">
629
-
630
-
631
- <code class="ruby"> # @option given_configuration [String] :oauth_token Required if token is not set</code>
632
- </li>
633
-
634
- <li class="never" data-hits="" data-linenumber="31">
635
-
636
-
637
- <code class="ruby"> # @option given_configuration [String] :api_url</code>
638
- </li>
639
-
640
- <li class="never" data-hits="" data-linenumber="32">
641
-
642
-
643
- <code class="ruby"> # @option given_configuration [Proc] :component_resolver</code>
644
- </li>
645
-
646
- <li class="never" data-hits="" data-linenumber="33">
647
-
648
-
649
- <code class="ruby"> # @option given_configuration [Number] :api_version</code>
650
- </li>
651
-
652
- <li class="never" data-hits="" data-linenumber="34">
653
-
654
-
655
- <code class="ruby"> # @option given_configuration [String] :api_region</code>
656
- </li>
657
-
658
- <li class="never" data-hits="" data-linenumber="35">
659
-
660
-
661
- <code class="ruby"> # @option given_configuration [false, ::Logger] :logger</code>
662
- </li>
663
-
664
- <li class="never" data-hits="" data-linenumber="36">
665
-
666
-
667
- <code class="ruby"> # @option given_configuration [::Logger::DEBUG, ::Logger::INFO, ::Logger::WARN, ::Logger::ERROR] :log_level</code>
668
- </li>
669
-
670
- <li class="covered" data-hits="1" data-linenumber="37">
671
- <span class="hits">1</span>
672
-
673
- <code class="ruby"> def initialize(given_configuration = {})</code>
674
- </li>
675
-
676
- <li class="covered" data-hits="1" data-linenumber="38">
677
- <span class="hits">1</span>
678
-
679
- <code class="ruby"> @configuration = default_configuration.merge(given_configuration)</code>
680
- </li>
681
-
682
- <li class="covered" data-hits="1" data-linenumber="39">
683
- <span class="hits">1</span>
684
-
685
- <code class="ruby"> @cache_version = &#39;0&#39;</code>
686
- </li>
687
-
688
- <li class="covered" data-hits="1" data-linenumber="40">
689
- <span class="hits">1</span>
690
-
691
- <code class="ruby"> validate_configuration!</code>
692
- </li>
693
-
694
- <li class="never" data-hits="" data-linenumber="41">
695
-
696
-
697
- <code class="ruby"></code>
698
- </li>
699
-
700
- <li class="covered" data-hits="1" data-linenumber="42">
701
- <span class="hits">1</span>
702
-
703
- <code class="ruby"> if configuration[:oauth_token]</code>
704
- </li>
705
-
706
- <li class="missed" data-hits="0" data-linenumber="43">
707
-
708
-
709
- <code class="ruby"> @rest_client = RestClient::Resource.new(base_url, :headers =&gt; {</code>
710
- </li>
711
-
712
- <li class="never" data-hits="" data-linenumber="44">
713
-
714
-
715
- <code class="ruby"> :authorization =&gt; configuration[:oauth_token]</code>
716
- </li>
717
-
718
- <li class="never" data-hits="" data-linenumber="45">
719
-
720
-
721
- <code class="ruby"> })</code>
722
- </li>
723
-
724
- <li class="never" data-hits="" data-linenumber="46">
725
-
726
-
727
- <code class="ruby"> end</code>
728
- </li>
729
-
730
- <li class="never" data-hits="" data-linenumber="47">
731
-
732
-
733
- <code class="ruby"></code>
734
- </li>
735
-
736
- <li class="covered" data-hits="1" data-linenumber="48">
737
- <span class="hits">1</span>
738
-
739
- <code class="ruby"> @renderer = Richtext::HtmlRenderer.new</code>
740
- </li>
741
-
742
- <li class="covered" data-hits="1" data-linenumber="49">
743
- <span class="hits">1</span>
744
-
745
- <code class="ruby"> @renderer.set_component_resolver(@configuration[:component_resolver])</code>
746
- </li>
747
-
748
- <li class="covered" data-hits="1" data-linenumber="50">
749
- <span class="hits">1</span>
750
-
751
- <code class="ruby"> setup_logger</code>
752
- </li>
753
-
754
- <li class="never" data-hits="" data-linenumber="51">
755
-
756
-
757
- <code class="ruby"> end</code>
758
- </li>
759
-
760
- <li class="never" data-hits="" data-linenumber="52">
761
-
762
-
763
- <code class="ruby"></code>
764
- </li>
765
-
766
- <li class="never" data-hits="" data-linenumber="53">
767
-
768
-
769
- <code class="ruby"> # Dynamic cdn endpoint call</code>
770
- </li>
771
-
772
- <li class="never" data-hits="" data-linenumber="54">
773
-
774
-
775
- <code class="ruby"> #</code>
776
- </li>
777
-
778
- <li class="never" data-hits="" data-linenumber="55">
779
-
780
-
781
- <code class="ruby"> # @param [String] id</code>
782
- </li>
783
-
784
- <li class="never" data-hits="" data-linenumber="56">
785
-
786
-
787
- <code class="ruby"> # @param [Hash] query</code>
788
- </li>
789
-
790
- <li class="never" data-hits="" data-linenumber="57">
791
-
792
-
793
- <code class="ruby"> #</code>
794
- </li>
795
-
796
- <li class="never" data-hits="" data-linenumber="58">
797
-
798
-
799
- <code class="ruby"> # @return [Hash]</code>
800
- </li>
801
-
802
- <li class="covered" data-hits="1" data-linenumber="59">
803
- <span class="hits">1</span>
804
-
805
- <code class="ruby"> def get_from_cdn(slug, query = {}, id = nil)</code>
806
- </li>
807
-
808
- <li class="missed" data-hits="0" data-linenumber="60">
809
-
810
-
811
- <code class="ruby"> Request.new(self, &quot;/cdn/#{slug}&quot;, query, id).get</code>
812
- </li>
813
-
814
- <li class="never" data-hits="" data-linenumber="61">
815
-
816
-
817
- <code class="ruby"> end</code>
818
- </li>
819
-
820
- <li class="never" data-hits="" data-linenumber="62">
821
-
822
-
823
- <code class="ruby"></code>
824
- </li>
825
-
826
- <li class="never" data-hits="" data-linenumber="63">
827
-
828
-
829
- <code class="ruby"> # Gets the space info</code>
830
- </li>
831
-
832
- <li class="never" data-hits="" data-linenumber="64">
833
-
834
-
835
- <code class="ruby"> #</code>
836
- </li>
837
-
838
- <li class="never" data-hits="" data-linenumber="65">
839
-
840
-
841
- <code class="ruby"> # @param [Hash] query</code>
842
- </li>
843
-
844
- <li class="never" data-hits="" data-linenumber="66">
845
-
846
-
847
- <code class="ruby"> #</code>
848
- </li>
849
-
850
- <li class="never" data-hits="" data-linenumber="67">
851
-
852
-
853
- <code class="ruby"> # @return [Hash]</code>
854
- </li>
855
-
856
- <li class="covered" data-hits="1" data-linenumber="68">
857
- <span class="hits">1</span>
858
-
859
- <code class="ruby"> def space(query = {})</code>
860
- </li>
861
-
862
- <li class="missed" data-hits="0" data-linenumber="69">
863
-
864
-
865
- <code class="ruby"> Request.new(self, &#39;/cdn/spaces/me&#39;, query, nil, true).get</code>
866
- </li>
867
-
868
- <li class="never" data-hits="" data-linenumber="70">
869
-
870
-
871
- <code class="ruby"> end</code>
872
- </li>
873
-
874
- <li class="never" data-hits="" data-linenumber="71">
875
-
876
-
877
- <code class="ruby"></code>
878
- </li>
879
-
880
- <li class="never" data-hits="" data-linenumber="72">
881
-
882
-
883
- <code class="ruby"> # Gets a collection of stories</code>
884
- </li>
885
-
886
- <li class="never" data-hits="" data-linenumber="73">
887
-
888
-
889
- <code class="ruby"> #</code>
890
- </li>
891
-
892
- <li class="never" data-hits="" data-linenumber="74">
893
-
894
-
895
- <code class="ruby"> # @param [Hash] query</code>
896
- </li>
897
-
898
- <li class="never" data-hits="" data-linenumber="75">
899
-
900
-
901
- <code class="ruby"> #</code>
902
- </li>
903
-
904
- <li class="never" data-hits="" data-linenumber="76">
905
-
906
-
907
- <code class="ruby"> # @return [Hash]</code>
908
- </li>
909
-
910
- <li class="covered" data-hits="1" data-linenumber="77">
911
- <span class="hits">1</span>
912
-
913
- <code class="ruby"> def stories(query = {})</code>
914
- </li>
915
-
916
- <li class="covered" data-hits="1" data-linenumber="78">
917
- <span class="hits">1</span>
918
-
919
- <code class="ruby"> Request.new(self, &#39;/cdn/stories&#39;, query).get</code>
920
- </li>
921
-
922
- <li class="never" data-hits="" data-linenumber="79">
923
-
924
-
925
- <code class="ruby"> end</code>
926
- </li>
927
-
928
- <li class="never" data-hits="" data-linenumber="80">
929
-
930
-
931
- <code class="ruby"></code>
932
- </li>
933
-
934
- <li class="never" data-hits="" data-linenumber="81">
935
-
936
-
937
- <code class="ruby"> # Gets a specific story</code>
938
- </li>
939
-
940
- <li class="never" data-hits="" data-linenumber="82">
941
-
942
-
943
- <code class="ruby"> #</code>
944
- </li>
945
-
946
- <li class="never" data-hits="" data-linenumber="83">
947
-
948
-
949
- <code class="ruby"> # @param [String] id</code>
950
- </li>
951
-
952
- <li class="never" data-hits="" data-linenumber="84">
953
-
954
-
955
- <code class="ruby"> # @param [Hash] query</code>
956
- </li>
957
-
958
- <li class="never" data-hits="" data-linenumber="85">
959
-
960
-
961
- <code class="ruby"> #</code>
962
- </li>
963
-
964
- <li class="never" data-hits="" data-linenumber="86">
965
-
966
-
967
- <code class="ruby"> # @return [Hash]</code>
968
- </li>
969
-
970
- <li class="covered" data-hits="1" data-linenumber="87">
971
- <span class="hits">1</span>
972
-
973
- <code class="ruby"> def story(id, query = {})</code>
974
- </li>
975
-
976
- <li class="missed" data-hits="0" data-linenumber="88">
977
-
978
-
979
- <code class="ruby"> Request.new(self, &#39;/cdn/stories&#39;, query, id).get</code>
980
- </li>
981
-
982
- <li class="never" data-hits="" data-linenumber="89">
983
-
984
-
985
- <code class="ruby"> end</code>
986
- </li>
987
-
988
- <li class="never" data-hits="" data-linenumber="90">
989
-
990
-
991
- <code class="ruby"></code>
992
- </li>
993
-
994
- <li class="never" data-hits="" data-linenumber="91">
995
-
996
-
997
- <code class="ruby"> # Gets a collection of datasource entries</code>
998
- </li>
999
-
1000
- <li class="never" data-hits="" data-linenumber="92">
1001
-
1002
-
1003
- <code class="ruby"> #</code>
1004
- </li>
1005
-
1006
- <li class="never" data-hits="" data-linenumber="93">
1007
-
1008
-
1009
- <code class="ruby"> # @param [Hash] query</code>
1010
- </li>
1011
-
1012
- <li class="never" data-hits="" data-linenumber="94">
1013
-
1014
-
1015
- <code class="ruby"> #</code>
1016
- </li>
1017
-
1018
- <li class="never" data-hits="" data-linenumber="95">
1019
-
1020
-
1021
- <code class="ruby"> # @return [Hash]</code>
1022
- </li>
1023
-
1024
- <li class="covered" data-hits="1" data-linenumber="96">
1025
- <span class="hits">1</span>
1026
-
1027
- <code class="ruby"> def datasource_entries(query = {})</code>
1028
- </li>
1029
-
1030
- <li class="missed" data-hits="0" data-linenumber="97">
1031
-
1032
-
1033
- <code class="ruby"> Request.new(self, &#39;/cdn/datasource_entries&#39;, query).get</code>
1034
- </li>
1035
-
1036
- <li class="never" data-hits="" data-linenumber="98">
1037
-
1038
-
1039
- <code class="ruby"> end</code>
1040
- </li>
1041
-
1042
- <li class="never" data-hits="" data-linenumber="99">
1043
-
1044
-
1045
- <code class="ruby"></code>
1046
- </li>
1047
-
1048
- <li class="never" data-hits="" data-linenumber="100">
1049
-
1050
-
1051
- <code class="ruby"> # Gets a collection of datasources</code>
1052
- </li>
1053
-
1054
- <li class="never" data-hits="" data-linenumber="101">
1055
-
1056
-
1057
- <code class="ruby"> #</code>
1058
- </li>
1059
-
1060
- <li class="never" data-hits="" data-linenumber="102">
1061
-
1062
-
1063
- <code class="ruby"> # @param [Hash] query</code>
1064
- </li>
1065
-
1066
- <li class="never" data-hits="" data-linenumber="103">
1067
-
1068
-
1069
- <code class="ruby"> #</code>
1070
- </li>
1071
-
1072
- <li class="never" data-hits="" data-linenumber="104">
1073
-
1074
-
1075
- <code class="ruby"> # @return [Hash]</code>
1076
- </li>
1077
-
1078
- <li class="covered" data-hits="1" data-linenumber="105">
1079
- <span class="hits">1</span>
1080
-
1081
- <code class="ruby"> def datasources(query = {})</code>
1082
- </li>
1083
-
1084
- <li class="missed" data-hits="0" data-linenumber="106">
1085
-
1086
-
1087
- <code class="ruby"> Request.new(self, &#39;/cdn/datasources&#39;, query).get</code>
1088
- </li>
1089
-
1090
- <li class="never" data-hits="" data-linenumber="107">
1091
-
1092
-
1093
- <code class="ruby"> end</code>
1094
- </li>
1095
-
1096
- <li class="never" data-hits="" data-linenumber="108">
1097
-
1098
-
1099
- <code class="ruby"></code>
1100
- </li>
1101
-
1102
- <li class="never" data-hits="" data-linenumber="109">
1103
-
1104
-
1105
- <code class="ruby"> # Gets a collection of tags</code>
1106
- </li>
1107
-
1108
- <li class="never" data-hits="" data-linenumber="110">
1109
-
1110
-
1111
- <code class="ruby"> #</code>
1112
- </li>
1113
-
1114
- <li class="never" data-hits="" data-linenumber="111">
1115
-
1116
-
1117
- <code class="ruby"> # @param [Hash] query</code>
1118
- </li>
1119
-
1120
- <li class="never" data-hits="" data-linenumber="112">
1121
-
1122
-
1123
- <code class="ruby"> #</code>
1124
- </li>
1125
-
1126
- <li class="never" data-hits="" data-linenumber="113">
1127
-
1128
-
1129
- <code class="ruby"> # @return [Hash]</code>
1130
- </li>
1131
-
1132
- <li class="covered" data-hits="1" data-linenumber="114">
1133
- <span class="hits">1</span>
1134
-
1135
- <code class="ruby"> def tags(query = {})</code>
1136
- </li>
1137
-
1138
- <li class="missed" data-hits="0" data-linenumber="115">
1139
-
1140
-
1141
- <code class="ruby"> Request.new(self, &#39;/cdn/tags&#39;, query).get</code>
1142
- </li>
1143
-
1144
- <li class="never" data-hits="" data-linenumber="116">
1145
-
1146
-
1147
- <code class="ruby"> end</code>
1148
- </li>
1149
-
1150
- <li class="never" data-hits="" data-linenumber="117">
1151
-
1152
-
1153
- <code class="ruby"></code>
1154
- </li>
1155
-
1156
- <li class="never" data-hits="" data-linenumber="118">
1157
-
1158
-
1159
- <code class="ruby"> # Gets a collection of links</code>
1160
- </li>
1161
-
1162
- <li class="never" data-hits="" data-linenumber="119">
1163
-
1164
-
1165
- <code class="ruby"> #</code>
1166
- </li>
1167
-
1168
- <li class="never" data-hits="" data-linenumber="120">
1169
-
1170
-
1171
- <code class="ruby"> # @param [Hash] query</code>
1172
- </li>
1173
-
1174
- <li class="never" data-hits="" data-linenumber="121">
1175
-
1176
-
1177
- <code class="ruby"> #</code>
1178
- </li>
1179
-
1180
- <li class="never" data-hits="" data-linenumber="122">
1181
-
1182
-
1183
- <code class="ruby"> # @return [Hash]</code>
1184
- </li>
1185
-
1186
- <li class="covered" data-hits="1" data-linenumber="123">
1187
- <span class="hits">1</span>
1188
-
1189
- <code class="ruby"> def links(query = {})</code>
1190
- </li>
1191
-
1192
- <li class="missed" data-hits="0" data-linenumber="124">
1193
-
1194
-
1195
- <code class="ruby"> Request.new(self, &#39;/cdn/links&#39;, query).get</code>
1196
- </li>
1197
-
1198
- <li class="never" data-hits="" data-linenumber="125">
1199
-
1200
-
1201
- <code class="ruby"> end</code>
1202
- </li>
1203
-
1204
- <li class="never" data-hits="" data-linenumber="126">
1205
-
1206
-
1207
- <code class="ruby"></code>
1208
- </li>
1209
-
1210
- <li class="never" data-hits="" data-linenumber="127">
1211
-
1212
-
1213
- <code class="ruby"> # Gets a link tree</code>
1214
- </li>
1215
-
1216
- <li class="never" data-hits="" data-linenumber="128">
1217
-
1218
-
1219
- <code class="ruby"> #</code>
1220
- </li>
1221
-
1222
- <li class="never" data-hits="" data-linenumber="129">
1223
-
1224
-
1225
- <code class="ruby"> # @param [Hash] query</code>
1226
- </li>
1227
-
1228
- <li class="never" data-hits="" data-linenumber="130">
1229
-
1230
-
1231
- <code class="ruby"> #</code>
1232
- </li>
1233
-
1234
- <li class="never" data-hits="" data-linenumber="131">
1235
-
1236
-
1237
- <code class="ruby"> # @return [Hash]</code>
1238
- </li>
1239
-
1240
- <li class="covered" data-hits="1" data-linenumber="132">
1241
- <span class="hits">1</span>
1242
-
1243
- <code class="ruby"> def tree(query = {})</code>
1244
- </li>
1245
-
1246
- <li class="missed" data-hits="0" data-linenumber="133">
1247
-
1248
-
1249
- <code class="ruby"> Links.new(Request.new(self, &#39;/cdn/links&#39;, query).get).as_tree</code>
1250
- </li>
1251
-
1252
- <li class="never" data-hits="" data-linenumber="134">
1253
-
1254
-
1255
- <code class="ruby"> end</code>
1256
- </li>
1257
-
1258
- <li class="never" data-hits="" data-linenumber="135">
1259
-
1260
-
1261
- <code class="ruby"></code>
1262
- </li>
1263
-
1264
- <li class="covered" data-hits="1" data-linenumber="136">
1265
- <span class="hits">1</span>
1266
-
1267
- <code class="ruby"> def post(path, payload, additional_headers = {})</code>
1268
- </li>
1269
-
1270
- <li class="missed" data-hits="0" data-linenumber="137">
1271
-
1272
-
1273
- <code class="ruby"> run_management_request(:post, path, payload, additional_headers)</code>
1274
- </li>
1275
-
1276
- <li class="never" data-hits="" data-linenumber="138">
1277
-
1278
-
1279
- <code class="ruby"> end</code>
1280
- </li>
1281
-
1282
- <li class="never" data-hits="" data-linenumber="139">
1283
-
1284
-
1285
- <code class="ruby"></code>
1286
- </li>
1287
-
1288
- <li class="covered" data-hits="1" data-linenumber="140">
1289
- <span class="hits">1</span>
1290
-
1291
- <code class="ruby"> def put(path, payload, additional_headers = {})</code>
1292
- </li>
1293
-
1294
- <li class="missed" data-hits="0" data-linenumber="141">
1295
-
1296
-
1297
- <code class="ruby"> run_management_request(:put, path, payload, additional_headers)</code>
1298
- </li>
1299
-
1300
- <li class="never" data-hits="" data-linenumber="142">
1301
-
1302
-
1303
- <code class="ruby"> end</code>
1304
- </li>
1305
-
1306
- <li class="never" data-hits="" data-linenumber="143">
1307
-
1308
-
1309
- <code class="ruby"></code>
1310
- </li>
1311
-
1312
- <li class="covered" data-hits="1" data-linenumber="144">
1313
- <span class="hits">1</span>
1314
-
1315
- <code class="ruby"> def delete(path, additional_headers = {})</code>
1316
- </li>
1317
-
1318
- <li class="missed" data-hits="0" data-linenumber="145">
1319
-
1320
-
1321
- <code class="ruby"> run_management_request(:delete, path, nil, additional_headers)</code>
1322
- </li>
1323
-
1324
- <li class="never" data-hits="" data-linenumber="146">
1325
-
1326
-
1327
- <code class="ruby"> end</code>
1328
- </li>
1329
-
1330
- <li class="never" data-hits="" data-linenumber="147">
1331
-
1332
-
1333
- <code class="ruby"></code>
1334
- </li>
1335
-
1336
- <li class="covered" data-hits="1" data-linenumber="148">
1337
- <span class="hits">1</span>
1338
-
1339
- <code class="ruby"> def get(path, additional_headers = {})</code>
1340
- </li>
1341
-
1342
- <li class="missed" data-hits="0" data-linenumber="149">
1343
-
1344
-
1345
- <code class="ruby"> run_management_request(:get, path, nil, additional_headers)</code>
1346
- </li>
1347
-
1348
- <li class="never" data-hits="" data-linenumber="150">
1349
-
1350
-
1351
- <code class="ruby"> end</code>
1352
- </li>
1353
-
1354
- <li class="never" data-hits="" data-linenumber="151">
1355
-
1356
-
1357
- <code class="ruby"></code>
1358
- </li>
1359
-
1360
- <li class="covered" data-hits="1" data-linenumber="152">
1361
- <span class="hits">1</span>
1362
-
1363
- <code class="ruby"> def run_management_request(action, path, payload = {}, additional_headers = {})</code>
1364
- </li>
1365
-
1366
- <li class="missed" data-hits="0" data-linenumber="153">
1367
-
1368
-
1369
- <code class="ruby"> logger.info(request: { path: path, action: action }) if logger</code>
1370
- </li>
1371
-
1372
- <li class="missed" data-hits="0" data-linenumber="154">
1373
-
1374
-
1375
- <code class="ruby"> retries_left = 3</code>
1376
- </li>
1377
-
1378
- <li class="never" data-hits="" data-linenumber="155">
1379
-
1380
-
1381
- <code class="ruby"></code>
1382
- </li>
1383
-
1384
- <li class="never" data-hits="" data-linenumber="156">
1385
-
1386
-
1387
- <code class="ruby"> begin</code>
1388
- </li>
1389
-
1390
- <li class="missed" data-hits="0" data-linenumber="157">
1391
-
1392
-
1393
- <code class="ruby"> if [:post, :put].include?(action)</code>
1394
- </li>
1395
-
1396
- <li class="missed" data-hits="0" data-linenumber="158">
1397
-
1398
-
1399
- <code class="ruby"> res = @rest_client[path].send(action, payload, additional_headers)</code>
1400
- </li>
1401
-
1402
- <li class="never" data-hits="" data-linenumber="159">
1403
-
1404
-
1405
- <code class="ruby"> else</code>
1406
- </li>
1407
-
1408
- <li class="missed" data-hits="0" data-linenumber="160">
1409
-
1410
-
1411
- <code class="ruby"> res = @rest_client[path].send(action, additional_headers)</code>
1412
- </li>
1413
-
1414
- <li class="never" data-hits="" data-linenumber="161">
1415
-
1416
-
1417
- <code class="ruby"> end</code>
1418
- </li>
1419
-
1420
- <li class="never" data-hits="" data-linenumber="162">
1421
-
1422
-
1423
- <code class="ruby"> rescue RestClient::TooManyRequests</code>
1424
- </li>
1425
-
1426
- <li class="missed" data-hits="0" data-linenumber="163">
1427
-
1428
-
1429
- <code class="ruby"> if retries_left != 0</code>
1430
- </li>
1431
-
1432
- <li class="missed" data-hits="0" data-linenumber="164">
1433
-
1434
-
1435
- <code class="ruby"> retries_left -= 1</code>
1436
- </li>
1437
-
1438
- <li class="missed" data-hits="0" data-linenumber="165">
1439
-
1440
-
1441
- <code class="ruby"> logger.info(&quot;Too many requests. Retry nr. #{(3 - retries_left).to_s} of max. 3 times.&quot;) if logger</code>
1442
- </li>
1443
-
1444
- <li class="missed" data-hits="0" data-linenumber="166">
1445
-
1446
-
1447
- <code class="ruby"> sleep(0.5)</code>
1448
- </li>
1449
-
1450
- <li class="missed" data-hits="0" data-linenumber="167">
1451
-
1452
-
1453
- <code class="ruby"> retry</code>
1454
- </li>
1455
-
1456
- <li class="never" data-hits="" data-linenumber="168">
1457
-
1458
-
1459
- <code class="ruby"> end</code>
1460
- </li>
1461
-
1462
- <li class="never" data-hits="" data-linenumber="169">
1463
-
1464
-
1465
- <code class="ruby"></code>
1466
- </li>
1467
-
1468
- <li class="missed" data-hits="0" data-linenumber="170">
1469
-
1470
-
1471
- <code class="ruby"> raise</code>
1472
- </li>
1473
-
1474
- <li class="never" data-hits="" data-linenumber="171">
1475
-
1476
-
1477
- <code class="ruby"> end</code>
1478
- </li>
1479
-
1480
- <li class="never" data-hits="" data-linenumber="172">
1481
-
1482
-
1483
- <code class="ruby"></code>
1484
- </li>
1485
-
1486
- <li class="missed" data-hits="0" data-linenumber="173">
1487
-
1488
-
1489
- <code class="ruby"> parse_result(res)</code>
1490
- </li>
1491
-
1492
- <li class="never" data-hits="" data-linenumber="174">
1493
-
1494
-
1495
- <code class="ruby"> end</code>
1496
- </li>
1497
-
1498
- <li class="never" data-hits="" data-linenumber="175">
1499
-
1500
-
1501
- <code class="ruby"></code>
1502
- </li>
1503
-
1504
- <li class="covered" data-hits="1" data-linenumber="176">
1505
- <span class="hits">1</span>
1506
-
1507
- <code class="ruby"> def cached_get(request, bypass_cache = false)</code>
1508
- </li>
1509
-
1510
- <li class="covered" data-hits="1" data-linenumber="177">
1511
- <span class="hits">1</span>
1512
-
1513
- <code class="ruby"> endpoint = base_url + request.url</code>
1514
- </li>
1515
-
1516
- <li class="covered" data-hits="1" data-linenumber="178">
1517
- <span class="hits">1</span>
1518
-
1519
- <code class="ruby"> query = request_query(request.query)</code>
1520
- </li>
1521
-
1522
- <li class="covered" data-hits="1" data-linenumber="179">
1523
- <span class="hits">1</span>
1524
-
1525
- <code class="ruby"> query_string = build_nested_query(query)</code>
1526
- </li>
1527
-
1528
- <li class="never" data-hits="" data-linenumber="180">
1529
-
1530
-
1531
- <code class="ruby"></code>
1532
- </li>
1533
-
1534
- <li class="covered" data-hits="1" data-linenumber="181">
1535
- <span class="hits">1</span>
1536
-
1537
- <code class="ruby"> if cache.nil? || bypass_cache || query[:version] == &#39;draft&#39;</code>
1538
- </li>
1539
-
1540
- <li class="covered" data-hits="1" data-linenumber="182">
1541
- <span class="hits">1</span>
1542
-
1543
- <code class="ruby"> result = run_request(endpoint, query_string)</code>
1544
- </li>
1545
-
1546
- <li class="never" data-hits="" data-linenumber="183">
1547
-
1548
-
1549
- <code class="ruby"> else</code>
1550
- </li>
1551
-
1552
- <li class="missed" data-hits="0" data-linenumber="184">
1553
-
1554
-
1555
- <code class="ruby"> cache_key = &#39;storyblok:&#39; + configuration[:token] + &#39;:v:&#39; + query[:cv] + &#39;:&#39; + request.url + &#39;:&#39; + Base64.encode64(query_string)</code>
1556
- </li>
1557
-
1558
- <li class="never" data-hits="" data-linenumber="185">
1559
-
1560
-
1561
- <code class="ruby"></code>
1562
- </li>
1563
-
1564
- <li class="missed" data-hits="0" data-linenumber="186">
1565
-
1566
-
1567
- <code class="ruby"> result = cache.cache(cache_key) do</code>
1568
- </li>
1569
-
1570
- <li class="missed" data-hits="0" data-linenumber="187">
1571
-
1572
-
1573
- <code class="ruby"> run_request(endpoint, query_string)</code>
1574
- </li>
1575
-
1576
- <li class="never" data-hits="" data-linenumber="188">
1577
-
1578
-
1579
- <code class="ruby"> end</code>
1580
- </li>
1581
-
1582
- <li class="never" data-hits="" data-linenumber="189">
1583
-
1584
-
1585
- <code class="ruby"> end</code>
1586
- </li>
1587
-
1588
- <li class="never" data-hits="" data-linenumber="190">
1589
-
1590
-
1591
- <code class="ruby"></code>
1592
- </li>
1593
-
1594
- <li class="covered" data-hits="1" data-linenumber="191">
1595
- <span class="hits">1</span>
1596
-
1597
- <code class="ruby"> result = JSON.parse(result)</code>
1598
- </li>
1599
-
1600
- <li class="never" data-hits="" data-linenumber="192">
1601
-
1602
-
1603
- <code class="ruby"></code>
1604
- </li>
1605
-
1606
- <li class="covered" data-hits="1" data-linenumber="193">
1607
- <span class="hits">1</span>
1608
-
1609
- <code class="ruby"> if !result.dig(&#39;data&#39;, &#39;story&#39;).nil? || !result.dig(&#39;data&#39;, &#39;stories&#39;).nil?</code>
1610
- </li>
1611
-
1612
- <li class="covered" data-hits="1" data-linenumber="194">
1613
- <span class="hits">1</span>
1614
-
1615
- <code class="ruby"> result = resolve_stories(result, query)</code>
1616
- </li>
1617
-
1618
- <li class="never" data-hits="" data-linenumber="195">
1619
-
1620
-
1621
- <code class="ruby"> end</code>
1622
- </li>
1623
-
1624
- <li class="never" data-hits="" data-linenumber="196">
1625
-
1626
-
1627
- <code class="ruby"></code>
1628
- </li>
1629
-
1630
- <li class="covered" data-hits="1" data-linenumber="197">
1631
- <span class="hits">1</span>
1632
-
1633
- <code class="ruby"> result</code>
1634
- </li>
1635
-
1636
- <li class="never" data-hits="" data-linenumber="198">
1637
-
1638
-
1639
- <code class="ruby"> end</code>
1640
- </li>
1641
-
1642
- <li class="never" data-hits="" data-linenumber="199">
1643
-
1644
-
1645
- <code class="ruby"></code>
1646
- </li>
1647
-
1648
- <li class="covered" data-hits="1" data-linenumber="200">
1649
- <span class="hits">1</span>
1650
-
1651
- <code class="ruby"> def flush</code>
1652
- </li>
1653
-
1654
- <li class="missed" data-hits="0" data-linenumber="201">
1655
-
1656
-
1657
- <code class="ruby"> unless cache.nil?</code>
1658
- </li>
1659
-
1660
- <li class="missed" data-hits="0" data-linenumber="202">
1661
-
1662
-
1663
- <code class="ruby"> cache.set(&#39;storyblok:&#39; + configuration[:token] + &#39;:version&#39;, space[&#39;data&#39;][&#39;space&#39;][&#39;version&#39;])</code>
1664
- </li>
1665
-
1666
- <li class="never" data-hits="" data-linenumber="203">
1667
-
1668
-
1669
- <code class="ruby"> end</code>
1670
- </li>
1671
-
1672
- <li class="never" data-hits="" data-linenumber="204">
1673
-
1674
-
1675
- <code class="ruby"> end</code>
1676
- </li>
1677
-
1678
- <li class="never" data-hits="" data-linenumber="205">
1679
-
1680
-
1681
- <code class="ruby"></code>
1682
- </li>
1683
-
1684
- <li class="never" data-hits="" data-linenumber="206">
1685
-
1686
-
1687
- <code class="ruby"> # Returns html from richtext field data</code>
1688
- </li>
1689
-
1690
- <li class="never" data-hits="" data-linenumber="207">
1691
-
1692
-
1693
- <code class="ruby"> #</code>
1694
- </li>
1695
-
1696
- <li class="never" data-hits="" data-linenumber="208">
1697
-
1698
-
1699
- <code class="ruby"> # @param [Hash] :data</code>
1700
- </li>
1701
-
1702
- <li class="never" data-hits="" data-linenumber="209">
1703
-
1704
-
1705
- <code class="ruby"> #</code>
1706
- </li>
1707
-
1708
- <li class="never" data-hits="" data-linenumber="210">
1709
-
1710
-
1711
- <code class="ruby"> # @return [String]</code>
1712
- </li>
1713
-
1714
- <li class="covered" data-hits="1" data-linenumber="211">
1715
- <span class="hits">1</span>
1716
-
1717
- <code class="ruby"> def render data</code>
1718
- </li>
1719
-
1720
- <li class="missed" data-hits="0" data-linenumber="212">
1721
-
1722
-
1723
- <code class="ruby"> @renderer.render(data)</code>
1724
- </li>
1725
-
1726
- <li class="never" data-hits="" data-linenumber="213">
1727
-
1728
-
1729
- <code class="ruby"> end</code>
1730
- </li>
1731
-
1732
- <li class="never" data-hits="" data-linenumber="214">
1733
-
1734
-
1735
- <code class="ruby"></code>
1736
- </li>
1737
-
1738
- <li class="never" data-hits="" data-linenumber="215">
1739
-
1740
-
1741
- <code class="ruby"> # Sets component resolver</code>
1742
- </li>
1743
-
1744
- <li class="never" data-hits="" data-linenumber="216">
1745
-
1746
-
1747
- <code class="ruby"> #</code>
1748
- </li>
1749
-
1750
- <li class="never" data-hits="" data-linenumber="217">
1751
-
1752
-
1753
- <code class="ruby"> # @param [Proc] :component_resolver</code>
1754
- </li>
1755
-
1756
- <li class="never" data-hits="" data-linenumber="218">
1757
-
1758
-
1759
- <code class="ruby"> #</code>
1760
- </li>
1761
-
1762
- <li class="never" data-hits="" data-linenumber="219">
1763
-
1764
-
1765
- <code class="ruby"> # @return [nil]</code>
1766
- </li>
1767
-
1768
- <li class="covered" data-hits="1" data-linenumber="220">
1769
- <span class="hits">1</span>
1770
-
1771
- <code class="ruby"> def set_component_resolver component_resolver</code>
1772
- </li>
1773
-
1774
- <li class="missed" data-hits="0" data-linenumber="221">
1775
-
1776
-
1777
- <code class="ruby"> @renderer.set_component_resolver(component_resolver)</code>
1778
- </li>
1779
-
1780
- <li class="never" data-hits="" data-linenumber="222">
1781
-
1782
-
1783
- <code class="ruby"> end</code>
1784
- </li>
1785
-
1786
- <li class="never" data-hits="" data-linenumber="223">
1787
-
1788
-
1789
- <code class="ruby"></code>
1790
- </li>
1791
-
1792
- <li class="covered" data-hits="1" data-linenumber="224">
1793
- <span class="hits">1</span>
1794
-
1795
- <code class="ruby"> private</code>
1796
- </li>
1797
-
1798
- <li class="covered" data-hits="1" data-linenumber="225">
1799
- <span class="hits">1</span>
1800
-
1801
- <code class="ruby"> def parse_result(res)</code>
1802
- </li>
1803
-
1804
- <li class="missed" data-hits="0" data-linenumber="226">
1805
-
1806
-
1807
- <code class="ruby"> { &#39;headers&#39; =&gt; res.headers, &#39;data&#39; =&gt; JSON.parse(res.body) }</code>
1808
- </li>
1809
-
1810
- <li class="never" data-hits="" data-linenumber="227">
1811
-
1812
-
1813
- <code class="ruby"> end</code>
1814
- </li>
1815
-
1816
- <li class="never" data-hits="" data-linenumber="228">
1817
-
1818
-
1819
- <code class="ruby"></code>
1820
- </li>
1821
-
1822
- <li class="covered" data-hits="1" data-linenumber="229">
1823
- <span class="hits">1</span>
1824
-
1825
- <code class="ruby"> def run_request(endpoint, query_string)</code>
1826
- </li>
1827
-
1828
- <li class="covered" data-hits="1" data-linenumber="230">
1829
- <span class="hits">1</span>
1830
-
1831
- <code class="ruby"> logger.info(request: { endpoint: endpoint, query: query_string }) if logger</code>
1832
- </li>
1833
-
1834
- <li class="never" data-hits="" data-linenumber="231">
1835
-
1836
-
1837
- <code class="ruby"></code>
1838
- </li>
1839
-
1840
- <li class="covered" data-hits="1" data-linenumber="232">
1841
- <span class="hits">1</span>
1842
-
1843
- <code class="ruby"> retries_left = 3</code>
1844
- </li>
1845
-
1846
- <li class="never" data-hits="" data-linenumber="233">
1847
-
1848
-
1849
- <code class="ruby"></code>
1850
- </li>
1851
-
1852
- <li class="never" data-hits="" data-linenumber="234">
1853
-
1854
-
1855
- <code class="ruby"> begin</code>
1856
- </li>
1857
-
1858
- <li class="covered" data-hits="1" data-linenumber="235">
1859
- <span class="hits">1</span>
1860
-
1861
- <code class="ruby"> res = RestClient.get &quot;#{endpoint}?#{query_string}&quot;</code>
1862
- </li>
1863
-
1864
- <li class="never" data-hits="" data-linenumber="236">
1865
-
1866
-
1867
- <code class="ruby"> rescue RestClient::TooManyRequests</code>
1868
- </li>
1869
-
1870
- <li class="missed" data-hits="0" data-linenumber="237">
1871
-
1872
-
1873
- <code class="ruby"> if retries_left != 0</code>
1874
- </li>
1875
-
1876
- <li class="missed" data-hits="0" data-linenumber="238">
1877
-
1878
-
1879
- <code class="ruby"> retries_left -= 1</code>
1880
- </li>
1881
-
1882
- <li class="missed" data-hits="0" data-linenumber="239">
1883
-
1884
-
1885
- <code class="ruby"> logger.info(&quot;Too many requests. Retry nr. #{(3 - retries_left).to_s} of max. 3 times.&quot;) if logger</code>
1886
- </li>
1887
-
1888
- <li class="missed" data-hits="0" data-linenumber="240">
1889
-
1890
-
1891
- <code class="ruby"> sleep(0.5)</code>
1892
- </li>
1893
-
1894
- <li class="missed" data-hits="0" data-linenumber="241">
1895
-
1896
-
1897
- <code class="ruby"> retry</code>
1898
- </li>
1899
-
1900
- <li class="never" data-hits="" data-linenumber="242">
1901
-
1902
-
1903
- <code class="ruby"> end</code>
1904
- </li>
1905
-
1906
- <li class="never" data-hits="" data-linenumber="243">
1907
-
1908
-
1909
- <code class="ruby"></code>
1910
- </li>
1911
-
1912
- <li class="missed" data-hits="0" data-linenumber="244">
1913
-
1914
-
1915
- <code class="ruby"> raise</code>
1916
- </li>
1917
-
1918
- <li class="never" data-hits="" data-linenumber="245">
1919
-
1920
-
1921
- <code class="ruby"> end</code>
1922
- </li>
1923
-
1924
- <li class="never" data-hits="" data-linenumber="246">
1925
-
1926
-
1927
- <code class="ruby"></code>
1928
- </li>
1929
-
1930
- <li class="covered" data-hits="1" data-linenumber="247">
1931
- <span class="hits">1</span>
1932
-
1933
- <code class="ruby"> body = JSON.parse(res.body)</code>
1934
- </li>
1935
-
1936
- <li class="covered" data-hits="1" data-linenumber="248">
1937
- <span class="hits">1</span>
1938
-
1939
- <code class="ruby"> self.cache_version = body[&#39;cv&#39;] if body[&#39;cv&#39;]</code>
1940
- </li>
1941
-
1942
- <li class="never" data-hits="" data-linenumber="249">
1943
-
1944
-
1945
- <code class="ruby"></code>
1946
- </li>
1947
-
1948
- <li class="covered" data-hits="1" data-linenumber="250">
1949
- <span class="hits">1</span>
1950
-
1951
- <code class="ruby"> unless cache.nil?</code>
1952
- </li>
1953
-
1954
- <li class="missed" data-hits="0" data-linenumber="251">
1955
-
1956
-
1957
- <code class="ruby"> cache.set(&#39;storyblok:&#39; + configuration[:token] + &#39;:version&#39;, cache_version)</code>
1958
- </li>
1959
-
1960
- <li class="never" data-hits="" data-linenumber="252">
1961
-
1962
-
1963
- <code class="ruby"> end</code>
1964
- </li>
1965
-
1966
- <li class="never" data-hits="" data-linenumber="253">
1967
-
1968
-
1969
- <code class="ruby"></code>
1970
- </li>
1971
-
1972
- <li class="covered" data-hits="1" data-linenumber="254">
1973
- <span class="hits">1</span>
1974
-
1975
- <code class="ruby"> { &#39;headers&#39; =&gt; res.headers, &#39;data&#39; =&gt; body }.to_json</code>
1976
- </li>
1977
-
1978
- <li class="never" data-hits="" data-linenumber="255">
1979
-
1980
-
1981
- <code class="ruby"> end</code>
1982
- </li>
1983
-
1984
- <li class="never" data-hits="" data-linenumber="256">
1985
-
1986
-
1987
- <code class="ruby"></code>
1988
- </li>
1989
-
1990
- <li class="never" data-hits="" data-linenumber="257">
1991
-
1992
-
1993
- <code class="ruby"> # Patches a query hash with the client configurations for queries</code>
1994
- </li>
1995
-
1996
- <li class="covered" data-hits="1" data-linenumber="258">
1997
- <span class="hits">1</span>
1998
-
1999
- <code class="ruby"> def request_query(query)</code>
2000
- </li>
2001
-
2002
- <li class="covered" data-hits="1" data-linenumber="259">
2003
- <span class="hits">1</span>
2004
-
2005
- <code class="ruby"> query[:token] = configuration[:token] if query[:token].nil?</code>
2006
- </li>
2007
-
2008
- <li class="covered" data-hits="1" data-linenumber="260">
2009
- <span class="hits">1</span>
2010
-
2011
- <code class="ruby"> query[:version] = configuration[:version] if query[:version].nil?</code>
2012
- </li>
2013
-
2014
- <li class="never" data-hits="" data-linenumber="261">
2015
-
2016
-
2017
- <code class="ruby"></code>
2018
- </li>
2019
-
2020
- <li class="covered" data-hits="1" data-linenumber="262">
2021
- <span class="hits">1</span>
2022
-
2023
- <code class="ruby"> unless cache.nil?</code>
2024
- </li>
2025
-
2026
- <li class="missed" data-hits="0" data-linenumber="263">
2027
-
2028
-
2029
- <code class="ruby"> query[:cv] = (cache.get(&#39;storyblok:&#39; + configuration[:token] + &#39;:version&#39;) or cache_version) if query[:cv].nil?</code>
2030
- </li>
2031
-
2032
- <li class="never" data-hits="" data-linenumber="264">
2033
-
2034
-
2035
- <code class="ruby"> else</code>
2036
- </li>
2037
-
2038
- <li class="covered" data-hits="1" data-linenumber="265">
2039
- <span class="hits">1</span>
2040
-
2041
- <code class="ruby"> query[:cv] = cache_version if query[:cv].nil?</code>
2042
- </li>
2043
-
2044
- <li class="never" data-hits="" data-linenumber="266">
2045
-
2046
-
2047
- <code class="ruby"> end</code>
2048
- </li>
2049
-
2050
- <li class="never" data-hits="" data-linenumber="267">
2051
-
2052
-
2053
- <code class="ruby"></code>
2054
- </li>
2055
-
2056
- <li class="covered" data-hits="1" data-linenumber="268">
2057
- <span class="hits">1</span>
2058
-
2059
- <code class="ruby"> query</code>
2060
- </li>
2061
-
2062
- <li class="never" data-hits="" data-linenumber="269">
2063
-
2064
-
2065
- <code class="ruby"> end</code>
2066
- </li>
2067
-
2068
- <li class="never" data-hits="" data-linenumber="270">
2069
-
2070
-
2071
- <code class="ruby"></code>
2072
- </li>
2073
-
2074
- <li class="never" data-hits="" data-linenumber="271">
2075
-
2076
-
2077
- <code class="ruby"> # Returns the base url for all of the client&#39;s requests</code>
2078
- </li>
2079
-
2080
- <li class="covered" data-hits="1" data-linenumber="272">
2081
- <span class="hits">1</span>
2082
-
2083
- <code class="ruby"> def base_url</code>
2084
- </li>
2085
-
2086
- <li class="covered" data-hits="1" data-linenumber="273">
2087
- <span class="hits">1</span>
2088
-
2089
- <code class="ruby"> if !configuration[:api_url]</code>
2090
- </li>
2091
-
2092
- <li class="covered" data-hits="1" data-linenumber="274">
2093
- <span class="hits">1</span>
2094
-
2095
- <code class="ruby"> region = configuration[:api_region] ? &quot;-#{configuration[:api_region]}&quot; : &quot;&quot;</code>
2096
- </li>
2097
-
2098
- <li class="covered" data-hits="1" data-linenumber="275">
2099
- <span class="hits">1</span>
2100
-
2101
- <code class="ruby"> &quot;http#{configuration[:secure] ? &#39;s&#39; : &#39;&#39;}://api#{region}.storyblok.com/v#{configuration[:api_version]}&quot;</code>
2102
- </li>
2103
-
2104
- <li class="never" data-hits="" data-linenumber="276">
2105
-
2106
-
2107
- <code class="ruby"> else</code>
2108
- </li>
2109
-
2110
- <li class="missed" data-hits="0" data-linenumber="277">
2111
-
2112
-
2113
- <code class="ruby"> &quot;http#{configuration[:secure] ? &#39;s&#39; : &#39;&#39;}://#{configuration[:api_url]}/v#{configuration[:api_version]}&quot;</code>
2114
- </li>
2115
-
2116
- <li class="never" data-hits="" data-linenumber="278">
2117
-
2118
-
2119
- <code class="ruby"> end</code>
2120
- </li>
2121
-
2122
- <li class="never" data-hits="" data-linenumber="279">
2123
-
2124
-
2125
- <code class="ruby"> end</code>
2126
- </li>
2127
-
2128
- <li class="never" data-hits="" data-linenumber="280">
2129
-
2130
-
2131
- <code class="ruby"></code>
2132
- </li>
2133
-
2134
- <li class="covered" data-hits="1" data-linenumber="281">
2135
- <span class="hits">1</span>
2136
-
2137
- <code class="ruby"> def default_configuration</code>
2138
- </li>
2139
-
2140
- <li class="covered" data-hits="1" data-linenumber="282">
2141
- <span class="hits">1</span>
2142
-
2143
- <code class="ruby"> DEFAULT_CONFIGURATION.dup</code>
2144
- </li>
2145
-
2146
- <li class="never" data-hits="" data-linenumber="283">
2147
-
2148
-
2149
- <code class="ruby"> end</code>
2150
- </li>
2151
-
2152
- <li class="never" data-hits="" data-linenumber="284">
2153
-
2154
-
2155
- <code class="ruby"></code>
2156
- </li>
2157
-
2158
- <li class="covered" data-hits="1" data-linenumber="285">
2159
- <span class="hits">1</span>
2160
-
2161
- <code class="ruby"> def cache</code>
2162
- </li>
2163
-
2164
- <li class="covered" data-hits="3" data-linenumber="286">
2165
- <span class="hits">3</span>
2166
-
2167
- <code class="ruby"> configuration[:cache]</code>
2168
- </li>
2169
-
2170
- <li class="never" data-hits="" data-linenumber="287">
2171
-
2172
-
2173
- <code class="ruby"> end</code>
2174
- </li>
2175
-
2176
- <li class="never" data-hits="" data-linenumber="288">
2177
-
2178
-
2179
- <code class="ruby"></code>
2180
- </li>
2181
-
2182
- <li class="covered" data-hits="1" data-linenumber="289">
2183
- <span class="hits">1</span>
2184
-
2185
- <code class="ruby"> def setup_logger</code>
2186
- </li>
2187
-
2188
- <li class="covered" data-hits="1" data-linenumber="290">
2189
- <span class="hits">1</span>
2190
-
2191
- <code class="ruby"> @logger = configuration[:logger]</code>
2192
- </li>
2193
-
2194
- <li class="covered" data-hits="1" data-linenumber="291">
2195
- <span class="hits">1</span>
2196
-
2197
- <code class="ruby"> logger.level = configuration[:log_level] if logger</code>
2198
- </li>
2199
-
2200
- <li class="never" data-hits="" data-linenumber="292">
2201
-
2202
-
2203
- <code class="ruby"> end</code>
2204
- </li>
2205
-
2206
- <li class="never" data-hits="" data-linenumber="293">
2207
-
2208
-
2209
- <code class="ruby"></code>
2210
- </li>
2211
-
2212
- <li class="covered" data-hits="1" data-linenumber="294">
2213
- <span class="hits">1</span>
2214
-
2215
- <code class="ruby"> def validate_configuration!</code>
2216
- </li>
2217
-
2218
- <li class="covered" data-hits="1" data-linenumber="295">
2219
- <span class="hits">1</span>
2220
-
2221
- <code class="ruby"> fail ArgumentError, &#39;You will need to initialize a client with an :token or :oauth_token&#39; if !configuration[:token] and !configuration[:oauth_token]</code>
2222
- </li>
2223
-
2224
- <li class="covered" data-hits="1" data-linenumber="296">
2225
- <span class="hits">1</span>
2226
-
2227
- <code class="ruby"> fail ArgumentError, &#39;The :api_version must be a positive number&#39; unless configuration[:api_version].to_i &gt;= 0</code>
2228
- </li>
2229
-
2230
- <li class="never" data-hits="" data-linenumber="297">
2231
-
2232
-
2233
- <code class="ruby"> end</code>
2234
- </li>
2235
-
2236
- <li class="never" data-hits="" data-linenumber="298">
2237
-
2238
-
2239
- <code class="ruby"></code>
2240
- </li>
2241
-
2242
- <li class="covered" data-hits="1" data-linenumber="299">
2243
- <span class="hits">1</span>
2244
-
2245
- <code class="ruby"> def build_nested_query(value, prefix = nil)</code>
2246
- </li>
2247
-
2248
- <li class="covered" data-hits="4" data-linenumber="300">
2249
- <span class="hits">4</span>
2250
-
2251
- <code class="ruby"> case value</code>
2252
- </li>
2253
-
2254
- <li class="never" data-hits="" data-linenumber="301">
2255
-
2256
-
2257
- <code class="ruby"> when Array</code>
2258
- </li>
2259
-
2260
- <li class="missed" data-hits="0" data-linenumber="302">
2261
-
2262
-
2263
- <code class="ruby"> value.map { |v|</code>
2264
- </li>
2265
-
2266
- <li class="missed" data-hits="0" data-linenumber="303">
2267
-
2268
-
2269
- <code class="ruby"> build_nested_query(v, &quot;#{prefix}[]&quot;)</code>
2270
- </li>
2271
-
2272
- <li class="never" data-hits="" data-linenumber="304">
2273
-
2274
-
2275
- <code class="ruby"> }.join(&quot;&amp;&quot;)</code>
2276
- </li>
2277
-
2278
- <li class="never" data-hits="" data-linenumber="305">
2279
-
2280
-
2281
- <code class="ruby"> when Hash</code>
2282
- </li>
2283
-
2284
- <li class="covered" data-hits="1" data-linenumber="306">
2285
- <span class="hits">1</span>
2286
-
2287
- <code class="ruby"> value.map { |k, v|</code>
2288
- </li>
2289
-
2290
- <li class="covered" data-hits="3" data-linenumber="307">
2291
- <span class="hits">3</span>
2292
-
2293
- <code class="ruby"> build_nested_query(v,</code>
2294
- </li>
2295
-
2296
- <li class="covered" data-hits="3" data-linenumber="308">
2297
- <span class="hits">3</span>
2298
-
2299
- <code class="ruby"> prefix ? &quot;#{prefix}[#{URI.encode_www_form_component(k)}]&quot; : URI.encode_www_form_component(k))</code>
2300
- </li>
2301
-
2302
- <li class="never" data-hits="" data-linenumber="309">
2303
-
2304
-
2305
- <code class="ruby"> }.reject(&amp;:empty?).join(&#39;&amp;&#39;)</code>
2306
- </li>
2307
-
2308
- <li class="never" data-hits="" data-linenumber="310">
2309
-
2310
-
2311
- <code class="ruby"> when nil</code>
2312
- </li>
2313
-
2314
- <li class="missed" data-hits="0" data-linenumber="311">
2315
-
2316
-
2317
- <code class="ruby"> prefix</code>
2318
- </li>
2319
-
2320
- <li class="never" data-hits="" data-linenumber="312">
2321
-
2322
-
2323
- <code class="ruby"> else</code>
2324
- </li>
2325
-
2326
- <li class="covered" data-hits="3" data-linenumber="313">
2327
- <span class="hits">3</span>
2328
-
2329
- <code class="ruby"> raise ArgumentError, &quot;value must be a Hash&quot; if prefix.nil?</code>
2330
- </li>
2331
-
2332
- <li class="never" data-hits="" data-linenumber="314">
2333
-
2334
-
2335
- <code class="ruby"></code>
2336
- </li>
2337
-
2338
- <li class="covered" data-hits="3" data-linenumber="315">
2339
- <span class="hits">3</span>
2340
-
2341
- <code class="ruby"> &quot;#{prefix}=#{URI.encode_www_form_component(value)}&quot;</code>
2342
- </li>
2343
-
2344
- <li class="never" data-hits="" data-linenumber="316">
2345
-
2346
-
2347
- <code class="ruby"> end</code>
2348
- </li>
2349
-
2350
- <li class="never" data-hits="" data-linenumber="317">
2351
-
2352
-
2353
- <code class="ruby"> end</code>
2354
- </li>
2355
-
2356
- <li class="never" data-hits="" data-linenumber="318">
2357
-
2358
-
2359
- <code class="ruby"></code>
2360
- </li>
2361
-
2362
- <li class="covered" data-hits="1" data-linenumber="319">
2363
- <span class="hits">1</span>
2364
-
2365
- <code class="ruby"> def resolve_stories(result, params)</code>
2366
- </li>
2367
-
2368
- <li class="covered" data-hits="1" data-linenumber="320">
2369
- <span class="hits">1</span>
2370
-
2371
- <code class="ruby"> data = result[&#39;data&#39;]</code>
2372
- </li>
2373
-
2374
- <li class="covered" data-hits="1" data-linenumber="321">
2375
- <span class="hits">1</span>
2376
-
2377
- <code class="ruby"> rels = data[&#39;rels&#39;]</code>
2378
- </li>
2379
-
2380
- <li class="covered" data-hits="1" data-linenumber="322">
2381
- <span class="hits">1</span>
2382
-
2383
- <code class="ruby"> links = data[&#39;links&#39;]</code>
2384
- </li>
2385
-
2386
- <li class="covered" data-hits="1" data-linenumber="323">
2387
- <span class="hits">1</span>
2388
-
2389
- <code class="ruby"> resolve_relations = params[:resolve_relations] || params[&quot;resolve_relations&quot;]</code>
2390
- </li>
2391
-
2392
- <li class="never" data-hits="" data-linenumber="324">
2393
-
2394
-
2395
- <code class="ruby"></code>
2396
- </li>
2397
-
2398
- <li class="covered" data-hits="1" data-linenumber="325">
2399
- <span class="hits">1</span>
2400
-
2401
- <code class="ruby"> if data[&#39;stories&#39;].nil?</code>
2402
- </li>
2403
-
2404
- <li class="missed" data-hits="0" data-linenumber="326">
2405
-
2406
-
2407
- <code class="ruby"> find_and_fill_relations(data.dig(&#39;story&#39;, &#39;content&#39;), resolve_relations, rels)</code>
2408
- </li>
2409
-
2410
- <li class="missed" data-hits="0" data-linenumber="327">
2411
-
2412
-
2413
- <code class="ruby"> find_and_fill_links(data.dig(&#39;story&#39;, &#39;content&#39;), links)</code>
2414
- </li>
2415
-
2416
- <li class="never" data-hits="" data-linenumber="328">
2417
-
2418
-
2419
- <code class="ruby"> else</code>
2420
- </li>
2421
-
2422
- <li class="covered" data-hits="1" data-linenumber="329">
2423
- <span class="hits">1</span>
2424
-
2425
- <code class="ruby"> data[&#39;stories&#39;].each do |story|</code>
2426
- </li>
2427
-
2428
- <li class="covered" data-hits="1" data-linenumber="330">
2429
- <span class="hits">1</span>
2430
-
2431
- <code class="ruby"> find_and_fill_relations(story[&#39;content&#39;], resolve_relations, rels)</code>
2432
- </li>
2433
-
2434
- <li class="covered" data-hits="1" data-linenumber="331">
2435
- <span class="hits">1</span>
2436
-
2437
- <code class="ruby"> find_and_fill_links(story[&#39;content&#39;], links)</code>
2438
- </li>
2439
-
2440
- <li class="never" data-hits="" data-linenumber="332">
2441
-
2442
-
2443
- <code class="ruby"> end</code>
2444
- </li>
2445
-
2446
- <li class="never" data-hits="" data-linenumber="333">
2447
-
2448
-
2449
- <code class="ruby"> end</code>
2450
- </li>
2451
-
2452
- <li class="never" data-hits="" data-linenumber="334">
2453
-
2454
-
2455
- <code class="ruby"></code>
2456
- </li>
2457
-
2458
- <li class="covered" data-hits="1" data-linenumber="335">
2459
- <span class="hits">1</span>
2460
-
2461
- <code class="ruby"> result</code>
2462
- </li>
2463
-
2464
- <li class="never" data-hits="" data-linenumber="336">
2465
-
2466
-
2467
- <code class="ruby"> end</code>
2468
- </li>
2469
-
2470
- <li class="never" data-hits="" data-linenumber="337">
2471
-
2472
-
2473
- <code class="ruby"></code>
2474
- </li>
2475
-
2476
- <li class="covered" data-hits="1" data-linenumber="338">
2477
- <span class="hits">1</span>
2478
-
2479
- <code class="ruby"> def find_and_fill_links(content, links)</code>
2480
- </li>
2481
-
2482
- <li class="covered" data-hits="1" data-linenumber="339">
2483
- <span class="hits">1</span>
2484
-
2485
- <code class="ruby"> return if content.nil? || links.nil? || links.size.zero?</code>
2486
- </li>
2487
-
2488
- <li class="never" data-hits="" data-linenumber="340">
2489
-
2490
-
2491
- <code class="ruby"></code>
2492
- </li>
2493
-
2494
- <li class="missed" data-hits="0" data-linenumber="341">
2495
-
2496
-
2497
- <code class="ruby"> if content.is_a? Array</code>
2498
- </li>
2499
-
2500
- <li class="missed" data-hits="0" data-linenumber="342">
2501
-
2502
-
2503
- <code class="ruby"> content.each do |item|</code>
2504
- </li>
2505
-
2506
- <li class="missed" data-hits="0" data-linenumber="343">
2507
-
2508
-
2509
- <code class="ruby"> find_and_fill_links(item, links)</code>
2510
- </li>
2511
-
2512
- <li class="never" data-hits="" data-linenumber="344">
2513
-
2514
-
2515
- <code class="ruby"> end</code>
2516
- </li>
2517
-
2518
- <li class="missed" data-hits="0" data-linenumber="345">
2519
-
2520
-
2521
- <code class="ruby"> elsif content.is_a? Hash</code>
2522
- </li>
2523
-
2524
- <li class="missed" data-hits="0" data-linenumber="346">
2525
-
2526
-
2527
- <code class="ruby"> content[&#39;story&#39;] = nil</code>
2528
- </li>
2529
-
2530
- <li class="missed" data-hits="0" data-linenumber="347">
2531
-
2532
-
2533
- <code class="ruby"> content.each do |_k, value|</code>
2534
- </li>
2535
-
2536
- <li class="missed" data-hits="0" data-linenumber="348">
2537
-
2538
-
2539
- <code class="ruby"> if !content[&#39;fieldtype&#39;].nil?</code>
2540
- </li>
2541
-
2542
- <li class="missed" data-hits="0" data-linenumber="349">
2543
-
2544
-
2545
- <code class="ruby"> if content[&#39;fieldtype&#39;] == &#39;multilink&#39; &amp;&amp; content[&#39;linktype&#39;] == &#39;story&#39;</code>
2546
- </li>
2547
-
2548
- <li class="never" data-hits="" data-linenumber="350">
2549
-
2550
-
2551
- <code class="ruby"> id =</code>
2552
- </li>
2553
-
2554
- <li class="missed" data-hits="0" data-linenumber="351">
2555
-
2556
-
2557
- <code class="ruby"> if content[&#39;id&#39;].is_a? String</code>
2558
- </li>
2559
-
2560
- <li class="missed" data-hits="0" data-linenumber="352">
2561
-
2562
-
2563
- <code class="ruby"> content[&#39;id&#39;]</code>
2564
- </li>
2565
-
2566
- <li class="missed" data-hits="0" data-linenumber="353">
2567
-
2568
-
2569
- <code class="ruby"> elsif content[&#39;uuid&#39;].is_a? String</code>
2570
- </li>
2571
-
2572
- <li class="missed" data-hits="0" data-linenumber="354">
2573
-
2574
-
2575
- <code class="ruby"> content[&#39;uuid&#39;]</code>
2576
- </li>
2577
-
2578
- <li class="never" data-hits="" data-linenumber="355">
2579
-
2580
-
2581
- <code class="ruby"> end</code>
2582
- </li>
2583
-
2584
- <li class="never" data-hits="" data-linenumber="356">
2585
-
2586
-
2587
- <code class="ruby"></code>
2588
- </li>
2589
-
2590
- <li class="missed" data-hits="0" data-linenumber="357">
2591
-
2592
-
2593
- <code class="ruby"> links.each do |link|</code>
2594
- </li>
2595
-
2596
- <li class="missed" data-hits="0" data-linenumber="358">
2597
-
2598
-
2599
- <code class="ruby"> if link[&#39;uuid&#39;] == id</code>
2600
- </li>
2601
-
2602
- <li class="missed" data-hits="0" data-linenumber="359">
2603
-
2604
-
2605
- <code class="ruby"> content[&#39;story&#39;] = link</code>
2606
- </li>
2607
-
2608
- <li class="missed" data-hits="0" data-linenumber="360">
2609
-
2610
-
2611
- <code class="ruby"> break</code>
2612
- </li>
2613
-
2614
- <li class="never" data-hits="" data-linenumber="361">
2615
-
2616
-
2617
- <code class="ruby"> end</code>
2618
- </li>
2619
-
2620
- <li class="never" data-hits="" data-linenumber="362">
2621
-
2622
-
2623
- <code class="ruby"> end</code>
2624
- </li>
2625
-
2626
- <li class="never" data-hits="" data-linenumber="363">
2627
-
2628
-
2629
- <code class="ruby"> end</code>
2630
- </li>
2631
-
2632
- <li class="never" data-hits="" data-linenumber="364">
2633
-
2634
-
2635
- <code class="ruby"> end</code>
2636
- </li>
2637
-
2638
- <li class="never" data-hits="" data-linenumber="365">
2639
-
2640
-
2641
- <code class="ruby"></code>
2642
- </li>
2643
-
2644
- <li class="missed" data-hits="0" data-linenumber="366">
2645
-
2646
-
2647
- <code class="ruby"> find_and_fill_links(value, links)</code>
2648
- </li>
2649
-
2650
- <li class="never" data-hits="" data-linenumber="367">
2651
-
2652
-
2653
- <code class="ruby"> end</code>
2654
- </li>
2655
-
2656
- <li class="missed" data-hits="0" data-linenumber="368">
2657
-
2658
-
2659
- <code class="ruby"> content.delete(&#39;story&#39;) if content[&#39;story&#39;].nil?</code>
2660
- </li>
2661
-
2662
- <li class="never" data-hits="" data-linenumber="369">
2663
-
2664
-
2665
- <code class="ruby"> end</code>
2666
- </li>
2667
-
2668
- <li class="never" data-hits="" data-linenumber="370">
2669
-
2670
-
2671
- <code class="ruby"> end</code>
2672
- </li>
2673
-
2674
- <li class="never" data-hits="" data-linenumber="371">
2675
-
2676
-
2677
- <code class="ruby"></code>
2678
- </li>
2679
-
2680
- <li class="covered" data-hits="1" data-linenumber="372">
2681
- <span class="hits">1</span>
2682
-
2683
- <code class="ruby"> def find_and_fill_relations(content, relation_params, rels)</code>
2684
- </li>
2685
-
2686
- <li class="covered" data-hits="1" data-linenumber="373">
2687
- <span class="hits">1</span>
2688
-
2689
- <code class="ruby"> return if content.nil? || rels.nil? || rels.size.zero?</code>
2690
- </li>
2691
-
2692
- <li class="never" data-hits="" data-linenumber="374">
2693
-
2694
-
2695
- <code class="ruby"></code>
2696
- </li>
2697
-
2698
- <li class="missed" data-hits="0" data-linenumber="375">
2699
-
2700
-
2701
- <code class="ruby"> if content.is_a? Array</code>
2702
- </li>
2703
-
2704
- <li class="missed" data-hits="0" data-linenumber="376">
2705
-
2706
-
2707
- <code class="ruby"> content.each do |item|</code>
2708
- </li>
2709
-
2710
- <li class="missed" data-hits="0" data-linenumber="377">
2711
-
2712
-
2713
- <code class="ruby"> find_and_fill_relations(item, relation_params, rels)</code>
2714
- </li>
2715
-
2716
- <li class="never" data-hits="" data-linenumber="378">
2717
-
2718
-
2719
- <code class="ruby"> end</code>
2720
- </li>
2721
-
2722
- <li class="missed" data-hits="0" data-linenumber="379">
2723
-
2724
-
2725
- <code class="ruby"> elsif content.is_a? Hash</code>
2726
- </li>
2727
-
2728
- <li class="missed" data-hits="0" data-linenumber="380">
2729
-
2730
-
2731
- <code class="ruby"> content.each do |_k, value|</code>
2732
- </li>
2733
-
2734
- <li class="missed" data-hits="0" data-linenumber="381">
2735
-
2736
-
2737
- <code class="ruby"> if !content[&#39;component&#39;].nil? &amp;&amp; !content[&#39;_uid&#39;].nil?</code>
2738
- </li>
2739
-
2740
- <li class="missed" data-hits="0" data-linenumber="382">
2741
-
2742
-
2743
- <code class="ruby"> relation_params.split(&#39;,&#39;).each do |relation|</code>
2744
- </li>
2745
-
2746
- <li class="missed" data-hits="0" data-linenumber="383">
2747
-
2748
-
2749
- <code class="ruby"> component, field_name = relation.split(&#39;.&#39;)</code>
2750
- </li>
2751
-
2752
- <li class="never" data-hits="" data-linenumber="384">
2753
-
2754
-
2755
- <code class="ruby"></code>
2756
- </li>
2757
-
2758
- <li class="missed" data-hits="0" data-linenumber="385">
2759
-
2760
-
2761
- <code class="ruby"> if (content[&#39;component&#39;] == component) &amp;&amp; !content[field_name].nil?</code>
2762
- </li>
2763
-
2764
- <li class="missed" data-hits="0" data-linenumber="386">
2765
-
2766
-
2767
- <code class="ruby"> rels.each do |rel|</code>
2768
- </li>
2769
-
2770
- <li class="missed" data-hits="0" data-linenumber="387">
2771
-
2772
-
2773
- <code class="ruby"> index = content[field_name].index(rel[&#39;uuid&#39;])</code>
2774
- </li>
2775
-
2776
- <li class="missed" data-hits="0" data-linenumber="388">
2777
-
2778
-
2779
- <code class="ruby"> if !index.nil?</code>
2780
- </li>
2781
-
2782
- <li class="missed" data-hits="0" data-linenumber="389">
2783
-
2784
-
2785
- <code class="ruby"> content[field_name][index] = rel</code>
2786
- </li>
2787
-
2788
- <li class="never" data-hits="" data-linenumber="390">
2789
-
2790
-
2791
- <code class="ruby"> end</code>
2792
- </li>
2793
-
2794
- <li class="never" data-hits="" data-linenumber="391">
2795
-
2796
-
2797
- <code class="ruby"> end</code>
2798
- </li>
2799
-
2800
- <li class="never" data-hits="" data-linenumber="392">
2801
-
2802
-
2803
- <code class="ruby"> end</code>
2804
- </li>
2805
-
2806
- <li class="never" data-hits="" data-linenumber="393">
2807
-
2808
-
2809
- <code class="ruby"> end</code>
2810
- </li>
2811
-
2812
- <li class="never" data-hits="" data-linenumber="394">
2813
-
2814
-
2815
- <code class="ruby"> end</code>
2816
- </li>
2817
-
2818
- <li class="never" data-hits="" data-linenumber="395">
2819
-
2820
-
2821
- <code class="ruby"></code>
2822
- </li>
2823
-
2824
- <li class="missed" data-hits="0" data-linenumber="396">
2825
-
2826
-
2827
- <code class="ruby"> find_and_fill_relations(value, relation_params, rels)</code>
2828
- </li>
2829
-
2830
- <li class="never" data-hits="" data-linenumber="397">
2831
-
2832
-
2833
- <code class="ruby"> end</code>
2834
- </li>
2835
-
2836
- <li class="never" data-hits="" data-linenumber="398">
2837
-
2838
-
2839
- <code class="ruby"> end</code>
2840
- </li>
2841
-
2842
- <li class="never" data-hits="" data-linenumber="399">
2843
-
2844
-
2845
- <code class="ruby"> end</code>
2846
- </li>
2847
-
2848
- <li class="never" data-hits="" data-linenumber="400">
2849
-
2850
-
2851
- <code class="ruby"> end</code>
2852
- </li>
2853
-
2854
- <li class="never" data-hits="" data-linenumber="401">
2855
-
2856
-
2857
- <code class="ruby">end</code>
2858
- </li>
2859
-
2860
- </ol>
2861
- </pre>
2862
- </div>
2863
-
2864
-
2865
- <div class="source_table" id="3846dec82cee306c736ccd6cc6381035e7a9b1cc">
2866
- <div class="header">
2867
- <h3>lib/storyblok/links.rb</h3>
2868
- <h4><span class="red">27.27 %</span> covered</h4>
2869
- <div>
2870
- <b>22</b> relevant lines.
2871
- <span class="green"><b>6</b> lines covered</span> and
2872
- <span class="red"><b>16</b> lines missed.</span>
2873
- </div>
2874
- </div>
2875
-
2876
- <pre>
2877
- <ol>
2878
-
2879
- <li class="covered" data-hits="1" data-linenumber="1">
2880
- <span class="hits">1</span>
2881
-
2882
- <code class="ruby">module Storyblok</code>
2883
- </li>
2884
-
2885
- <li class="covered" data-hits="1" data-linenumber="2">
2886
- <span class="hits">1</span>
2887
-
2888
- <code class="ruby"> class Links</code>
2889
- </li>
2890
-
2891
- <li class="covered" data-hits="1" data-linenumber="3">
2892
- <span class="hits">1</span>
2893
-
2894
- <code class="ruby"> def initialize(response_obj)</code>
2895
- </li>
2896
-
2897
- <li class="missed" data-hits="0" data-linenumber="4">
2898
-
2899
-
2900
- <code class="ruby"> @links = response_obj[&quot;data&quot;][&quot;links&quot;]</code>
2901
- </li>
2902
-
2903
- <li class="never" data-hits="" data-linenumber="5">
2904
-
2905
-
2906
- <code class="ruby"> end</code>
2907
- </li>
2908
-
2909
- <li class="never" data-hits="" data-linenumber="6">
2910
-
2911
-
2912
- <code class="ruby"></code>
2913
- </li>
2914
-
2915
- <li class="covered" data-hits="1" data-linenumber="7">
2916
- <span class="hits">1</span>
2917
-
2918
- <code class="ruby"> def as_tree</code>
2919
- </li>
2920
-
2921
- <li class="missed" data-hits="0" data-linenumber="8">
2922
-
2923
-
2924
- <code class="ruby"> tree = {}</code>
2925
- </li>
2926
-
2927
- <li class="never" data-hits="" data-linenumber="9">
2928
-
2929
-
2930
- <code class="ruby"></code>
2931
- </li>
2932
-
2933
- <li class="missed" data-hits="0" data-linenumber="10">
2934
-
2935
-
2936
- <code class="ruby"> @links.each do |key, item|</code>
2937
- </li>
2938
-
2939
- <li class="missed" data-hits="0" data-linenumber="11">
2940
-
2941
-
2942
- <code class="ruby"> if tree[item[&quot;parent_id&quot;]].nil?</code>
2943
- </li>
2944
-
2945
- <li class="missed" data-hits="0" data-linenumber="12">
2946
-
2947
-
2948
- <code class="ruby"> tree[item[&quot;parent_id&quot;]] = []</code>
2949
- </li>
2950
-
2951
- <li class="never" data-hits="" data-linenumber="13">
2952
-
2953
-
2954
- <code class="ruby"> end</code>
2955
- </li>
2956
-
2957
- <li class="never" data-hits="" data-linenumber="14">
2958
-
2959
-
2960
- <code class="ruby"></code>
2961
- </li>
2962
-
2963
- <li class="missed" data-hits="0" data-linenumber="15">
2964
-
2965
-
2966
- <code class="ruby"> tree[item[&quot;parent_id&quot;]] &lt;&lt; item</code>
2967
- </li>
2968
-
2969
- <li class="never" data-hits="" data-linenumber="16">
2970
-
2971
-
2972
- <code class="ruby"> end</code>
2973
- </li>
2974
-
2975
- <li class="never" data-hits="" data-linenumber="17">
2976
-
2977
-
2978
- <code class="ruby"></code>
2979
- </li>
2980
-
2981
- <li class="missed" data-hits="0" data-linenumber="18">
2982
-
2983
-
2984
- <code class="ruby"> generate_tree(0, tree)</code>
2985
- </li>
2986
-
2987
- <li class="never" data-hits="" data-linenumber="19">
2988
-
2989
-
2990
- <code class="ruby"> end</code>
2991
- </li>
2992
-
2993
- <li class="never" data-hits="" data-linenumber="20">
2994
-
2995
-
2996
- <code class="ruby"></code>
2997
- </li>
2998
-
2999
- <li class="covered" data-hits="1" data-linenumber="21">
3000
- <span class="hits">1</span>
3001
-
3002
- <code class="ruby"> private</code>
3003
- </li>
3004
-
3005
- <li class="covered" data-hits="1" data-linenumber="22">
3006
- <span class="hits">1</span>
3007
-
3008
- <code class="ruby"> def generate_tree(parent_id = 0, items)</code>
3009
- </li>
3010
-
3011
- <li class="missed" data-hits="0" data-linenumber="23">
3012
-
3013
-
3014
- <code class="ruby"> tree = {}</code>
3015
- </li>
3016
-
3017
- <li class="never" data-hits="" data-linenumber="24">
3018
-
3019
-
3020
- <code class="ruby"></code>
3021
- </li>
3022
-
3023
- <li class="missed" data-hits="0" data-linenumber="25">
3024
-
3025
-
3026
- <code class="ruby"> if !items[parent_id].nil?</code>
3027
- </li>
3028
-
3029
- <li class="missed" data-hits="0" data-linenumber="26">
3030
-
3031
-
3032
- <code class="ruby"> result = items[parent_id]</code>
3033
- </li>
3034
-
3035
- <li class="never" data-hits="" data-linenumber="27">
3036
-
3037
-
3038
- <code class="ruby"></code>
3039
- </li>
3040
-
3041
- <li class="missed" data-hits="0" data-linenumber="28">
3042
-
3043
-
3044
- <code class="ruby"> result.each do |item|</code>
3045
- </li>
3046
-
3047
- <li class="missed" data-hits="0" data-linenumber="29">
3048
-
3049
-
3050
- <code class="ruby"> if tree[item[&quot;id&quot;]].nil?</code>
3051
- </li>
3052
-
3053
- <li class="missed" data-hits="0" data-linenumber="30">
3054
-
3055
-
3056
- <code class="ruby"> tree[item[&quot;id&quot;]] = {}</code>
3057
- </li>
3058
-
3059
- <li class="never" data-hits="" data-linenumber="31">
3060
-
3061
-
3062
- <code class="ruby"> end</code>
3063
- </li>
3064
-
3065
- <li class="never" data-hits="" data-linenumber="32">
3066
-
3067
-
3068
- <code class="ruby"></code>
3069
- </li>
3070
-
3071
- <li class="missed" data-hits="0" data-linenumber="33">
3072
-
3073
-
3074
- <code class="ruby"> tree[item[&quot;id&quot;]][&quot;item&quot;] = item</code>
3075
- </li>
3076
-
3077
- <li class="missed" data-hits="0" data-linenumber="34">
3078
-
3079
-
3080
- <code class="ruby"> tree[item[&quot;id&quot;]][&quot;children&quot;] = generate_tree(item[&quot;id&quot;], items)</code>
3081
- </li>
3082
-
3083
- <li class="never" data-hits="" data-linenumber="35">
3084
-
3085
-
3086
- <code class="ruby"> end</code>
3087
- </li>
3088
-
3089
- <li class="never" data-hits="" data-linenumber="36">
3090
-
3091
-
3092
- <code class="ruby"> end</code>
3093
- </li>
3094
-
3095
- <li class="never" data-hits="" data-linenumber="37">
3096
-
3097
-
3098
- <code class="ruby"></code>
3099
- </li>
3100
-
3101
- <li class="missed" data-hits="0" data-linenumber="38">
3102
-
3103
-
3104
- <code class="ruby"> tree</code>
3105
- </li>
3106
-
3107
- <li class="never" data-hits="" data-linenumber="39">
3108
-
3109
-
3110
- <code class="ruby"> end</code>
3111
- </li>
3112
-
3113
- <li class="never" data-hits="" data-linenumber="40">
3114
-
3115
-
3116
- <code class="ruby"> end</code>
3117
- </li>
3118
-
3119
- <li class="never" data-hits="" data-linenumber="41">
3120
-
3121
-
3122
- <code class="ruby">end</code>
3123
- </li>
3124
-
3125
- </ol>
3126
- </pre>
3127
- </div>
3128
-
3129
-
3130
- <div class="source_table" id="70b299798924fab373f866c247e8f20b4f7c2747">
3131
- <div class="header">
3132
- <h3>lib/storyblok/request.rb</h3>
3133
- <h4><span class="yellow">84.21 %</span> covered</h4>
3134
- <div>
3135
- <b>19</b> relevant lines.
3136
- <span class="green"><b>16</b> lines covered</span> and
3137
- <span class="red"><b>3</b> lines missed.</span>
3138
- </div>
3139
- </div>
3140
-
3141
- <pre>
3142
- <ol>
3143
-
3144
- <li class="covered" data-hits="1" data-linenumber="1">
3145
- <span class="hits">1</span>
3146
-
3147
- <code class="ruby">module Storyblok</code>
3148
- </li>
3149
-
3150
- <li class="never" data-hits="" data-linenumber="2">
3151
-
3152
-
3153
- <code class="ruby"> # This object represents a request that is to be made. It gets initialized by the client</code>
3154
- </li>
3155
-
3156
- <li class="never" data-hits="" data-linenumber="3">
3157
-
3158
-
3159
- <code class="ruby"> # with domain specific logic. The client later uses the Request&#39;s #url and #query methods</code>
3160
- </li>
3161
-
3162
- <li class="never" data-hits="" data-linenumber="4">
3163
-
3164
-
3165
- <code class="ruby"> # to execute the HTTP request.</code>
3166
- </li>
3167
-
3168
- <li class="covered" data-hits="1" data-linenumber="5">
3169
- <span class="hits">1</span>
3170
-
3171
- <code class="ruby"> class Request</code>
3172
- </li>
3173
-
3174
- <li class="covered" data-hits="1" data-linenumber="6">
3175
- <span class="hits">1</span>
3176
-
3177
- <code class="ruby"> attr_reader :client, :type, :query, :id, :endpoint</code>
3178
- </li>
3179
-
3180
- <li class="never" data-hits="" data-linenumber="7">
3181
-
3182
-
3183
- <code class="ruby"></code>
3184
- </li>
3185
-
3186
- <li class="covered" data-hits="1" data-linenumber="8">
3187
- <span class="hits">1</span>
3188
-
3189
- <code class="ruby"> def initialize(client, endpoint, query = {}, id = nil, bypass_cache = false)</code>
3190
- </li>
3191
-
3192
- <li class="covered" data-hits="1" data-linenumber="9">
3193
- <span class="hits">1</span>
3194
-
3195
- <code class="ruby"> @client = client</code>
3196
- </li>
3197
-
3198
- <li class="covered" data-hits="1" data-linenumber="10">
3199
- <span class="hits">1</span>
3200
-
3201
- <code class="ruby"> @endpoint = endpoint</code>
3202
- </li>
3203
-
3204
- <li class="covered" data-hits="1" data-linenumber="11">
3205
- <span class="hits">1</span>
3206
-
3207
- <code class="ruby"> @query = query</code>
3208
- </li>
3209
-
3210
- <li class="covered" data-hits="1" data-linenumber="12">
3211
- <span class="hits">1</span>
3212
-
3213
- <code class="ruby"> @bypass_cache = bypass_cache</code>
3214
- </li>
3215
-
3216
- <li class="never" data-hits="" data-linenumber="13">
3217
-
3218
-
3219
- <code class="ruby"></code>
3220
- </li>
3221
-
3222
- <li class="covered" data-hits="1" data-linenumber="14">
3223
- <span class="hits">1</span>
3224
-
3225
- <code class="ruby"> if id</code>
3226
- </li>
3227
-
3228
- <li class="missed" data-hits="0" data-linenumber="15">
3229
-
3230
-
3231
- <code class="ruby"> @type = :single</code>
3232
- </li>
3233
-
3234
- <li class="missed" data-hits="0" data-linenumber="16">
3235
-
3236
-
3237
- <code class="ruby"> @id = id</code>
3238
- </li>
3239
-
3240
- <li class="never" data-hits="" data-linenumber="17">
3241
-
3242
-
3243
- <code class="ruby"> else</code>
3244
- </li>
3245
-
3246
- <li class="covered" data-hits="1" data-linenumber="18">
3247
- <span class="hits">1</span>
3248
-
3249
- <code class="ruby"> @type = :multi</code>
3250
- </li>
3251
-
3252
- <li class="covered" data-hits="1" data-linenumber="19">
3253
- <span class="hits">1</span>
3254
-
3255
- <code class="ruby"> @id = nil</code>
3256
- </li>
3257
-
3258
- <li class="never" data-hits="" data-linenumber="20">
3259
-
3260
-
3261
- <code class="ruby"> end</code>
3262
- </li>
3263
-
3264
- <li class="never" data-hits="" data-linenumber="21">
3265
-
3266
-
3267
- <code class="ruby"> end</code>
3268
- </li>
3269
-
3270
- <li class="never" data-hits="" data-linenumber="22">
3271
-
3272
-
3273
- <code class="ruby"></code>
3274
- </li>
3275
-
3276
- <li class="never" data-hits="" data-linenumber="23">
3277
-
3278
-
3279
- <code class="ruby"> # Returns the final URL, relative to a storyblok space</code>
3280
- </li>
3281
-
3282
- <li class="covered" data-hits="1" data-linenumber="24">
3283
- <span class="hits">1</span>
3284
-
3285
- <code class="ruby"> def url</code>
3286
- </li>
3287
-
3288
- <li class="covered" data-hits="1" data-linenumber="25">
3289
- <span class="hits">1</span>
3290
-
3291
- <code class="ruby"> &quot;#{@endpoint}#{@type == :single ? &quot;/#{id}&quot; : &#39;&#39;}&quot;</code>
3292
- </li>
3293
-
3294
- <li class="never" data-hits="" data-linenumber="26">
3295
-
3296
-
3297
- <code class="ruby"> end</code>
3298
- </li>
3299
-
3300
- <li class="never" data-hits="" data-linenumber="27">
3301
-
3302
-
3303
- <code class="ruby"></code>
3304
- </li>
3305
-
3306
- <li class="never" data-hits="" data-linenumber="28">
3307
-
3308
-
3309
- <code class="ruby"> # Delegates the actual HTTP work to the client</code>
3310
- </li>
3311
-
3312
- <li class="covered" data-hits="1" data-linenumber="29">
3313
- <span class="hits">1</span>
3314
-
3315
- <code class="ruby"> def get</code>
3316
- </li>
3317
-
3318
- <li class="covered" data-hits="1" data-linenumber="30">
3319
- <span class="hits">1</span>
3320
-
3321
- <code class="ruby"> client.cached_get(self, @bypass_cache)</code>
3322
- </li>
3323
-
3324
- <li class="never" data-hits="" data-linenumber="31">
3325
-
3326
-
3327
- <code class="ruby"> end</code>
3328
- </li>
3329
-
3330
- <li class="never" data-hits="" data-linenumber="32">
3331
-
3332
-
3333
- <code class="ruby"></code>
3334
- </li>
3335
-
3336
- <li class="never" data-hits="" data-linenumber="33">
3337
-
3338
-
3339
- <code class="ruby"> # Returns a new Request object with the same data</code>
3340
- </li>
3341
-
3342
- <li class="covered" data-hits="1" data-linenumber="34">
3343
- <span class="hits">1</span>
3344
-
3345
- <code class="ruby"> def copy</code>
3346
- </li>
3347
-
3348
- <li class="missed" data-hits="0" data-linenumber="35">
3349
-
3350
-
3351
- <code class="ruby"> Marshal.load(Marshal.dump(self))</code>
3352
- </li>
3353
-
3354
- <li class="never" data-hits="" data-linenumber="36">
3355
-
3356
-
3357
- <code class="ruby"> end</code>
3358
- </li>
3359
-
3360
- <li class="never" data-hits="" data-linenumber="37">
3361
-
3362
-
3363
- <code class="ruby"> end</code>
3364
- </li>
3365
-
3366
- <li class="never" data-hits="" data-linenumber="38">
3367
-
3368
-
3369
- <code class="ruby">end</code>
3370
- </li>
3371
-
3372
- </ol>
3373
- </pre>
3374
- </div>
3375
-
3376
-
3377
- </div>
3378
- </div>
3379
- </body>
3380
- </html>