venice 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 623d0181a1109a9312e3ec0e3959d97e9b109e7f
4
- data.tar.gz: 39dfbe7bc3f1668f0c2a282506494fc38a23f704
3
+ metadata.gz: d6d310e673f3323b48b9f7e0e3ed3e2f06d612f7
4
+ data.tar.gz: c59a22230d0d7608c20397f32ec3c48de3490f76
5
5
  SHA512:
6
- metadata.gz: e71685d6d348dccf7653f64681866eb062150be75439a9383063cf1573a2eb13729bc41654fd80e0e4ae83624d129fed422e20509bce18290b0a84ea7f13587f
7
- data.tar.gz: e2e7d400d46e95ca8a8cf962ffc2f46e8c63c8a4e34e25ba52f8d289390b5e60a7ff96a532641237e8815284102a670eb92e52f09524a66c25a4885a5a0d73a4
6
+ metadata.gz: e34fb948c42df497b17d2dd37bd0be3f252643075f1c62fa11f52ef07d66c33e3c1a142be224b492366d4e5ac70d195a93206c6be5cca5adada54a81d439575e
7
+ data.tar.gz: 5d4e4898dca5eb9b40eb7c58fce72e6ec140f24efa3e2e94f93559f954a3345df406392edd7e5fd69ded8249f46e69fc609eeab0da9f9e7cbcf64780788f2fb3
data/Gemfile.lock CHANGED
@@ -15,23 +15,23 @@ GEM
15
15
  docile (1.1.5)
16
16
  highline (1.7.8)
17
17
  json (2.1.0)
18
- rake (12.1.0)
19
- rspec (3.6.0)
20
- rspec-core (~> 3.6.0)
21
- rspec-expectations (~> 3.6.0)
22
- rspec-mocks (~> 3.6.0)
23
- rspec-core (3.6.0)
24
- rspec-support (~> 3.6.0)
25
- rspec-expectations (3.6.0)
18
+ rake (12.3.0)
19
+ rspec (3.7.0)
20
+ rspec-core (~> 3.7.0)
21
+ rspec-expectations (~> 3.7.0)
22
+ rspec-mocks (~> 3.7.0)
23
+ rspec-core (3.7.0)
24
+ rspec-support (~> 3.7.0)
25
+ rspec-expectations (3.7.0)
26
26
  diff-lcs (>= 1.2.0, < 2.0)
27
- rspec-support (~> 3.6.0)
27
+ rspec-support (~> 3.7.0)
28
28
  rspec-its (1.2.0)
29
29
  rspec-core (>= 3.0.0)
30
30
  rspec-expectations (>= 3.0.0)
31
- rspec-mocks (3.6.0)
31
+ rspec-mocks (3.7.0)
32
32
  diff-lcs (>= 1.2.0, < 2.0)
33
- rspec-support (~> 3.6.0)
34
- rspec-support (3.6.0)
33
+ rspec-support (~> 3.7.0)
34
+ rspec-support (3.7.0)
35
35
  simplecov (0.15.1)
36
36
  docile (~> 1.1.0)
37
37
  json (>= 1.8, < 3)
@@ -52,4 +52,4 @@ DEPENDENCIES
52
52
  venice!
53
53
 
54
54
  BUNDLED WITH
55
- 1.15.4
55
+ 1.16.0
data/coverage/index.html CHANGED
@@ -14,18 +14,18 @@
14
14
  <img src="./assets/0.10.2/loading.gif" alt="loading"/>
15
15
  </div>
16
16
  <div id="wrapper" style="display:none;">
17
- <div class="timestamp">Generated <abbr class="timeago" title="2017-10-11T13:01:40+03:00">2017-10-11T13:01:40+03:00</abbr></div>
17
+ <div class="timestamp">Generated <abbr class="timeago" title="2017-11-17T22:34:12+01:00">2017-11-17T22:34:12+01:00</abbr></div>
18
18
  <ul class="group_tabs"></ul>
19
19
 
20
20
  <div id="content">
21
21
  <div class="file_list_container" id="AllFiles">
22
22
  <h2>
23
23
  <span class="group_name">All Files</span>
24
- (<span class="covered_percent"><span class="yellow">86.01%</span></span>
24
+ (<span class="covered_percent"><span class="yellow">85.49%</span></span>
25
25
  covered at
26
26
  <span class="covered_strength">
27
27
  <span class="green">
28
- 3.25
28
+ 3.39
29
29
  </span>
30
30
  </span> hits/line)
31
31
  </h2>
@@ -33,8 +33,8 @@
33
33
  <div>
34
34
  <b>6</b> files in total.
35
35
  <b>193</b> relevant lines.
36
- <span class="green"><b>166</b> lines covered</span> and
37
- <span class="red"><b>27</b> lines missed </span>
36
+ <span class="green"><b>165</b> lines covered</span> and
37
+ <span class="red"><b>28</b> lines missed </span>
38
38
  </div>
39
39
  <table class="file_list">
40
40
  <thead>
@@ -62,18 +62,18 @@
62
62
 
63
63
  <tr>
64
64
  <td class="strong"><a href="#d79fadfe1306623a10822709e775b8c021f4fc4e" class="src_link" title="lib/venice/client.rb">lib/venice/client.rb</a></td>
65
- <td class="green strong">91.67 %</td>
66
- <td>85</td>
67
- <td>48</td>
68
- <td>44</td>
65
+ <td class="green strong">91.84 %</td>
66
+ <td>86</td>
67
+ <td>49</td>
68
+ <td>45</td>
69
69
  <td>4</td>
70
- <td>2.3</td>
70
+ <td>2.5</td>
71
71
  </tr>
72
72
 
73
73
  <tr>
74
74
  <td class="strong"><a href="#080477ce0f6d0348fc87b2c6eb5ce94e3b5da4cd" class="src_link" title="lib/venice/in_app_receipt.rb">lib/venice/in_app_receipt.rb</a></td>
75
75
  <td class="green strong">97.06 %</td>
76
- <td>92</td>
76
+ <td>89</td>
77
77
  <td>34</td>
78
78
  <td>33</td>
79
79
  <td>1</td>
@@ -83,7 +83,7 @@
83
83
  <tr>
84
84
  <td class="strong"><a href="#17a12c36d26ef47e82b8c4a1684d8e945c9a9e89" class="src_link" title="lib/venice/pending_renewal_info.rb">lib/venice/pending_renewal_info.rb</a></td>
85
85
  <td class="green strong">95.65 %</td>
86
- <td>66</td>
86
+ <td>64</td>
87
87
  <td>23</td>
88
88
  <td>22</td>
89
89
  <td>1</td>
@@ -92,12 +92,12 @@
92
92
 
93
93
  <tr>
94
94
  <td class="strong"><a href="#10dfdb14e321a7bb364075307e5a80a2a62317af" class="src_link" title="lib/venice/receipt.rb">lib/venice/receipt.rb</a></td>
95
- <td class="red strong">74.07 %</td>
96
- <td>159</td>
97
- <td>81</td>
98
- <td>60</td>
99
- <td>21</td>
100
- <td>2.1</td>
95
+ <td class="red strong">72.5 %</td>
96
+ <td>160</td>
97
+ <td>80</td>
98
+ <td>58</td>
99
+ <td>22</td>
100
+ <td>2.3</td>
101
101
  </tr>
102
102
 
103
103
  <tr>
@@ -178,10 +178,10 @@
178
178
  <div class="source_table" id="d79fadfe1306623a10822709e775b8c021f4fc4e">
179
179
  <div class="header">
180
180
  <h3>lib/venice/client.rb</h3>
181
- <h4><span class="green">91.67 %</span> covered</h4>
181
+ <h4><span class="green">91.84 %</span> covered</h4>
182
182
  <div>
183
- <b>48</b> relevant lines.
184
- <span class="green"><b>44</b> lines covered</span> and
183
+ <b>49</b> relevant lines.
184
+ <span class="green"><b>45</b> lines covered</span> and
185
185
  <span class="red"><b>4</b> lines missed.</span>
186
186
  </div>
187
187
  </div>
@@ -222,13 +222,13 @@
222
222
  <li class="covered" data-hits="1" data-linenumber="6">
223
223
  <span class="hits">1</span>
224
224
 
225
- <code class="ruby"> ITUNES_PRODUCTION_RECEIPT_VERIFICATION_ENDPOINT = &quot;https://buy.itunes.apple.com/verifyReceipt&quot;</code>
225
+ <code class="ruby"> ITUNES_PRODUCTION_RECEIPT_VERIFICATION_ENDPOINT = &#39;https://buy.itunes.apple.com/verifyReceipt&#39;</code>
226
226
  </li>
227
227
 
228
228
  <li class="covered" data-hits="1" data-linenumber="7">
229
229
  <span class="hits">1</span>
230
230
 
231
- <code class="ruby"> ITUNES_DEVELOPMENT_RECEIPT_VERIFICATION_ENDPOINT = &quot;https://sandbox.itunes.apple.com/verifyReceipt&quot;</code>
231
+ <code class="ruby"> ITUNES_DEVELOPMENT_RECEIPT_VERIFICATION_ENDPOINT = &#39;https://sandbox.itunes.apple.com/verifyReceipt&#39;</code>
232
232
  </li>
233
233
 
234
234
  <li class="never" data-hits="" data-linenumber="8">
@@ -276,7 +276,7 @@
276
276
  <li class="missed" data-hits="0" data-linenumber="15">
277
277
 
278
278
 
279
- <code class="ruby"> client = self.new</code>
279
+ <code class="ruby"> client = new</code>
280
280
  </li>
281
281
 
282
282
  <li class="missed" data-hits="0" data-linenumber="16">
@@ -312,7 +312,7 @@
312
312
  <li class="covered" data-hits="1" data-linenumber="21">
313
313
  <span class="hits">1</span>
314
314
 
315
- <code class="ruby"> client = self.new</code>
315
+ <code class="ruby"> client = new</code>
316
316
  </li>
317
317
 
318
318
  <li class="covered" data-hits="1" data-linenumber="22">
@@ -351,8 +351,8 @@
351
351
  <code class="ruby"> def initialize</code>
352
352
  </li>
353
353
 
354
- <li class="covered" data-hits="5" data-linenumber="28">
355
- <span class="hits">5</span>
354
+ <li class="covered" data-hits="6" data-linenumber="28">
355
+ <span class="hits">6</span>
356
356
 
357
357
  <code class="ruby"> @verification_url = ENV[&#39;IAP_VERIFICATION_ENDPOINT&#39;]</code>
358
358
  </li>
@@ -375,14 +375,14 @@
375
375
  <code class="ruby"> def verify!(data, options = {})</code>
376
376
  </li>
377
377
 
378
- <li class="covered" data-hits="5" data-linenumber="32">
379
- <span class="hits">5</span>
378
+ <li class="covered" data-hits="6" data-linenumber="32">
379
+ <span class="hits">6</span>
380
380
 
381
381
  <code class="ruby"> @verification_url ||= ITUNES_DEVELOPMENT_RECEIPT_VERIFICATION_ENDPOINT</code>
382
382
  </li>
383
383
 
384
- <li class="covered" data-hits="5" data-linenumber="33">
385
- <span class="hits">5</span>
384
+ <li class="covered" data-hits="6" data-linenumber="33">
385
+ <span class="hits">6</span>
386
386
 
387
387
  <code class="ruby"> @shared_secret = options[:shared_secret] if options[:shared_secret]</code>
388
388
  </li>
@@ -393,307 +393,313 @@
393
393
  <code class="ruby"></code>
394
394
  </li>
395
395
 
396
- <li class="covered" data-hits="5" data-linenumber="35">
397
- <span class="hits">5</span>
396
+ <li class="covered" data-hits="6" data-linenumber="35">
397
+ <span class="hits">6</span>
398
398
 
399
399
  <code class="ruby"> json = json_response_from_verifying_data(data)</code>
400
400
  </li>
401
401
 
402
- <li class="covered" data-hits="5" data-linenumber="36">
403
- <span class="hits">5</span>
402
+ <li class="covered" data-hits="6" data-linenumber="36">
403
+ <span class="hits">6</span>
404
404
 
405
- <code class="ruby"> status, receipt_attributes = json[&#39;status&#39;].to_i, json[&#39;receipt&#39;]</code>
405
+ <code class="ruby"> status = json[&#39;status&#39;].to_i</code>
406
406
  </li>
407
407
 
408
- <li class="covered" data-hits="5" data-linenumber="37">
409
- <span class="hits">5</span>
408
+ <li class="covered" data-hits="6" data-linenumber="37">
409
+ <span class="hits">6</span>
410
+
411
+ <code class="ruby"> receipt_attributes = json[&#39;receipt&#39;].dup</code>
412
+ </li>
413
+
414
+ <li class="covered" data-hits="6" data-linenumber="38">
415
+ <span class="hits">6</span>
410
416
 
411
417
  <code class="ruby"> receipt_attributes[&#39;original_json_response&#39;] = json if receipt_attributes</code>
412
418
  </li>
413
419
 
414
- <li class="never" data-hits="" data-linenumber="38">
420
+ <li class="never" data-hits="" data-linenumber="39">
415
421
 
416
422
 
417
423
  <code class="ruby"></code>
418
424
  </li>
419
425
 
420
- <li class="covered" data-hits="5" data-linenumber="39">
421
- <span class="hits">5</span>
426
+ <li class="covered" data-hits="6" data-linenumber="40">
427
+ <span class="hits">6</span>
422
428
 
423
429
  <code class="ruby"> case status</code>
424
430
  </li>
425
431
 
426
- <li class="never" data-hits="" data-linenumber="40">
432
+ <li class="never" data-hits="" data-linenumber="41">
427
433
 
428
434
 
429
435
  <code class="ruby"> when 0, 21006</code>
430
436
  </li>
431
437
 
432
- <li class="covered" data-hits="5" data-linenumber="41">
433
- <span class="hits">5</span>
438
+ <li class="covered" data-hits="6" data-linenumber="42">
439
+ <span class="hits">6</span>
434
440
 
435
441
  <code class="ruby"> receipt = Receipt.new(receipt_attributes)</code>
436
442
  </li>
437
443
 
438
- <li class="never" data-hits="" data-linenumber="42">
444
+ <li class="never" data-hits="" data-linenumber="43">
439
445
 
440
446
 
441
447
  <code class="ruby"></code>
442
448
  </li>
443
449
 
444
- <li class="never" data-hits="" data-linenumber="43">
450
+ <li class="never" data-hits="" data-linenumber="44">
445
451
 
446
452
 
447
453
  <code class="ruby"> # From Apple docs:</code>
448
454
  </li>
449
455
 
450
- <li class="never" data-hits="" data-linenumber="44">
456
+ <li class="never" data-hits="" data-linenumber="45">
451
457
 
452
458
 
453
459
  <code class="ruby"> # &gt; Only returned for iOS 6 style transaction receipts for auto-renewable subscriptions.</code>
454
460
  </li>
455
461
 
456
- <li class="never" data-hits="" data-linenumber="45">
462
+ <li class="never" data-hits="" data-linenumber="46">
457
463
 
458
464
 
459
465
  <code class="ruby"> # &gt; The JSON representation of the receipt for the most recent renewal</code>
460
466
  </li>
461
467
 
462
- <li class="covered" data-hits="5" data-linenumber="46">
463
- <span class="hits">5</span>
468
+ <li class="covered" data-hits="6" data-linenumber="47">
469
+ <span class="hits">6</span>
464
470
 
465
471
  <code class="ruby"> if latest_receipt_info_attributes = json[&#39;latest_receipt_info&#39;]</code>
466
472
  </li>
467
473
 
468
- <li class="never" data-hits="" data-linenumber="47">
474
+ <li class="never" data-hits="" data-linenumber="48">
469
475
 
470
476
 
471
477
  <code class="ruby"> # AppStore returns &#39;latest_receipt_info&#39; even if we use over iOS 6. Besides, its format is an Array.</code>
472
478
  </li>
473
479
 
474
- <li class="covered" data-hits="1" data-linenumber="48">
480
+ <li class="covered" data-hits="1" data-linenumber="49">
475
481
  <span class="hits">1</span>
476
482
 
477
483
  <code class="ruby"> receipt.latest_receipt_info = []</code>
478
484
  </li>
479
485
 
480
- <li class="covered" data-hits="1" data-linenumber="49">
486
+ <li class="covered" data-hits="1" data-linenumber="50">
481
487
  <span class="hits">1</span>
482
488
 
483
489
  <code class="ruby"> latest_receipt_info_attributes.each do |latest_receipt_info_attribute|</code>
484
490
  </li>
485
491
 
486
- <li class="never" data-hits="" data-linenumber="50">
492
+ <li class="never" data-hits="" data-linenumber="51">
487
493
 
488
494
 
489
495
  <code class="ruby"> # latest_receipt_info format is identical with in_app</code>
490
496
  </li>
491
497
 
492
- <li class="covered" data-hits="1" data-linenumber="51">
498
+ <li class="covered" data-hits="1" data-linenumber="52">
493
499
  <span class="hits">1</span>
494
500
 
495
501
  <code class="ruby"> receipt.latest_receipt_info &lt;&lt; InAppReceipt.new(latest_receipt_info_attribute)</code>
496
502
  </li>
497
503
 
498
- <li class="never" data-hits="" data-linenumber="52">
504
+ <li class="never" data-hits="" data-linenumber="53">
499
505
 
500
506
 
501
507
  <code class="ruby"> end</code>
502
508
  </li>
503
509
 
504
- <li class="never" data-hits="" data-linenumber="53">
510
+ <li class="never" data-hits="" data-linenumber="54">
505
511
 
506
512
 
507
513
  <code class="ruby"> end</code>
508
514
  </li>
509
515
 
510
- <li class="never" data-hits="" data-linenumber="54">
516
+ <li class="never" data-hits="" data-linenumber="55">
511
517
 
512
518
 
513
519
  <code class="ruby"></code>
514
520
  </li>
515
521
 
516
- <li class="covered" data-hits="5" data-linenumber="55">
517
- <span class="hits">5</span>
522
+ <li class="covered" data-hits="6" data-linenumber="56">
523
+ <span class="hits">6</span>
518
524
 
519
525
  <code class="ruby"> return receipt</code>
520
526
  </li>
521
527
 
522
- <li class="never" data-hits="" data-linenumber="56">
528
+ <li class="never" data-hits="" data-linenumber="57">
523
529
 
524
530
 
525
531
  <code class="ruby"> else</code>
526
532
  </li>
527
533
 
528
- <li class="missed" data-hits="0" data-linenumber="57">
534
+ <li class="missed" data-hits="0" data-linenumber="58">
529
535
 
530
536
 
531
537
  <code class="ruby"> raise Receipt::VerificationError.new(status, receipt)</code>
532
538
  </li>
533
539
 
534
- <li class="never" data-hits="" data-linenumber="58">
540
+ <li class="never" data-hits="" data-linenumber="59">
535
541
 
536
542
 
537
543
  <code class="ruby"> end</code>
538
544
  </li>
539
545
 
540
- <li class="never" data-hits="" data-linenumber="59">
546
+ <li class="never" data-hits="" data-linenumber="60">
541
547
 
542
548
 
543
549
  <code class="ruby"> end</code>
544
550
  </li>
545
551
 
546
- <li class="never" data-hits="" data-linenumber="60">
552
+ <li class="never" data-hits="" data-linenumber="61">
547
553
 
548
554
 
549
555
  <code class="ruby"></code>
550
556
  </li>
551
557
 
552
- <li class="covered" data-hits="1" data-linenumber="61">
558
+ <li class="covered" data-hits="1" data-linenumber="62">
553
559
  <span class="hits">1</span>
554
560
 
555
561
  <code class="ruby"> private</code>
556
562
  </li>
557
563
 
558
- <li class="never" data-hits="" data-linenumber="62">
564
+ <li class="never" data-hits="" data-linenumber="63">
559
565
 
560
566
 
561
567
  <code class="ruby"></code>
562
568
  </li>
563
569
 
564
- <li class="covered" data-hits="1" data-linenumber="63">
570
+ <li class="covered" data-hits="1" data-linenumber="64">
565
571
  <span class="hits">1</span>
566
572
 
567
573
  <code class="ruby"> def json_response_from_verifying_data(data)</code>
568
574
  </li>
569
575
 
570
- <li class="covered" data-hits="3" data-linenumber="64">
576
+ <li class="covered" data-hits="3" data-linenumber="65">
571
577
  <span class="hits">3</span>
572
578
 
573
579
  <code class="ruby"> parameters = {</code>
574
580
  </li>
575
581
 
576
- <li class="never" data-hits="" data-linenumber="65">
582
+ <li class="never" data-hits="" data-linenumber="66">
577
583
 
578
584
 
579
585
  <code class="ruby"> &#39;receipt-data&#39; =&gt; data</code>
580
586
  </li>
581
587
 
582
- <li class="never" data-hits="" data-linenumber="66">
588
+ <li class="never" data-hits="" data-linenumber="67">
583
589
 
584
590
 
585
591
  <code class="ruby"> }</code>
586
592
  </li>
587
593
 
588
- <li class="never" data-hits="" data-linenumber="67">
594
+ <li class="never" data-hits="" data-linenumber="68">
589
595
 
590
596
 
591
597
  <code class="ruby"></code>
592
598
  </li>
593
599
 
594
- <li class="covered" data-hits="3" data-linenumber="68">
600
+ <li class="covered" data-hits="3" data-linenumber="69">
595
601
  <span class="hits">3</span>
596
602
 
597
603
  <code class="ruby"> parameters[&#39;password&#39;] = @shared_secret if @shared_secret</code>
598
604
  </li>
599
605
 
600
- <li class="never" data-hits="" data-linenumber="69">
606
+ <li class="never" data-hits="" data-linenumber="70">
601
607
 
602
608
 
603
609
  <code class="ruby"></code>
604
610
  </li>
605
611
 
606
- <li class="covered" data-hits="3" data-linenumber="70">
612
+ <li class="covered" data-hits="3" data-linenumber="71">
607
613
  <span class="hits">3</span>
608
614
 
609
615
  <code class="ruby"> uri = URI(@verification_url)</code>
610
616
  </li>
611
617
 
612
- <li class="covered" data-hits="3" data-linenumber="71">
618
+ <li class="covered" data-hits="3" data-linenumber="72">
613
619
  <span class="hits">3</span>
614
620
 
615
621
  <code class="ruby"> http = Net::HTTP.new(uri.host, uri.port)</code>
616
622
  </li>
617
623
 
618
- <li class="covered" data-hits="3" data-linenumber="72">
624
+ <li class="covered" data-hits="3" data-linenumber="73">
619
625
  <span class="hits">3</span>
620
626
 
621
627
  <code class="ruby"> http.use_ssl = true</code>
622
628
  </li>
623
629
 
624
- <li class="covered" data-hits="3" data-linenumber="73">
630
+ <li class="covered" data-hits="3" data-linenumber="74">
625
631
  <span class="hits">3</span>
626
632
 
627
633
  <code class="ruby"> http.verify_mode = OpenSSL::SSL::VERIFY_PEER</code>
628
634
  </li>
629
635
 
630
- <li class="never" data-hits="" data-linenumber="74">
636
+ <li class="never" data-hits="" data-linenumber="75">
631
637
 
632
638
 
633
639
  <code class="ruby"></code>
634
640
  </li>
635
641
 
636
- <li class="covered" data-hits="3" data-linenumber="75">
642
+ <li class="covered" data-hits="3" data-linenumber="76">
637
643
  <span class="hits">3</span>
638
644
 
639
645
  <code class="ruby"> request = Net::HTTP::Post.new(uri.request_uri)</code>
640
646
  </li>
641
647
 
642
- <li class="covered" data-hits="3" data-linenumber="76">
648
+ <li class="covered" data-hits="3" data-linenumber="77">
643
649
  <span class="hits">3</span>
644
650
 
645
- <code class="ruby"> request[&#39;Accept&#39;] = &quot;application/json&quot;</code>
651
+ <code class="ruby"> request[&#39;Accept&#39;] = &#39;application/json&#39;</code>
646
652
  </li>
647
653
 
648
- <li class="covered" data-hits="3" data-linenumber="77">
654
+ <li class="covered" data-hits="3" data-linenumber="78">
649
655
  <span class="hits">3</span>
650
656
 
651
- <code class="ruby"> request[&#39;Content-Type&#39;] = &quot;application/json&quot;</code>
657
+ <code class="ruby"> request[&#39;Content-Type&#39;] = &#39;application/json&#39;</code>
652
658
  </li>
653
659
 
654
- <li class="covered" data-hits="3" data-linenumber="78">
660
+ <li class="covered" data-hits="3" data-linenumber="79">
655
661
  <span class="hits">3</span>
656
662
 
657
663
  <code class="ruby"> request.body = parameters.to_json</code>
658
664
  </li>
659
665
 
660
- <li class="never" data-hits="" data-linenumber="79">
666
+ <li class="never" data-hits="" data-linenumber="80">
661
667
 
662
668
 
663
669
  <code class="ruby"></code>
664
670
  </li>
665
671
 
666
- <li class="covered" data-hits="3" data-linenumber="80">
672
+ <li class="covered" data-hits="3" data-linenumber="81">
667
673
  <span class="hits">3</span>
668
674
 
669
675
  <code class="ruby"> response = http.request(request)</code>
670
676
  </li>
671
677
 
672
- <li class="never" data-hits="" data-linenumber="81">
678
+ <li class="never" data-hits="" data-linenumber="82">
673
679
 
674
680
 
675
681
  <code class="ruby"></code>
676
682
  </li>
677
683
 
678
- <li class="covered" data-hits="3" data-linenumber="82">
684
+ <li class="covered" data-hits="3" data-linenumber="83">
679
685
  <span class="hits">3</span>
680
686
 
681
687
  <code class="ruby"> JSON.parse(response.body)</code>
682
688
  </li>
683
689
 
684
- <li class="never" data-hits="" data-linenumber="83">
690
+ <li class="never" data-hits="" data-linenumber="84">
685
691
 
686
692
 
687
693
  <code class="ruby"> end</code>
688
694
  </li>
689
695
 
690
- <li class="never" data-hits="" data-linenumber="84">
696
+ <li class="never" data-hits="" data-linenumber="85">
691
697
 
692
698
 
693
699
  <code class="ruby"> end</code>
694
700
  </li>
695
701
 
696
- <li class="never" data-hits="" data-linenumber="85">
702
+ <li class="never" data-hits="" data-linenumber="86">
697
703
 
698
704
 
699
705
  <code class="ruby">end</code>
@@ -982,289 +988,271 @@
982
988
  <code class="ruby"></code>
983
989
  </li>
984
990
 
985
- <li class="never" data-hits="" data-linenumber="45">
986
-
987
-
988
- <code class="ruby"></code>
989
- </li>
990
-
991
- <li class="covered" data-hits="1" data-linenumber="46">
991
+ <li class="covered" data-hits="1" data-linenumber="45">
992
992
  <span class="hits">1</span>
993
993
 
994
994
  <code class="ruby"> def initialize(attributes = {})</code>
995
995
  </li>
996
996
 
997
- <li class="covered" data-hits="24" data-linenumber="47">
997
+ <li class="covered" data-hits="24" data-linenumber="46">
998
998
  <span class="hits">24</span>
999
999
 
1000
1000
  <code class="ruby"> @quantity = Integer(attributes[&#39;quantity&#39;]) if attributes[&#39;quantity&#39;]</code>
1001
1001
  </li>
1002
1002
 
1003
- <li class="covered" data-hits="24" data-linenumber="48">
1003
+ <li class="covered" data-hits="24" data-linenumber="47">
1004
1004
  <span class="hits">24</span>
1005
1005
 
1006
1006
  <code class="ruby"> @product_id = attributes[&#39;product_id&#39;]</code>
1007
1007
  </li>
1008
1008
 
1009
- <li class="covered" data-hits="24" data-linenumber="49">
1009
+ <li class="covered" data-hits="24" data-linenumber="48">
1010
1010
  <span class="hits">24</span>
1011
1011
 
1012
1012
  <code class="ruby"> @transaction_id = attributes[&#39;transaction_id&#39;]</code>
1013
1013
  </li>
1014
1014
 
1015
- <li class="covered" data-hits="24" data-linenumber="50">
1015
+ <li class="covered" data-hits="24" data-linenumber="49">
1016
1016
  <span class="hits">24</span>
1017
1017
 
1018
1018
  <code class="ruby"> @purchased_at = DateTime.parse(attributes[&#39;purchase_date&#39;]) if attributes[&#39;purchase_date&#39;]</code>
1019
1019
  </li>
1020
1020
 
1021
- <li class="covered" data-hits="24" data-linenumber="51">
1021
+ <li class="covered" data-hits="24" data-linenumber="50">
1022
1022
  <span class="hits">24</span>
1023
1023
 
1024
1024
  <code class="ruby"> @app_item_id = attributes[&#39;app_item_id&#39;]</code>
1025
1025
  </li>
1026
1026
 
1027
- <li class="covered" data-hits="24" data-linenumber="52">
1027
+ <li class="covered" data-hits="24" data-linenumber="51">
1028
1028
  <span class="hits">24</span>
1029
1029
 
1030
1030
  <code class="ruby"> @version_external_identifier = attributes[&#39;version_external_identifier&#39;]</code>
1031
1031
  </li>
1032
1032
 
1033
- <li class="never" data-hits="" data-linenumber="53">
1033
+ <li class="never" data-hits="" data-linenumber="52">
1034
1034
 
1035
1035
 
1036
1036
  <code class="ruby"></code>
1037
1037
  </li>
1038
1038
 
1039
- <li class="never" data-hits="" data-linenumber="54">
1039
+ <li class="never" data-hits="" data-linenumber="53">
1040
1040
 
1041
1041
 
1042
1042
  <code class="ruby"> # expires_date is in ms since the Epoch, Time.at expects seconds</code>
1043
1043
  </li>
1044
1044
 
1045
- <li class="covered" data-hits="24" data-linenumber="55">
1045
+ <li class="covered" data-hits="24" data-linenumber="54">
1046
1046
  <span class="hits">24</span>
1047
1047
 
1048
1048
  <code class="ruby"> @expires_at = Time.at(attributes[&#39;expires_date_ms&#39;].to_i / 1000) if attributes[&#39;expires_date_ms&#39;]</code>
1049
1049
  </li>
1050
1050
 
1051
- <li class="never" data-hits="" data-linenumber="56">
1051
+ <li class="never" data-hits="" data-linenumber="55">
1052
1052
 
1053
1053
 
1054
1054
  <code class="ruby"></code>
1055
1055
  </li>
1056
1056
 
1057
- <li class="never" data-hits="" data-linenumber="57">
1057
+ <li class="never" data-hits="" data-linenumber="56">
1058
1058
 
1059
1059
 
1060
1060
  <code class="ruby"> # cancellation_date is in ms since the Epoch, Time.at expects seconds</code>
1061
1061
  </li>
1062
1062
 
1063
- <li class="covered" data-hits="24" data-linenumber="58">
1063
+ <li class="covered" data-hits="24" data-linenumber="57">
1064
1064
  <span class="hits">24</span>
1065
1065
 
1066
1066
  <code class="ruby"> @cancellation_at = Time.at(attributes[&#39;cancellation_date_ms&#39;].to_i / 1000) if attributes[&#39;cancellation_date_ms&#39;]</code>
1067
1067
  </li>
1068
1068
 
1069
- <li class="never" data-hits="" data-linenumber="59">
1069
+ <li class="never" data-hits="" data-linenumber="58">
1070
1070
 
1071
1071
 
1072
1072
  <code class="ruby"></code>
1073
1073
  </li>
1074
1074
 
1075
- <li class="covered" data-hits="24" data-linenumber="60">
1075
+ <li class="covered" data-hits="24" data-linenumber="59">
1076
1076
  <span class="hits">24</span>
1077
1077
 
1078
1078
  <code class="ruby"> if attributes[&#39;original_transaction_id&#39;] || attributes[&#39;original_purchase_date&#39;]</code>
1079
1079
  </li>
1080
1080
 
1081
- <li class="covered" data-hits="12" data-linenumber="61">
1081
+ <li class="covered" data-hits="12" data-linenumber="60">
1082
1082
  <span class="hits">12</span>
1083
1083
 
1084
1084
  <code class="ruby"> original_attributes = {</code>
1085
1085
  </li>
1086
1086
 
1087
- <li class="never" data-hits="" data-linenumber="62">
1087
+ <li class="never" data-hits="" data-linenumber="61">
1088
1088
 
1089
1089
 
1090
1090
  <code class="ruby"> &#39;transaction_id&#39; =&gt; attributes[&#39;original_transaction_id&#39;],</code>
1091
1091
  </li>
1092
1092
 
1093
- <li class="never" data-hits="" data-linenumber="63">
1093
+ <li class="never" data-hits="" data-linenumber="62">
1094
1094
 
1095
1095
 
1096
1096
  <code class="ruby"> &#39;purchase_date&#39; =&gt; attributes[&#39;original_purchase_date&#39;]</code>
1097
1097
  </li>
1098
1098
 
1099
- <li class="never" data-hits="" data-linenumber="64">
1099
+ <li class="never" data-hits="" data-linenumber="63">
1100
1100
 
1101
1101
 
1102
1102
  <code class="ruby"> }</code>
1103
1103
  </li>
1104
1104
 
1105
- <li class="never" data-hits="" data-linenumber="65">
1105
+ <li class="never" data-hits="" data-linenumber="64">
1106
1106
 
1107
1107
 
1108
1108
  <code class="ruby"></code>
1109
1109
  </li>
1110
1110
 
1111
- <li class="covered" data-hits="12" data-linenumber="66">
1111
+ <li class="covered" data-hits="12" data-linenumber="65">
1112
1112
  <span class="hits">12</span>
1113
1113
 
1114
1114
  <code class="ruby"> self.original = InAppReceipt.new(original_attributes)</code>
1115
1115
  </li>
1116
1116
 
1117
- <li class="never" data-hits="" data-linenumber="67">
1117
+ <li class="never" data-hits="" data-linenumber="66">
1118
1118
 
1119
1119
 
1120
1120
  <code class="ruby"> end</code>
1121
1121
  </li>
1122
1122
 
1123
- <li class="never" data-hits="" data-linenumber="68">
1124
-
1125
-
1126
- <code class="ruby"></code>
1127
- </li>
1128
-
1129
- <li class="never" data-hits="" data-linenumber="69">
1123
+ <li class="never" data-hits="" data-linenumber="67">
1130
1124
 
1131
1125
 
1132
1126
  <code class="ruby"> end</code>
1133
1127
  </li>
1134
1128
 
1135
- <li class="never" data-hits="" data-linenumber="70">
1129
+ <li class="never" data-hits="" data-linenumber="68">
1136
1130
 
1137
1131
 
1138
1132
  <code class="ruby"></code>
1139
1133
  </li>
1140
1134
 
1141
- <li class="covered" data-hits="1" data-linenumber="71">
1135
+ <li class="covered" data-hits="1" data-linenumber="69">
1142
1136
  <span class="hits">1</span>
1143
1137
 
1144
1138
  <code class="ruby"> def to_hash</code>
1145
1139
  </li>
1146
1140
 
1147
- <li class="never" data-hits="" data-linenumber="72">
1141
+ <li class="never" data-hits="" data-linenumber="70">
1148
1142
 
1149
1143
 
1150
1144
  <code class="ruby"> {</code>
1151
1145
  </li>
1152
1146
 
1153
- <li class="never" data-hits="" data-linenumber="73">
1147
+ <li class="never" data-hits="" data-linenumber="71">
1154
1148
 
1155
1149
 
1156
- <code class="ruby"> :quantity =&gt; @quantity,</code>
1150
+ <code class="ruby"> quantity: @quantity,</code>
1157
1151
  </li>
1158
1152
 
1159
- <li class="never" data-hits="" data-linenumber="74">
1153
+ <li class="never" data-hits="" data-linenumber="72">
1160
1154
 
1161
1155
 
1162
- <code class="ruby"> :product_id =&gt; @product_id,</code>
1156
+ <code class="ruby"> product_id: @product_id,</code>
1163
1157
  </li>
1164
1158
 
1165
- <li class="never" data-hits="" data-linenumber="75">
1159
+ <li class="never" data-hits="" data-linenumber="73">
1166
1160
 
1167
1161
 
1168
- <code class="ruby"> :transaction_id =&gt; @transaction_id,</code>
1162
+ <code class="ruby"> transaction_id: @transaction_id,</code>
1169
1163
  </li>
1170
1164
 
1171
- <li class="covered" data-hits="2" data-linenumber="76">
1165
+ <li class="covered" data-hits="2" data-linenumber="74">
1172
1166
  <span class="hits">2</span>
1173
1167
 
1174
- <code class="ruby"> :purchase_date =&gt; (@purchased_at.httpdate rescue nil),</code>
1168
+ <code class="ruby"> purchase_date: (@purchased_at.httpdate rescue nil),</code>
1175
1169
  </li>
1176
1170
 
1177
- <li class="covered" data-hits="2" data-linenumber="77">
1171
+ <li class="covered" data-hits="2" data-linenumber="75">
1178
1172
  <span class="hits">2</span>
1179
1173
 
1180
- <code class="ruby"> :original_transaction_id =&gt; (@original.transaction_id rescue nil),</code>
1174
+ <code class="ruby"> original_transaction_id: (@original.transaction_id rescue nil),</code>
1181
1175
  </li>
1182
1176
 
1183
- <li class="covered" data-hits="2" data-linenumber="78">
1177
+ <li class="covered" data-hits="2" data-linenumber="76">
1184
1178
  <span class="hits">2</span>
1185
1179
 
1186
- <code class="ruby"> :original_purchase_date =&gt; (@original.purchased_at.httpdate rescue nil),</code>
1180
+ <code class="ruby"> original_purchase_date: (@original.purchased_at.httpdate rescue nil),</code>
1187
1181
  </li>
1188
1182
 
1189
- <li class="never" data-hits="" data-linenumber="79">
1183
+ <li class="never" data-hits="" data-linenumber="77">
1190
1184
 
1191
1185
 
1192
- <code class="ruby"> :app_item_id =&gt; @app_item_id,</code>
1186
+ <code class="ruby"> app_item_id: @app_item_id,</code>
1193
1187
  </li>
1194
1188
 
1195
- <li class="never" data-hits="" data-linenumber="80">
1189
+ <li class="never" data-hits="" data-linenumber="78">
1196
1190
 
1197
1191
 
1198
- <code class="ruby"> :version_external_identifier =&gt; @version_external_identifier,</code>
1192
+ <code class="ruby"> version_external_identifier: @version_external_identifier,</code>
1199
1193
  </li>
1200
1194
 
1201
- <li class="covered" data-hits="2" data-linenumber="81">
1195
+ <li class="covered" data-hits="2" data-linenumber="79">
1202
1196
  <span class="hits">2</span>
1203
1197
 
1204
- <code class="ruby"> :expires_at =&gt; (@expires_at.httpdate rescue nil),</code>
1198
+ <code class="ruby"> expires_at: (@expires_at.httpdate rescue nil),</code>
1205
1199
  </li>
1206
1200
 
1207
- <li class="covered" data-hits="2" data-linenumber="82">
1201
+ <li class="covered" data-hits="2" data-linenumber="80">
1208
1202
  <span class="hits">2</span>
1209
1203
 
1210
- <code class="ruby"> :cancellation_at =&gt; (@cancellation_at.httpdate rescue nil)</code>
1204
+ <code class="ruby"> cancellation_at: (@cancellation_at.httpdate rescue nil)</code>
1211
1205
  </li>
1212
1206
 
1213
- <li class="covered" data-hits="2" data-linenumber="83">
1207
+ <li class="covered" data-hits="2" data-linenumber="81">
1214
1208
  <span class="hits">2</span>
1215
1209
 
1216
1210
  <code class="ruby"> }</code>
1217
1211
  </li>
1218
1212
 
1219
- <li class="never" data-hits="" data-linenumber="84">
1213
+ <li class="never" data-hits="" data-linenumber="82">
1220
1214
 
1221
1215
 
1222
1216
  <code class="ruby"> end</code>
1223
1217
  </li>
1224
1218
 
1225
- <li class="covered" data-hits="1" data-linenumber="85">
1219
+ <li class="covered" data-hits="1" data-linenumber="83">
1226
1220
  <span class="hits">1</span>
1227
1221
 
1228
1222
  <code class="ruby"> alias_method :to_h, :to_hash</code>
1229
1223
  </li>
1230
1224
 
1231
- <li class="never" data-hits="" data-linenumber="86">
1225
+ <li class="never" data-hits="" data-linenumber="84">
1232
1226
 
1233
1227
 
1234
1228
  <code class="ruby"></code>
1235
1229
  </li>
1236
1230
 
1237
- <li class="covered" data-hits="1" data-linenumber="87">
1231
+ <li class="covered" data-hits="1" data-linenumber="85">
1238
1232
  <span class="hits">1</span>
1239
1233
 
1240
1234
  <code class="ruby"> def to_json</code>
1241
1235
  </li>
1242
1236
 
1243
- <li class="missed" data-hits="0" data-linenumber="88">
1237
+ <li class="missed" data-hits="0" data-linenumber="86">
1244
1238
 
1245
1239
 
1246
- <code class="ruby"> self.to_hash.to_json</code>
1240
+ <code class="ruby"> to_hash.to_json</code>
1247
1241
  </li>
1248
1242
 
1249
- <li class="never" data-hits="" data-linenumber="89">
1243
+ <li class="never" data-hits="" data-linenumber="87">
1250
1244
 
1251
1245
 
1252
1246
  <code class="ruby"> end</code>
1253
1247
  </li>
1254
1248
 
1255
- <li class="never" data-hits="" data-linenumber="90">
1256
-
1257
-
1258
- <code class="ruby"></code>
1259
- </li>
1260
-
1261
- <li class="never" data-hits="" data-linenumber="91">
1249
+ <li class="never" data-hits="" data-linenumber="88">
1262
1250
 
1263
1251
 
1264
1252
  <code class="ruby"> end</code>
1265
1253
  </li>
1266
1254
 
1267
- <li class="never" data-hits="" data-linenumber="92">
1255
+ <li class="never" data-hits="" data-linenumber="89">
1268
1256
 
1269
1257
 
1270
1258
  <code class="ruby">end</code>
@@ -1304,382 +1292,370 @@
1304
1292
  <li class="never" data-hits="" data-linenumber="3">
1305
1293
 
1306
1294
 
1307
- <code class="ruby"></code>
1308
- </li>
1309
-
1310
- <li class="never" data-hits="" data-linenumber="4">
1311
-
1312
-
1313
1295
  <code class="ruby"> # For an expired subscription, the reason for the subscription expiration.</code>
1314
1296
  </li>
1315
1297
 
1316
- <li class="never" data-hits="" data-linenumber="5">
1298
+ <li class="never" data-hits="" data-linenumber="4">
1317
1299
 
1318
1300
 
1319
- <code class="ruby"> # This key is only present for a receipt containing an expired auto-renewable subscription. </code>
1301
+ <code class="ruby"> # This key is only present for a receipt containing an expired auto-renewable subscription.</code>
1320
1302
  </li>
1321
1303
 
1322
- <li class="covered" data-hits="1" data-linenumber="6">
1304
+ <li class="covered" data-hits="1" data-linenumber="5">
1323
1305
  <span class="hits">1</span>
1324
1306
 
1325
1307
  <code class="ruby"> attr_reader :expiration_intent</code>
1326
1308
  </li>
1327
1309
 
1328
- <li class="never" data-hits="" data-linenumber="7">
1310
+ <li class="never" data-hits="" data-linenumber="6">
1329
1311
 
1330
1312
 
1331
1313
  <code class="ruby"></code>
1332
1314
  </li>
1333
1315
 
1334
- <li class="never" data-hits="" data-linenumber="8">
1316
+ <li class="never" data-hits="" data-linenumber="7">
1335
1317
 
1336
1318
 
1337
1319
  <code class="ruby"> # The current renewal status for the auto-renewable subscription.</code>
1338
1320
  </li>
1339
1321
 
1340
- <li class="never" data-hits="" data-linenumber="9">
1322
+ <li class="never" data-hits="" data-linenumber="8">
1341
1323
 
1342
1324
 
1343
1325
  <code class="ruby"> # This key is only present for auto-renewable subscription receipts, for active or expired subscriptions</code>
1344
1326
  </li>
1345
1327
 
1346
- <li class="covered" data-hits="1" data-linenumber="10">
1328
+ <li class="covered" data-hits="1" data-linenumber="9">
1347
1329
  <span class="hits">1</span>
1348
1330
 
1349
1331
  <code class="ruby"> attr_reader :auto_renew_status</code>
1350
1332
  </li>
1351
1333
 
1352
- <li class="never" data-hits="" data-linenumber="11">
1334
+ <li class="never" data-hits="" data-linenumber="10">
1353
1335
 
1354
1336
 
1355
1337
  <code class="ruby"></code>
1356
1338
  </li>
1357
1339
 
1358
- <li class="never" data-hits="" data-linenumber="12">
1340
+ <li class="never" data-hits="" data-linenumber="11">
1359
1341
 
1360
1342
 
1361
1343
  <code class="ruby"> # The current renewal preference for the auto-renewable subscription.</code>
1362
1344
  </li>
1363
1345
 
1364
- <li class="never" data-hits="" data-linenumber="13">
1346
+ <li class="never" data-hits="" data-linenumber="12">
1365
1347
 
1366
1348
 
1367
1349
  <code class="ruby"> # The value for this key corresponds to the productIdentifier property of the product that the customer’s subscription renews.</code>
1368
1350
  </li>
1369
1351
 
1370
- <li class="covered" data-hits="1" data-linenumber="14">
1352
+ <li class="covered" data-hits="1" data-linenumber="13">
1371
1353
  <span class="hits">1</span>
1372
1354
 
1373
1355
  <code class="ruby"> attr_reader :auto_renew_product_id</code>
1374
1356
  </li>
1375
1357
 
1376
- <li class="never" data-hits="" data-linenumber="15">
1358
+ <li class="never" data-hits="" data-linenumber="14">
1377
1359
 
1378
1360
 
1379
1361
  <code class="ruby"></code>
1380
1362
  </li>
1381
1363
 
1382
- <li class="never" data-hits="" data-linenumber="16">
1364
+ <li class="never" data-hits="" data-linenumber="15">
1383
1365
 
1384
1366
 
1385
1367
  <code class="ruby"> # For an expired subscription, whether or not Apple is still attempting to automatically renew the subscription.</code>
1386
1368
  </li>
1387
1369
 
1388
- <li class="never" data-hits="" data-linenumber="17">
1370
+ <li class="never" data-hits="" data-linenumber="16">
1389
1371
 
1390
1372
 
1391
1373
  <code class="ruby"> # If the customer’s subscription failed to renew because the App Store was unable to complete the transaction, this value will reflect whether or not the App Store is still trying to renew the subscription.</code>
1392
1374
  </li>
1393
1375
 
1394
- <li class="covered" data-hits="1" data-linenumber="18">
1376
+ <li class="covered" data-hits="1" data-linenumber="17">
1395
1377
  <span class="hits">1</span>
1396
1378
 
1397
1379
  <code class="ruby"> attr_reader :is_in_billing_retry_period</code>
1398
1380
  </li>
1399
1381
 
1400
- <li class="never" data-hits="" data-linenumber="19">
1382
+ <li class="never" data-hits="" data-linenumber="18">
1401
1383
 
1402
1384
 
1403
1385
  <code class="ruby"></code>
1404
1386
  </li>
1405
1387
 
1406
- <li class="never" data-hits="" data-linenumber="20">
1388
+ <li class="never" data-hits="" data-linenumber="19">
1407
1389
 
1408
1390
 
1409
1391
  <code class="ruby"> # The product identifier of the item that was purchased.</code>
1410
1392
  </li>
1411
1393
 
1412
- <li class="never" data-hits="" data-linenumber="21">
1394
+ <li class="never" data-hits="" data-linenumber="20">
1413
1395
 
1414
1396
 
1415
1397
  <code class="ruby"> # This value corresponds to the productIdentifier property of the SKPayment object stored in the transaction’s payment property.</code>
1416
1398
  </li>
1417
1399
 
1418
- <li class="covered" data-hits="1" data-linenumber="22">
1400
+ <li class="covered" data-hits="1" data-linenumber="21">
1419
1401
  <span class="hits">1</span>
1420
1402
 
1421
1403
  <code class="ruby"> attr_reader :product_id</code>
1422
1404
  </li>
1423
1405
 
1424
- <li class="never" data-hits="" data-linenumber="23">
1406
+ <li class="never" data-hits="" data-linenumber="22">
1425
1407
 
1426
1408
 
1427
1409
  <code class="ruby"></code>
1428
1410
  </li>
1429
1411
 
1430
- <li class="never" data-hits="" data-linenumber="24">
1412
+ <li class="never" data-hits="" data-linenumber="23">
1431
1413
 
1432
1414
 
1433
1415
  <code class="ruby"> # The current price consent status for a subscription price increase</code>
1434
1416
  </li>
1435
1417
 
1436
- <li class="never" data-hits="" data-linenumber="25">
1418
+ <li class="never" data-hits="" data-linenumber="24">
1437
1419
 
1438
1420
 
1439
1421
  <code class="ruby"> # This key is only present for auto-renewable subscription receipts if the subscription price was increased without keeping the existing price for active subscribers</code>
1440
1422
  </li>
1441
1423
 
1442
- <li class="covered" data-hits="1" data-linenumber="26">
1424
+ <li class="covered" data-hits="1" data-linenumber="25">
1443
1425
  <span class="hits">1</span>
1444
1426
 
1445
1427
  <code class="ruby"> attr_reader :price_consent_status</code>
1446
1428
  </li>
1447
1429
 
1448
- <li class="never" data-hits="" data-linenumber="27">
1430
+ <li class="never" data-hits="" data-linenumber="26">
1449
1431
 
1450
1432
 
1451
1433
  <code class="ruby"></code>
1452
1434
  </li>
1453
1435
 
1454
- <li class="never" data-hits="" data-linenumber="28">
1436
+ <li class="never" data-hits="" data-linenumber="27">
1455
1437
 
1456
1438
 
1457
1439
  <code class="ruby"> # For a transaction that was cancelled, the reason for cancellation.</code>
1458
1440
  </li>
1459
1441
 
1460
- <li class="never" data-hits="" data-linenumber="29">
1442
+ <li class="never" data-hits="" data-linenumber="28">
1461
1443
 
1462
1444
 
1463
1445
  <code class="ruby"> # Use this value along with the cancellation date to identify possible issues in your app that may lead customers to contact Apple customer support.</code>
1464
1446
  </li>
1465
1447
 
1466
- <li class="covered" data-hits="1" data-linenumber="30">
1448
+ <li class="covered" data-hits="1" data-linenumber="29">
1467
1449
  <span class="hits">1</span>
1468
1450
 
1469
1451
  <code class="ruby"> attr_reader :cancellation_reason</code>
1470
1452
  </li>
1471
1453
 
1472
- <li class="never" data-hits="" data-linenumber="31">
1473
-
1474
-
1475
- <code class="ruby"></code>
1476
- </li>
1477
-
1478
- <li class="never" data-hits="" data-linenumber="32">
1454
+ <li class="never" data-hits="" data-linenumber="30">
1479
1455
 
1480
1456
 
1481
1457
  <code class="ruby"></code>
1482
1458
  </li>
1483
1459
 
1484
- <li class="covered" data-hits="1" data-linenumber="33">
1460
+ <li class="covered" data-hits="1" data-linenumber="31">
1485
1461
  <span class="hits">1</span>
1486
1462
 
1487
1463
  <code class="ruby"> def initialize(attributes)</code>
1488
1464
  </li>
1489
1465
 
1490
- <li class="covered" data-hits="7" data-linenumber="34">
1466
+ <li class="covered" data-hits="7" data-linenumber="32">
1491
1467
  <span class="hits">7</span>
1492
1468
 
1493
1469
  <code class="ruby"> @expiration_intent = Integer(attributes[&#39;expiration_intent&#39;]) if attributes[&#39;expiration_intent&#39;]</code>
1494
1470
  </li>
1495
1471
 
1496
- <li class="covered" data-hits="7" data-linenumber="35">
1472
+ <li class="covered" data-hits="7" data-linenumber="33">
1497
1473
  <span class="hits">7</span>
1498
1474
 
1499
1475
  <code class="ruby"> @auto_renew_status = Integer(attributes[&#39;auto_renew_status&#39;]) if attributes[&#39;auto_renew_status&#39;]</code>
1500
1476
  </li>
1501
1477
 
1502
- <li class="covered" data-hits="7" data-linenumber="36">
1478
+ <li class="covered" data-hits="7" data-linenumber="34">
1503
1479
  <span class="hits">7</span>
1504
1480
 
1505
1481
  <code class="ruby"> @auto_renew_product_id = attributes[&#39;auto_renew_product_id&#39;]</code>
1506
1482
  </li>
1507
1483
 
1508
- <li class="never" data-hits="" data-linenumber="37">
1484
+ <li class="never" data-hits="" data-linenumber="35">
1509
1485
 
1510
1486
 
1511
1487
  <code class="ruby"></code>
1512
1488
  </li>
1513
1489
 
1514
- <li class="covered" data-hits="7" data-linenumber="38">
1490
+ <li class="covered" data-hits="7" data-linenumber="36">
1515
1491
  <span class="hits">7</span>
1516
1492
 
1517
1493
  <code class="ruby"> if attributes[&#39;is_in_billing_retry_period&#39;]</code>
1518
1494
  </li>
1519
1495
 
1520
- <li class="covered" data-hits="7" data-linenumber="39">
1496
+ <li class="covered" data-hits="7" data-linenumber="37">
1521
1497
  <span class="hits">7</span>
1522
1498
 
1523
- <code class="ruby"> @is_in_billing_retry_period = (attributes[is_in_billing_retry_period] == &quot;1&quot; ? true : false)</code>
1499
+ <code class="ruby"> @is_in_billing_retry_period = (attributes[is_in_billing_retry_period] == &#39;1&#39;)</code>
1524
1500
  </li>
1525
1501
 
1526
- <li class="never" data-hits="" data-linenumber="40">
1502
+ <li class="never" data-hits="" data-linenumber="38">
1527
1503
 
1528
1504
 
1529
1505
  <code class="ruby"> end</code>
1530
1506
  </li>
1531
1507
 
1532
- <li class="never" data-hits="" data-linenumber="41">
1508
+ <li class="never" data-hits="" data-linenumber="39">
1533
1509
 
1534
1510
 
1535
1511
  <code class="ruby"></code>
1536
1512
  </li>
1537
1513
 
1538
- <li class="covered" data-hits="7" data-linenumber="42">
1514
+ <li class="covered" data-hits="7" data-linenumber="40">
1539
1515
  <span class="hits">7</span>
1540
1516
 
1541
1517
  <code class="ruby"> @product_id = attributes[&#39;product_id&#39;]</code>
1542
1518
  </li>
1543
1519
 
1544
- <li class="never" data-hits="" data-linenumber="43">
1520
+ <li class="never" data-hits="" data-linenumber="41">
1545
1521
 
1546
1522
 
1547
1523
  <code class="ruby"></code>
1548
1524
  </li>
1549
1525
 
1550
- <li class="covered" data-hits="7" data-linenumber="44">
1526
+ <li class="covered" data-hits="7" data-linenumber="42">
1551
1527
  <span class="hits">7</span>
1552
1528
 
1553
1529
  <code class="ruby"> @price_consent_status = Integer(attributes[&#39;price_consent_status&#39;]) if attributes[&#39;price_consent_status&#39;]</code>
1554
1530
  </li>
1555
1531
 
1556
- <li class="covered" data-hits="7" data-linenumber="45">
1532
+ <li class="covered" data-hits="7" data-linenumber="43">
1557
1533
  <span class="hits">7</span>
1558
1534
 
1559
1535
  <code class="ruby"> @cancellation_reason = Integer(attributes[&#39;cancellation_reason&#39;]) if attributes[&#39;cancellation_reason&#39;]</code>
1560
1536
  </li>
1561
1537
 
1562
- <li class="never" data-hits="" data-linenumber="46">
1538
+ <li class="never" data-hits="" data-linenumber="44">
1563
1539
 
1564
1540
 
1565
1541
  <code class="ruby"> end</code>
1566
1542
  </li>
1567
1543
 
1568
- <li class="never" data-hits="" data-linenumber="47">
1544
+ <li class="never" data-hits="" data-linenumber="45">
1569
1545
 
1570
1546
 
1571
1547
  <code class="ruby"></code>
1572
1548
  </li>
1573
1549
 
1574
- <li class="covered" data-hits="1" data-linenumber="48">
1550
+ <li class="covered" data-hits="1" data-linenumber="46">
1575
1551
  <span class="hits">1</span>
1576
1552
 
1577
1553
  <code class="ruby"> def to_hash</code>
1578
1554
  </li>
1579
1555
 
1580
- <li class="never" data-hits="" data-linenumber="49">
1556
+ <li class="never" data-hits="" data-linenumber="47">
1581
1557
 
1582
1558
 
1583
1559
  <code class="ruby"> {</code>
1584
1560
  </li>
1585
1561
 
1586
- <li class="never" data-hits="" data-linenumber="50">
1562
+ <li class="never" data-hits="" data-linenumber="48">
1587
1563
 
1588
1564
 
1589
1565
  <code class="ruby"> expiration_intent: @expiration_intent,</code>
1590
1566
  </li>
1591
1567
 
1592
- <li class="never" data-hits="" data-linenumber="51">
1568
+ <li class="never" data-hits="" data-linenumber="49">
1593
1569
 
1594
1570
 
1595
1571
  <code class="ruby"> auto_renew_status: @auto_renew_status,</code>
1596
1572
  </li>
1597
1573
 
1598
- <li class="never" data-hits="" data-linenumber="52">
1574
+ <li class="never" data-hits="" data-linenumber="50">
1599
1575
 
1600
1576
 
1601
1577
  <code class="ruby"> auto_renew_product_id: @auto_renew_product_id,</code>
1602
1578
  </li>
1603
1579
 
1604
- <li class="never" data-hits="" data-linenumber="53">
1580
+ <li class="never" data-hits="" data-linenumber="51">
1605
1581
 
1606
1582
 
1607
1583
  <code class="ruby"> is_in_billing_retry_period: @is_in_billing_retry_period,</code>
1608
1584
  </li>
1609
1585
 
1610
- <li class="never" data-hits="" data-linenumber="54">
1586
+ <li class="never" data-hits="" data-linenumber="52">
1611
1587
 
1612
1588
 
1613
1589
  <code class="ruby"> product_id: @product_id,</code>
1614
1590
  </li>
1615
1591
 
1616
- <li class="never" data-hits="" data-linenumber="55">
1592
+ <li class="never" data-hits="" data-linenumber="53">
1617
1593
 
1618
1594
 
1619
1595
  <code class="ruby"> price_consent_status: @price_consent_status,</code>
1620
1596
  </li>
1621
1597
 
1622
- <li class="never" data-hits="" data-linenumber="56">
1598
+ <li class="never" data-hits="" data-linenumber="54">
1623
1599
 
1624
1600
 
1625
1601
  <code class="ruby"> cancellation_reason: @cancellation_reason</code>
1626
1602
  </li>
1627
1603
 
1628
- <li class="covered" data-hits="2" data-linenumber="57">
1604
+ <li class="covered" data-hits="2" data-linenumber="55">
1629
1605
  <span class="hits">2</span>
1630
1606
 
1631
1607
  <code class="ruby"> }</code>
1632
1608
  </li>
1633
1609
 
1634
- <li class="never" data-hits="" data-linenumber="58">
1610
+ <li class="never" data-hits="" data-linenumber="56">
1635
1611
 
1636
1612
 
1637
1613
  <code class="ruby"> end</code>
1638
1614
  </li>
1639
1615
 
1640
- <li class="never" data-hits="" data-linenumber="59">
1616
+ <li class="never" data-hits="" data-linenumber="57">
1641
1617
 
1642
1618
 
1643
1619
  <code class="ruby"></code>
1644
1620
  </li>
1645
1621
 
1646
- <li class="covered" data-hits="1" data-linenumber="60">
1622
+ <li class="covered" data-hits="1" data-linenumber="58">
1647
1623
  <span class="hits">1</span>
1648
1624
 
1649
1625
  <code class="ruby"> alias_method :to_h, :to_hash</code>
1650
1626
  </li>
1651
1627
 
1652
- <li class="never" data-hits="" data-linenumber="61">
1628
+ <li class="never" data-hits="" data-linenumber="59">
1653
1629
 
1654
1630
 
1655
1631
  <code class="ruby"></code>
1656
1632
  </li>
1657
1633
 
1658
- <li class="covered" data-hits="1" data-linenumber="62">
1634
+ <li class="covered" data-hits="1" data-linenumber="60">
1659
1635
  <span class="hits">1</span>
1660
1636
 
1661
1637
  <code class="ruby"> def to_json</code>
1662
1638
  </li>
1663
1639
 
1664
- <li class="missed" data-hits="0" data-linenumber="63">
1640
+ <li class="missed" data-hits="0" data-linenumber="61">
1665
1641
 
1666
1642
 
1667
- <code class="ruby"> self.to_hash.to_json</code>
1643
+ <code class="ruby"> to_hash.to_json</code>
1668
1644
  </li>
1669
1645
 
1670
- <li class="never" data-hits="" data-linenumber="64">
1646
+ <li class="never" data-hits="" data-linenumber="62">
1671
1647
 
1672
1648
 
1673
1649
  <code class="ruby"> end</code>
1674
1650
  </li>
1675
1651
 
1676
- <li class="never" data-hits="" data-linenumber="65">
1652
+ <li class="never" data-hits="" data-linenumber="63">
1677
1653
 
1678
1654
 
1679
1655
  <code class="ruby"> end</code>
1680
1656
  </li>
1681
1657
 
1682
- <li class="never" data-hits="" data-linenumber="66">
1658
+ <li class="never" data-hits="" data-linenumber="64">
1683
1659
 
1684
1660
 
1685
1661
  <code class="ruby">end</code>
@@ -1693,11 +1669,11 @@
1693
1669
  <div class="source_table" id="10dfdb14e321a7bb364075307e5a80a2a62317af">
1694
1670
  <div class="header">
1695
1671
  <h3>lib/venice/receipt.rb</h3>
1696
- <h4><span class="red">74.07 %</span> covered</h4>
1672
+ <h4><span class="red">72.5 %</span> covered</h4>
1697
1673
  <div>
1698
- <b>81</b> relevant lines.
1699
- <span class="green"><b>60</b> lines covered</span> and
1700
- <span class="red"><b>21</b> lines missed.</span>
1674
+ <b>80</b> relevant lines.
1675
+ <span class="green"><b>58</b> lines covered</span> and
1676
+ <span class="red"><b>22</b> lines missed.</span>
1701
1677
  </div>
1702
1678
  </div>
1703
1679
 
@@ -1944,8 +1920,8 @@
1944
1920
  <code class="ruby"> def initialize(attributes = {})</code>
1945
1921
  </li>
1946
1922
 
1947
- <li class="covered" data-hits="7" data-linenumber="41">
1948
- <span class="hits">7</span>
1923
+ <li class="covered" data-hits="8" data-linenumber="41">
1924
+ <span class="hits">8</span>
1949
1925
 
1950
1926
  <code class="ruby"> @original_json_response = attributes[&#39;original_json_response&#39;]</code>
1951
1927
  </li>
@@ -1956,26 +1932,26 @@
1956
1932
  <code class="ruby"></code>
1957
1933
  </li>
1958
1934
 
1959
- <li class="covered" data-hits="7" data-linenumber="43">
1960
- <span class="hits">7</span>
1935
+ <li class="covered" data-hits="8" data-linenumber="43">
1936
+ <span class="hits">8</span>
1961
1937
 
1962
1938
  <code class="ruby"> @bundle_id = attributes[&#39;bundle_id&#39;]</code>
1963
1939
  </li>
1964
1940
 
1965
- <li class="covered" data-hits="7" data-linenumber="44">
1966
- <span class="hits">7</span>
1941
+ <li class="covered" data-hits="8" data-linenumber="44">
1942
+ <span class="hits">8</span>
1967
1943
 
1968
1944
  <code class="ruby"> @application_version = attributes[&#39;application_version&#39;]</code>
1969
1945
  </li>
1970
1946
 
1971
- <li class="covered" data-hits="7" data-linenumber="45">
1972
- <span class="hits">7</span>
1947
+ <li class="covered" data-hits="8" data-linenumber="45">
1948
+ <span class="hits">8</span>
1973
1949
 
1974
1950
  <code class="ruby"> @original_application_version = attributes[&#39;original_application_version&#39;]</code>
1975
1951
  </li>
1976
1952
 
1977
- <li class="covered" data-hits="7" data-linenumber="46">
1978
- <span class="hits">7</span>
1953
+ <li class="covered" data-hits="8" data-linenumber="46">
1954
+ <span class="hits">8</span>
1979
1955
 
1980
1956
  <code class="ruby"> if attributes[&#39;original_purchase_date&#39;]</code>
1981
1957
  </li>
@@ -1992,8 +1968,8 @@
1992
1968
  <code class="ruby"> end</code>
1993
1969
  </li>
1994
1970
 
1995
- <li class="covered" data-hits="7" data-linenumber="49">
1996
- <span class="hits">7</span>
1971
+ <li class="covered" data-hits="8" data-linenumber="49">
1972
+ <span class="hits">8</span>
1997
1973
 
1998
1974
  <code class="ruby"> if attributes[&#39;expiration_date&#39;]</code>
1999
1975
  </li>
@@ -2016,26 +1992,26 @@
2016
1992
  <code class="ruby"></code>
2017
1993
  </li>
2018
1994
 
2019
- <li class="covered" data-hits="7" data-linenumber="53">
2020
- <span class="hits">7</span>
1995
+ <li class="covered" data-hits="8" data-linenumber="53">
1996
+ <span class="hits">8</span>
2021
1997
 
2022
1998
  <code class="ruby"> @receipt_type = attributes[&#39;receipt_type&#39;]</code>
2023
1999
  </li>
2024
2000
 
2025
- <li class="covered" data-hits="7" data-linenumber="54">
2026
- <span class="hits">7</span>
2001
+ <li class="covered" data-hits="8" data-linenumber="54">
2002
+ <span class="hits">8</span>
2027
2003
 
2028
2004
  <code class="ruby"> @adam_id = attributes[&#39;adam_id&#39;]</code>
2029
2005
  </li>
2030
2006
 
2031
- <li class="covered" data-hits="7" data-linenumber="55">
2032
- <span class="hits">7</span>
2007
+ <li class="covered" data-hits="8" data-linenumber="55">
2008
+ <span class="hits">8</span>
2033
2009
 
2034
2010
  <code class="ruby"> @download_id = attributes[&#39;download_id&#39;]</code>
2035
2011
  </li>
2036
2012
 
2037
- <li class="covered" data-hits="7" data-linenumber="56">
2038
- <span class="hits">7</span>
2013
+ <li class="covered" data-hits="8" data-linenumber="56">
2014
+ <span class="hits">8</span>
2039
2015
 
2040
2016
  <code class="ruby"> @requested_at = DateTime.parse(attributes[&#39;request_date&#39;]) if attributes[&#39;request_date&#39;]</code>
2041
2017
  </li>
@@ -2046,14 +2022,14 @@
2046
2022
  <code class="ruby"></code>
2047
2023
  </li>
2048
2024
 
2049
- <li class="covered" data-hits="7" data-linenumber="58">
2050
- <span class="hits">7</span>
2025
+ <li class="covered" data-hits="8" data-linenumber="58">
2026
+ <span class="hits">8</span>
2051
2027
 
2052
2028
  <code class="ruby"> @in_app = []</code>
2053
2029
  </li>
2054
2030
 
2055
- <li class="covered" data-hits="7" data-linenumber="59">
2056
- <span class="hits">7</span>
2031
+ <li class="covered" data-hits="8" data-linenumber="59">
2032
+ <span class="hits">8</span>
2057
2033
 
2058
2034
  <code class="ruby"> if attributes[&#39;in_app&#39;]</code>
2059
2035
  </li>
@@ -2088,14 +2064,14 @@
2088
2064
  <code class="ruby"></code>
2089
2065
  </li>
2090
2066
 
2091
- <li class="covered" data-hits="7" data-linenumber="65">
2092
- <span class="hits">7</span>
2067
+ <li class="covered" data-hits="8" data-linenumber="65">
2068
+ <span class="hits">8</span>
2093
2069
 
2094
2070
  <code class="ruby"> @pending_renewal_info = []</code>
2095
2071
  </li>
2096
2072
 
2097
- <li class="covered" data-hits="7" data-linenumber="66">
2098
- <span class="hits">7</span>
2073
+ <li class="covered" data-hits="8" data-linenumber="66">
2074
+ <span class="hits">8</span>
2099
2075
 
2100
2076
  <code class="ruby"> if original_json_response &amp;&amp; original_json_response[&#39;pending_renewal_info&#39;]</code>
2101
2077
  </li>
@@ -2127,534 +2103,540 @@
2127
2103
  <li class="never" data-hits="" data-linenumber="71">
2128
2104
 
2129
2105
 
2130
- <code class="ruby"></code>
2131
- </li>
2132
-
2133
- <li class="never" data-hits="" data-linenumber="72">
2134
-
2135
-
2136
2106
  <code class="ruby"> end</code>
2137
2107
  </li>
2138
2108
 
2139
- <li class="never" data-hits="" data-linenumber="73">
2109
+ <li class="never" data-hits="" data-linenumber="72">
2140
2110
 
2141
2111
 
2142
2112
  <code class="ruby"></code>
2143
2113
  </li>
2144
2114
 
2145
- <li class="covered" data-hits="1" data-linenumber="74">
2115
+ <li class="covered" data-hits="1" data-linenumber="73">
2146
2116
  <span class="hits">1</span>
2147
2117
 
2148
2118
  <code class="ruby"> def to_hash</code>
2149
2119
  </li>
2150
2120
 
2151
- <li class="never" data-hits="" data-linenumber="75">
2121
+ <li class="never" data-hits="" data-linenumber="74">
2152
2122
 
2153
2123
 
2154
2124
  <code class="ruby"> {</code>
2155
2125
  </li>
2156
2126
 
2157
- <li class="never" data-hits="" data-linenumber="76">
2127
+ <li class="never" data-hits="" data-linenumber="75">
2158
2128
 
2159
2129
 
2160
- <code class="ruby"> :bundle_id =&gt; @bundle_id,</code>
2130
+ <code class="ruby"> bundle_id: @bundle_id,</code>
2161
2131
  </li>
2162
2132
 
2163
- <li class="never" data-hits="" data-linenumber="77">
2133
+ <li class="never" data-hits="" data-linenumber="76">
2164
2134
 
2165
2135
 
2166
- <code class="ruby"> :application_version =&gt; @application_version,</code>
2136
+ <code class="ruby"> application_version: @application_version,</code>
2167
2137
  </li>
2168
2138
 
2169
- <li class="never" data-hits="" data-linenumber="78">
2139
+ <li class="never" data-hits="" data-linenumber="77">
2170
2140
 
2171
2141
 
2172
- <code class="ruby"> :original_application_version =&gt; @original_application_version,</code>
2142
+ <code class="ruby"> original_application_version: @original_application_version,</code>
2173
2143
  </li>
2174
2144
 
2175
- <li class="covered" data-hits="1" data-linenumber="79">
2145
+ <li class="covered" data-hits="1" data-linenumber="78">
2176
2146
  <span class="hits">1</span>
2177
2147
 
2178
- <code class="ruby"> :original_purchase_date =&gt; (@original_purchase_date.httpdate rescue nil),</code>
2148
+ <code class="ruby"> original_purchase_date: (@original_purchase_date.httpdate rescue nil),</code>
2179
2149
  </li>
2180
2150
 
2181
- <li class="covered" data-hits="1" data-linenumber="80">
2151
+ <li class="covered" data-hits="1" data-linenumber="79">
2182
2152
  <span class="hits">1</span>
2183
2153
 
2184
- <code class="ruby"> :expires_at =&gt; (@expires_at.httpdate rescue nil),</code>
2154
+ <code class="ruby"> expires_at: (@expires_at.httpdate rescue nil),</code>
2185
2155
  </li>
2186
2156
 
2187
- <li class="never" data-hits="" data-linenumber="81">
2157
+ <li class="never" data-hits="" data-linenumber="80">
2188
2158
 
2189
2159
 
2190
- <code class="ruby"> :receipt_type =&gt; @receipt_type,</code>
2160
+ <code class="ruby"> receipt_type: @receipt_type,</code>
2191
2161
  </li>
2192
2162
 
2193
- <li class="never" data-hits="" data-linenumber="82">
2163
+ <li class="never" data-hits="" data-linenumber="81">
2194
2164
 
2195
2165
 
2196
- <code class="ruby"> :adam_id =&gt; @adam_id,</code>
2166
+ <code class="ruby"> adam_id: @adam_id,</code>
2197
2167
  </li>
2198
2168
 
2199
- <li class="never" data-hits="" data-linenumber="83">
2169
+ <li class="never" data-hits="" data-linenumber="82">
2200
2170
 
2201
2171
 
2202
- <code class="ruby"> :download_id =&gt; @download_id,</code>
2172
+ <code class="ruby"> download_id: @download_id,</code>
2203
2173
  </li>
2204
2174
 
2205
- <li class="covered" data-hits="1" data-linenumber="84">
2175
+ <li class="covered" data-hits="1" data-linenumber="83">
2206
2176
  <span class="hits">1</span>
2207
2177
 
2208
- <code class="ruby"> :requested_at =&gt; (@requested_at.httpdate rescue nil),</code>
2178
+ <code class="ruby"> requested_at: (@requested_at.httpdate rescue nil),</code>
2209
2179
  </li>
2210
2180
 
2211
- <li class="covered" data-hits="1" data-linenumber="85">
2212
- <span class="hits">1</span>
2181
+ <li class="never" data-hits="" data-linenumber="84">
2182
+
2213
2183
 
2214
- <code class="ruby"> :in_app =&gt; @in_app.map{|iap| iap.to_h },</code>
2184
+ <code class="ruby"> in_app: @in_app.map(&amp;:to_h),</code>
2215
2185
  </li>
2216
2186
 
2217
- <li class="covered" data-hits="1" data-linenumber="86">
2218
- <span class="hits">1</span>
2187
+ <li class="never" data-hits="" data-linenumber="85">
2188
+
2219
2189
 
2220
- <code class="ruby"> :pending_renewal_info =&gt; @pending_renewal_info.map { |pend_info| pend_info.to_h },</code>
2190
+ <code class="ruby"> pending_renewal_info: @pending_renewal_info.map(&amp;:to_h),</code>
2221
2191
  </li>
2222
2192
 
2223
- <li class="never" data-hits="" data-linenumber="87">
2193
+ <li class="never" data-hits="" data-linenumber="86">
2224
2194
 
2225
2195
 
2226
- <code class="ruby"> :latest_receipt_info =&gt; @latest_receipt_info</code>
2196
+ <code class="ruby"> latest_receipt_info: @latest_receipt_info</code>
2227
2197
  </li>
2228
2198
 
2229
- <li class="covered" data-hits="1" data-linenumber="88">
2199
+ <li class="covered" data-hits="1" data-linenumber="87">
2230
2200
  <span class="hits">1</span>
2231
2201
 
2232
2202
  <code class="ruby"> }</code>
2233
2203
  </li>
2234
2204
 
2235
- <li class="never" data-hits="" data-linenumber="89">
2205
+ <li class="never" data-hits="" data-linenumber="88">
2236
2206
 
2237
2207
 
2238
2208
  <code class="ruby"> end</code>
2239
2209
  </li>
2240
2210
 
2241
- <li class="covered" data-hits="1" data-linenumber="90">
2211
+ <li class="covered" data-hits="1" data-linenumber="89">
2242
2212
  <span class="hits">1</span>
2243
2213
 
2244
2214
  <code class="ruby"> alias_method :to_h, :to_hash</code>
2245
2215
  </li>
2246
2216
 
2247
- <li class="never" data-hits="" data-linenumber="91">
2217
+ <li class="never" data-hits="" data-linenumber="90">
2248
2218
 
2249
2219
 
2250
2220
  <code class="ruby"></code>
2251
2221
  </li>
2252
2222
 
2253
- <li class="covered" data-hits="1" data-linenumber="92">
2223
+ <li class="covered" data-hits="1" data-linenumber="91">
2254
2224
  <span class="hits">1</span>
2255
2225
 
2256
2226
  <code class="ruby"> def to_json</code>
2257
2227
  </li>
2258
2228
 
2259
- <li class="missed" data-hits="0" data-linenumber="93">
2229
+ <li class="missed" data-hits="0" data-linenumber="92">
2260
2230
 
2261
2231
 
2262
- <code class="ruby"> self.to_hash.to_json</code>
2232
+ <code class="ruby"> to_hash.to_json</code>
2263
2233
  </li>
2264
2234
 
2265
- <li class="never" data-hits="" data-linenumber="94">
2235
+ <li class="never" data-hits="" data-linenumber="93">
2266
2236
 
2267
2237
 
2268
2238
  <code class="ruby"> end</code>
2269
2239
  </li>
2270
2240
 
2271
- <li class="never" data-hits="" data-linenumber="95">
2241
+ <li class="never" data-hits="" data-linenumber="94">
2272
2242
 
2273
2243
 
2274
2244
  <code class="ruby"></code>
2275
2245
  </li>
2276
2246
 
2277
- <li class="covered" data-hits="1" data-linenumber="96">
2247
+ <li class="covered" data-hits="1" data-linenumber="95">
2278
2248
  <span class="hits">1</span>
2279
2249
 
2280
2250
  <code class="ruby"> class &lt;&lt; self</code>
2281
2251
  </li>
2282
2252
 
2283
- <li class="covered" data-hits="1" data-linenumber="97">
2253
+ <li class="covered" data-hits="1" data-linenumber="96">
2284
2254
  <span class="hits">1</span>
2285
2255
 
2286
2256
  <code class="ruby"> def verify(data, options = {})</code>
2287
2257
  </li>
2288
2258
 
2289
- <li class="covered" data-hits="1" data-linenumber="98">
2259
+ <li class="covered" data-hits="1" data-linenumber="97">
2290
2260
  <span class="hits">1</span>
2291
2261
 
2292
2262
  <code class="ruby"> verify!(data, options) rescue false</code>
2293
2263
  </li>
2294
2264
 
2295
- <li class="never" data-hits="" data-linenumber="99">
2265
+ <li class="never" data-hits="" data-linenumber="98">
2296
2266
 
2297
2267
 
2298
2268
  <code class="ruby"> end</code>
2299
2269
  </li>
2300
2270
 
2301
- <li class="never" data-hits="" data-linenumber="100">
2271
+ <li class="never" data-hits="" data-linenumber="99">
2302
2272
 
2303
2273
 
2304
2274
  <code class="ruby"></code>
2305
2275
  </li>
2306
2276
 
2307
- <li class="covered" data-hits="1" data-linenumber="101">
2277
+ <li class="covered" data-hits="1" data-linenumber="100">
2308
2278
  <span class="hits">1</span>
2309
2279
 
2310
2280
  <code class="ruby"> def verify!(data, options = {})</code>
2311
2281
  </li>
2312
2282
 
2313
- <li class="covered" data-hits="1" data-linenumber="102">
2283
+ <li class="covered" data-hits="1" data-linenumber="101">
2314
2284
  <span class="hits">1</span>
2315
2285
 
2316
2286
  <code class="ruby"> client = Client.production</code>
2317
2287
  </li>
2318
2288
 
2319
- <li class="never" data-hits="" data-linenumber="103">
2289
+ <li class="never" data-hits="" data-linenumber="102">
2320
2290
 
2321
2291
 
2322
2292
  <code class="ruby"></code>
2323
2293
  </li>
2324
2294
 
2325
- <li class="covered" data-hits="1" data-linenumber="104">
2295
+ <li class="covered" data-hits="1" data-linenumber="103">
2326
2296
  <span class="hits">1</span>
2327
2297
 
2328
2298
  <code class="ruby"> begin</code>
2329
2299
  </li>
2330
2300
 
2331
- <li class="covered" data-hits="1" data-linenumber="105">
2301
+ <li class="covered" data-hits="1" data-linenumber="104">
2332
2302
  <span class="hits">1</span>
2333
2303
 
2334
2304
  <code class="ruby"> client.verify!(data, options)</code>
2335
2305
  </li>
2336
2306
 
2337
- <li class="missed" data-hits="0" data-linenumber="106">
2307
+ <li class="missed" data-hits="0" data-linenumber="105">
2338
2308
 
2339
2309
 
2340
2310
  <code class="ruby"> rescue VerificationError =&gt; error</code>
2341
2311
  </li>
2342
2312
 
2343
- <li class="missed" data-hits="0" data-linenumber="107">
2313
+ <li class="missed" data-hits="0" data-linenumber="106">
2344
2314
 
2345
2315
 
2346
2316
  <code class="ruby"> case error.code</code>
2347
2317
  </li>
2348
2318
 
2349
- <li class="never" data-hits="" data-linenumber="108">
2319
+ <li class="never" data-hits="" data-linenumber="107">
2350
2320
 
2351
2321
 
2352
2322
  <code class="ruby"> when 21007</code>
2353
2323
  </li>
2354
2324
 
2355
- <li class="missed" data-hits="0" data-linenumber="109">
2325
+ <li class="missed" data-hits="0" data-linenumber="108">
2356
2326
 
2357
2327
 
2358
2328
  <code class="ruby"> client = Client.development</code>
2359
2329
  </li>
2360
2330
 
2361
- <li class="missed" data-hits="0" data-linenumber="110">
2331
+ <li class="missed" data-hits="0" data-linenumber="109">
2362
2332
 
2363
2333
 
2364
2334
  <code class="ruby"> retry</code>
2365
2335
  </li>
2366
2336
 
2367
- <li class="never" data-hits="" data-linenumber="111">
2337
+ <li class="never" data-hits="" data-linenumber="110">
2368
2338
 
2369
2339
 
2370
2340
  <code class="ruby"> when 21008</code>
2371
2341
  </li>
2372
2342
 
2373
- <li class="missed" data-hits="0" data-linenumber="112">
2343
+ <li class="missed" data-hits="0" data-linenumber="111">
2374
2344
 
2375
2345
 
2376
2346
  <code class="ruby"> client = Client.production</code>
2377
2347
  </li>
2378
2348
 
2379
- <li class="missed" data-hits="0" data-linenumber="113">
2349
+ <li class="missed" data-hits="0" data-linenumber="112">
2380
2350
 
2381
2351
 
2382
2352
  <code class="ruby"> retry</code>
2383
2353
  </li>
2384
2354
 
2385
- <li class="never" data-hits="" data-linenumber="114">
2355
+ <li class="never" data-hits="" data-linenumber="113">
2386
2356
 
2387
2357
 
2388
2358
  <code class="ruby"> else</code>
2389
2359
  </li>
2390
2360
 
2391
- <li class="missed" data-hits="0" data-linenumber="115">
2361
+ <li class="missed" data-hits="0" data-linenumber="114">
2392
2362
 
2393
2363
 
2394
2364
  <code class="ruby"> raise error</code>
2395
2365
  </li>
2396
2366
 
2397
- <li class="never" data-hits="" data-linenumber="116">
2367
+ <li class="never" data-hits="" data-linenumber="115">
2398
2368
 
2399
2369
 
2400
2370
  <code class="ruby"> end</code>
2401
2371
  </li>
2402
2372
 
2403
- <li class="never" data-hits="" data-linenumber="117">
2373
+ <li class="never" data-hits="" data-linenumber="116">
2404
2374
 
2405
2375
 
2406
2376
  <code class="ruby"> end</code>
2407
2377
  </li>
2408
2378
 
2409
- <li class="never" data-hits="" data-linenumber="118">
2379
+ <li class="never" data-hits="" data-linenumber="117">
2410
2380
 
2411
2381
 
2412
2382
  <code class="ruby"> end</code>
2413
2383
  </li>
2414
2384
 
2415
- <li class="never" data-hits="" data-linenumber="119">
2385
+ <li class="never" data-hits="" data-linenumber="118">
2416
2386
 
2417
2387
 
2418
2388
  <code class="ruby"></code>
2419
2389
  </li>
2420
2390
 
2421
- <li class="covered" data-hits="1" data-linenumber="120">
2391
+ <li class="covered" data-hits="1" data-linenumber="119">
2422
2392
  <span class="hits">1</span>
2423
2393
 
2424
2394
  <code class="ruby"> alias :validate :verify</code>
2425
2395
  </li>
2426
2396
 
2427
- <li class="covered" data-hits="1" data-linenumber="121">
2397
+ <li class="covered" data-hits="1" data-linenumber="120">
2428
2398
  <span class="hits">1</span>
2429
2399
 
2430
2400
  <code class="ruby"> alias :validate! :verify!</code>
2431
2401
  </li>
2432
2402
 
2433
- <li class="never" data-hits="" data-linenumber="122">
2403
+ <li class="never" data-hits="" data-linenumber="121">
2434
2404
 
2435
2405
 
2436
2406
  <code class="ruby"> end</code>
2437
2407
  </li>
2438
2408
 
2439
- <li class="never" data-hits="" data-linenumber="123">
2409
+ <li class="never" data-hits="" data-linenumber="122">
2440
2410
 
2441
2411
 
2442
2412
  <code class="ruby"></code>
2443
2413
  </li>
2444
2414
 
2445
- <li class="covered" data-hits="1" data-linenumber="124">
2415
+ <li class="covered" data-hits="1" data-linenumber="123">
2446
2416
  <span class="hits">1</span>
2447
2417
 
2448
2418
  <code class="ruby"> class VerificationError &lt; StandardError</code>
2449
2419
  </li>
2450
2420
 
2451
- <li class="covered" data-hits="1" data-linenumber="125">
2421
+ <li class="covered" data-hits="1" data-linenumber="124">
2452
2422
  <span class="hits">1</span>
2453
2423
 
2454
2424
  <code class="ruby"> attr_accessor :code</code>
2455
2425
  </li>
2456
2426
 
2457
- <li class="covered" data-hits="1" data-linenumber="126">
2427
+ <li class="covered" data-hits="1" data-linenumber="125">
2458
2428
  <span class="hits">1</span>
2459
2429
 
2460
2430
  <code class="ruby"> attr_accessor :receipt</code>
2461
2431
  </li>
2462
2432
 
2463
- <li class="never" data-hits="" data-linenumber="127">
2433
+ <li class="never" data-hits="" data-linenumber="126">
2464
2434
 
2465
2435
 
2466
2436
  <code class="ruby"></code>
2467
2437
  </li>
2468
2438
 
2469
- <li class="covered" data-hits="1" data-linenumber="128">
2439
+ <li class="covered" data-hits="1" data-linenumber="127">
2470
2440
  <span class="hits">1</span>
2471
2441
 
2472
2442
  <code class="ruby"> def initialize(code, receipt)</code>
2473
2443
  </li>
2474
2444
 
2475
- <li class="missed" data-hits="0" data-linenumber="129">
2445
+ <li class="missed" data-hits="0" data-linenumber="128">
2476
2446
 
2477
2447
 
2478
2448
  <code class="ruby"> @code = Integer(code)</code>
2479
2449
  </li>
2480
2450
 
2481
- <li class="missed" data-hits="0" data-linenumber="130">
2451
+ <li class="missed" data-hits="0" data-linenumber="129">
2482
2452
 
2483
2453
 
2484
2454
  <code class="ruby"> @receipt = receipt</code>
2485
2455
  </li>
2486
2456
 
2487
- <li class="never" data-hits="" data-linenumber="131">
2457
+ <li class="never" data-hits="" data-linenumber="130">
2488
2458
 
2489
2459
 
2490
2460
  <code class="ruby"> end</code>
2491
2461
  </li>
2492
2462
 
2493
- <li class="never" data-hits="" data-linenumber="132">
2463
+ <li class="never" data-hits="" data-linenumber="131">
2494
2464
 
2495
2465
 
2496
2466
  <code class="ruby"></code>
2497
2467
  </li>
2498
2468
 
2499
- <li class="covered" data-hits="1" data-linenumber="133">
2469
+ <li class="covered" data-hits="1" data-linenumber="132">
2500
2470
  <span class="hits">1</span>
2501
2471
 
2502
2472
  <code class="ruby"> def message</code>
2503
2473
  </li>
2504
2474
 
2505
- <li class="missed" data-hits="0" data-linenumber="134">
2475
+ <li class="missed" data-hits="0" data-linenumber="133">
2506
2476
 
2507
2477
 
2508
2478
  <code class="ruby"> case @code</code>
2509
2479
  </li>
2510
2480
 
2511
- <li class="never" data-hits="" data-linenumber="135">
2481
+ <li class="never" data-hits="" data-linenumber="134">
2512
2482
 
2513
2483
 
2514
- <code class="ruby"> when 21000</code>
2484
+ <code class="ruby"> when 21000</code>
2515
2485
  </li>
2516
2486
 
2517
- <li class="missed" data-hits="0" data-linenumber="136">
2487
+ <li class="missed" data-hits="0" data-linenumber="135">
2518
2488
 
2519
2489
 
2520
- <code class="ruby"> &quot;The App Store could not read the JSON object you provided.&quot;</code>
2490
+ <code class="ruby"> &#39;The App Store could not read the JSON object you provided.&#39;</code>
2521
2491
  </li>
2522
2492
 
2523
- <li class="never" data-hits="" data-linenumber="137">
2493
+ <li class="never" data-hits="" data-linenumber="136">
2524
2494
 
2525
2495
 
2526
- <code class="ruby"> when 21002</code>
2496
+ <code class="ruby"> when 21002</code>
2527
2497
  </li>
2528
2498
 
2529
- <li class="missed" data-hits="0" data-linenumber="138">
2499
+ <li class="missed" data-hits="0" data-linenumber="137">
2530
2500
 
2531
2501
 
2532
- <code class="ruby"> &quot;The data in the receipt-data property was malformed.&quot;</code>
2502
+ <code class="ruby"> &#39;The data in the receipt-data property was malformed.&#39;</code>
2533
2503
  </li>
2534
2504
 
2535
- <li class="never" data-hits="" data-linenumber="139">
2505
+ <li class="never" data-hits="" data-linenumber="138">
2536
2506
 
2537
2507
 
2538
- <code class="ruby"> when 21003</code>
2508
+ <code class="ruby"> when 21003</code>
2539
2509
  </li>
2540
2510
 
2541
- <li class="missed" data-hits="0" data-linenumber="140">
2511
+ <li class="missed" data-hits="0" data-linenumber="139">
2542
2512
 
2543
2513
 
2544
- <code class="ruby"> &quot;The receipt could not be authenticated.&quot;</code>
2514
+ <code class="ruby"> &#39;The receipt could not be authenticated.&#39;</code>
2545
2515
  </li>
2546
2516
 
2547
- <li class="never" data-hits="" data-linenumber="141">
2517
+ <li class="never" data-hits="" data-linenumber="140">
2548
2518
 
2549
2519
 
2550
- <code class="ruby"> when 21004</code>
2520
+ <code class="ruby"> when 21004</code>
2551
2521
  </li>
2552
2522
 
2553
- <li class="missed" data-hits="0" data-linenumber="142">
2523
+ <li class="missed" data-hits="0" data-linenumber="141">
2554
2524
 
2555
2525
 
2556
- <code class="ruby"> &quot;The shared secret you provided does not match the shared secret on file for your account.&quot;</code>
2526
+ <code class="ruby"> &#39;The shared secret you provided does not match the shared secret on file for your account.&#39;</code>
2557
2527
  </li>
2558
2528
 
2559
- <li class="never" data-hits="" data-linenumber="143">
2529
+ <li class="never" data-hits="" data-linenumber="142">
2560
2530
 
2561
2531
 
2562
- <code class="ruby"> when 21005</code>
2532
+ <code class="ruby"> when 21005</code>
2563
2533
  </li>
2564
2534
 
2565
- <li class="missed" data-hits="0" data-linenumber="144">
2535
+ <li class="missed" data-hits="0" data-linenumber="143">
2566
2536
 
2567
2537
 
2568
- <code class="ruby"> &quot;The receipt server is not currently available.&quot;</code>
2538
+ <code class="ruby"> &#39;The receipt server is not currently available.&#39;</code>
2569
2539
  </li>
2570
2540
 
2571
- <li class="never" data-hits="" data-linenumber="145">
2541
+ <li class="never" data-hits="" data-linenumber="144">
2572
2542
 
2573
2543
 
2574
- <code class="ruby"> when 21006</code>
2544
+ <code class="ruby"> when 21006</code>
2575
2545
  </li>
2576
2546
 
2577
- <li class="missed" data-hits="0" data-linenumber="146">
2547
+ <li class="missed" data-hits="0" data-linenumber="145">
2578
2548
 
2579
2549
 
2580
- <code class="ruby"> &quot;This receipt is valid but the subscription has expired. When this status code is returned to your server, the receipt data is also decoded and returned as part of the response.&quot;</code>
2550
+ <code class="ruby"> &#39;This receipt is valid but the subscription has expired. When this status code is returned to your server, the receipt data is also decoded and returned as part of the response.&#39;</code>
2581
2551
  </li>
2582
2552
 
2583
- <li class="never" data-hits="" data-linenumber="147">
2553
+ <li class="never" data-hits="" data-linenumber="146">
2584
2554
 
2585
2555
 
2586
- <code class="ruby"> when 21007</code>
2556
+ <code class="ruby"> when 21007</code>
2587
2557
  </li>
2588
2558
 
2589
- <li class="missed" data-hits="0" data-linenumber="148">
2559
+ <li class="missed" data-hits="0" data-linenumber="147">
2590
2560
 
2591
2561
 
2592
- <code class="ruby"> &quot;This receipt is a sandbox receipt, but it was sent to the production service for verification.&quot;</code>
2562
+ <code class="ruby"> &#39;This receipt is a sandbox receipt, but it was sent to the production service for verification.&#39;</code>
2593
2563
  </li>
2594
2564
 
2595
- <li class="never" data-hits="" data-linenumber="149">
2565
+ <li class="never" data-hits="" data-linenumber="148">
2596
2566
 
2597
2567
 
2598
- <code class="ruby"> when 21008</code>
2568
+ <code class="ruby"> when 21008</code>
2599
2569
  </li>
2600
2570
 
2601
- <li class="missed" data-hits="0" data-linenumber="150">
2571
+ <li class="missed" data-hits="0" data-linenumber="149">
2602
2572
 
2603
2573
 
2604
- <code class="ruby"> &quot;This receipt is a production receipt, but it was sent to the sandbox service for verification.&quot;</code>
2574
+ <code class="ruby"> &#39;This receipt is a production receipt, but it was sent to the sandbox service for verification.&#39;</code>
2605
2575
  </li>
2606
2576
 
2607
- <li class="never" data-hits="" data-linenumber="151">
2577
+ <li class="never" data-hits="" data-linenumber="150">
2608
2578
 
2609
2579
 
2610
- <code class="ruby"> when 21010</code>
2580
+ <code class="ruby"> when 21010</code>
2611
2581
  </li>
2612
2582
 
2613
- <li class="missed" data-hits="0" data-linenumber="152">
2583
+ <li class="missed" data-hits="0" data-linenumber="151">
2614
2584
 
2615
2585
 
2616
- <code class="ruby"> &quot;This receipt could not be authorized. Treat this the same as if a purchase was never made.&quot;</code>
2586
+ <code class="ruby"> &#39;This receipt could not be authorized. Treat this the same as if a purchase was never made.&#39;</code>
2617
2587
  </li>
2618
2588
 
2619
- <li class="never" data-hits="" data-linenumber="153">
2589
+ <li class="never" data-hits="" data-linenumber="152">
2620
2590
 
2621
2591
 
2622
- <code class="ruby"> else</code>
2592
+ <code class="ruby"> when 21100..21199</code>
2623
2593
  </li>
2624
2594
 
2625
- <li class="missed" data-hits="0" data-linenumber="154">
2595
+ <li class="missed" data-hits="0" data-linenumber="153">
2626
2596
 
2627
2597
 
2628
- <code class="ruby"> &quot;Unknown Error: #{@code}&quot;</code>
2598
+ <code class="ruby"> &#39;Internal data access error.&#39;</code>
2629
2599
  </li>
2630
2600
 
2631
- <li class="never" data-hits="" data-linenumber="155">
2601
+ <li class="never" data-hits="" data-linenumber="154">
2632
2602
 
2633
2603
 
2634
- <code class="ruby"> end</code>
2604
+ <code class="ruby"> else</code>
2605
+ </li>
2606
+
2607
+ <li class="missed" data-hits="0" data-linenumber="155">
2608
+
2609
+
2610
+ <code class="ruby"> &quot;Unknown Error: #{@code}&quot;</code>
2635
2611
  </li>
2636
2612
 
2637
2613
  <li class="never" data-hits="" data-linenumber="156">
2638
2614
 
2639
2615
 
2640
- <code class="ruby"> end</code>
2616
+ <code class="ruby"> end</code>
2641
2617
  </li>
2642
2618
 
2643
2619
  <li class="never" data-hits="" data-linenumber="157">
2644
2620
 
2645
2621
 
2646
- <code class="ruby"> end</code>
2622
+ <code class="ruby"> end</code>
2647
2623
  </li>
2648
2624
 
2649
2625
  <li class="never" data-hits="" data-linenumber="158">
2650
2626
 
2651
2627
 
2652
- <code class="ruby"> end</code>
2628
+ <code class="ruby"> end</code>
2653
2629
  </li>
2654
2630
 
2655
2631
  <li class="never" data-hits="" data-linenumber="159">
2656
2632
 
2657
2633
 
2634
+ <code class="ruby"> end</code>
2635
+ </li>
2636
+
2637
+ <li class="never" data-hits="" data-linenumber="160">
2638
+
2639
+
2658
2640
  <code class="ruby">end</code>
2659
2641
  </li>
2660
2642
 
@@ -2686,7 +2668,7 @@
2686
2668
  <li class="covered" data-hits="1" data-linenumber="2">
2687
2669
  <span class="hits">1</span>
2688
2670
 
2689
- <code class="ruby"> VERSION = &quot;0.4.0&quot;</code>
2671
+ <code class="ruby"> VERSION = &#39;0.4.1&#39;</code>
2690
2672
  </li>
2691
2673
 
2692
2674
  <li class="never" data-hits="" data-linenumber="3">