houston 2.1.0 → 2.2.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.
- checksums.yaml +4 -4
- data/Gemfile.lock +22 -16
- data/README.md +19 -1
- data/bin/apn +3 -0
- data/coverage/assets/0.8.0/application.css +799 -0
- data/coverage/assets/0.8.0/application.js +1559 -0
- data/coverage/assets/0.8.0/colorbox/border.png +0 -0
- data/coverage/assets/0.8.0/colorbox/controls.png +0 -0
- data/coverage/assets/0.8.0/colorbox/loading.gif +0 -0
- data/coverage/assets/0.8.0/colorbox/loading_background.png +0 -0
- data/coverage/assets/0.8.0/favicon_green.png +0 -0
- data/coverage/assets/0.8.0/favicon_red.png +0 -0
- data/coverage/assets/0.8.0/favicon_yellow.png +0 -0
- data/coverage/assets/0.8.0/loading.gif +0 -0
- data/coverage/assets/0.8.0/magnify.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
- data/coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/coverage/index.html +319 -163
- data/houston.gemspec +1 -1
- data/lib/houston/client.rb +1 -0
- data/lib/houston/notification.rb +30 -5
- data/lib/houston/version.rb +1 -1
- data/spec/client_spec.rb +2 -2
- data/spec/notification_spec.rb +23 -10
- metadata +28 -4
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/coverage/index.html
CHANGED
@@ -3,38 +3,38 @@
|
|
3
3
|
<head>
|
4
4
|
<title>Code coverage for Houston</title>
|
5
5
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
6
|
-
<script src='./assets/0.
|
7
|
-
<link href='./assets/0.
|
8
|
-
<link rel="shortcut icon" type="image/png" href="./assets/0.
|
9
|
-
<link rel="icon" type="image/png" href="./assets/0.
|
6
|
+
<script src='./assets/0.8.0/application.js' type='text/javascript'></script>
|
7
|
+
<link href='./assets/0.8.0/application.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
|
8
|
+
<link rel="shortcut icon" type="image/png" href="./assets/0.8.0/favicon_red.png" />
|
9
|
+
<link rel="icon" type="image/png" href="./assets/0.8.0/favicon.png" />
|
10
10
|
</head>
|
11
11
|
|
12
12
|
<body>
|
13
13
|
<div id="loading">
|
14
|
-
<img src="./assets/0.
|
14
|
+
<img src="./assets/0.8.0/loading.gif" alt="loading"/>
|
15
15
|
</div>
|
16
16
|
<div id="wrapper" style="display:none;">
|
17
|
-
<div class="timestamp">Generated <abbr class="timeago" title="2014-
|
17
|
+
<div class="timestamp">Generated <abbr class="timeago" title="2014-08-09T16:18:14-04:00">2014-08-09T16:18:14-04: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="red">
|
24
|
+
(<span class="covered_percent"><span class="red">68.29%</span></span>
|
25
25
|
covered at
|
26
26
|
<span class="covered_strength">
|
27
27
|
<span class="green">
|
28
|
-
|
28
|
+
5.21
|
29
29
|
</span>
|
30
30
|
</span> hits/line)
|
31
31
|
</h2>
|
32
32
|
<a name="AllFiles"></a>
|
33
33
|
<div>
|
34
34
|
<b>4</b> files in total.
|
35
|
-
<b>
|
36
|
-
<span class="green"><b>
|
37
|
-
<span class="red"><b>
|
35
|
+
<b>164</b> relevant lines.
|
36
|
+
<span class="green"><b>112</b> lines covered</span> and
|
37
|
+
<span class="red"><b>52</b> lines missed </span>
|
38
38
|
</div>
|
39
39
|
<table class="file_list">
|
40
40
|
<thead>
|
@@ -62,11 +62,11 @@
|
|
62
62
|
|
63
63
|
<tr>
|
64
64
|
<td class="strong"><a href="#a3eaf6c199f250e522479598f621cf8c25128a64" class="src_link" title="lib/houston/client.rb">lib/houston/client.rb</a></td>
|
65
|
-
<td class="red strong">
|
66
|
-
<td>
|
67
|
-
<td>
|
65
|
+
<td class="red strong">57.81 %</td>
|
66
|
+
<td>101</td>
|
67
|
+
<td>64</td>
|
68
68
|
<td>37</td>
|
69
|
-
<td>
|
69
|
+
<td>27</td>
|
70
70
|
<td>2.1</td>
|
71
71
|
</tr>
|
72
72
|
|
@@ -82,12 +82,12 @@
|
|
82
82
|
|
83
83
|
<tr>
|
84
84
|
<td class="strong"><a href="#7ea710ee036930b7540634e0cd00f6d863839f93" class="src_link" title="lib/houston/notification.rb">lib/houston/notification.rb</a></td>
|
85
|
-
<td class="green strong">
|
86
|
-
<td>
|
87
|
-
<td>
|
88
|
-
<td>
|
89
|
-
<td>
|
90
|
-
<td>
|
85
|
+
<td class="green strong">96.43 %</td>
|
86
|
+
<td>110</td>
|
87
|
+
<td>56</td>
|
88
|
+
<td>54</td>
|
89
|
+
<td>2</td>
|
90
|
+
<td>12.5</td>
|
91
91
|
</tr>
|
92
92
|
|
93
93
|
</tbody>
|
@@ -99,8 +99,8 @@
|
|
99
99
|
</div>
|
100
100
|
|
101
101
|
<div id="footer">
|
102
|
-
Generated by <a href="http://github.com/colszowka/simplecov">simplecov</a> v0.
|
103
|
-
and simplecov-html v0.
|
102
|
+
Generated by <a href="http://github.com/colszowka/simplecov">simplecov</a> v0.9.0
|
103
|
+
and simplecov-html v0.8.0<br/>
|
104
104
|
using RSpec
|
105
105
|
</div>
|
106
106
|
|
@@ -151,11 +151,11 @@
|
|
151
151
|
<div class="source_table" id="a3eaf6c199f250e522479598f621cf8c25128a64">
|
152
152
|
<div class="header">
|
153
153
|
<h3>lib/houston/client.rb</h3>
|
154
|
-
<h4><span class="red">
|
154
|
+
<h4><span class="red">57.81 %</span> covered</h4>
|
155
155
|
<div>
|
156
|
-
<b>
|
156
|
+
<b>64</b> relevant lines.
|
157
157
|
<span class="green"><b>37</b> lines covered</span> and
|
158
|
-
<span class="red"><b>
|
158
|
+
<span class="red"><b>27</b> lines missed.</span>
|
159
159
|
</div>
|
160
160
|
</div>
|
161
161
|
|
@@ -609,154 +609,160 @@
|
|
609
609
|
<li class="missed" data-hits="0" data-linenumber="75">
|
610
610
|
|
611
611
|
|
612
|
-
<code class="ruby"> notifications.
|
612
|
+
<code class="ruby"> notifications[index].apns_error_code = status</code>
|
613
613
|
</li>
|
614
614
|
|
615
615
|
<li class="missed" data-hits="0" data-linenumber="76">
|
616
616
|
|
617
617
|
|
618
|
-
<code class="ruby"> notifications.
|
618
|
+
<code class="ruby"> notifications.slice!(0..index)</code>
|
619
619
|
</li>
|
620
620
|
|
621
621
|
<li class="missed" data-hits="0" data-linenumber="77">
|
622
622
|
|
623
623
|
|
624
|
+
<code class="ruby"> notifications.each(&:mark_as_unsent!)</code>
|
625
|
+
</li>
|
626
|
+
|
627
|
+
<li class="missed" data-hits="0" data-linenumber="78">
|
628
|
+
|
629
|
+
|
624
630
|
<code class="ruby"> push(*notifications)</code>
|
625
631
|
</li>
|
626
632
|
|
627
|
-
<li class="never" data-hits="" data-linenumber="
|
633
|
+
<li class="never" data-hits="" data-linenumber="79">
|
628
634
|
|
629
635
|
|
630
636
|
<code class="ruby"> end</code>
|
631
637
|
</li>
|
632
638
|
|
633
|
-
<li class="never" data-hits="" data-linenumber="
|
639
|
+
<li class="never" data-hits="" data-linenumber="80">
|
634
640
|
|
635
641
|
|
636
642
|
<code class="ruby"> end</code>
|
637
643
|
</li>
|
638
644
|
|
639
|
-
<li class="never" data-hits="" data-linenumber="
|
645
|
+
<li class="never" data-hits="" data-linenumber="81">
|
640
646
|
|
641
647
|
|
642
648
|
<code class="ruby"></code>
|
643
649
|
</li>
|
644
650
|
|
645
|
-
<li class="covered" data-hits="1" data-linenumber="
|
651
|
+
<li class="covered" data-hits="1" data-linenumber="82">
|
646
652
|
<span class="hits">1</span>
|
647
653
|
|
648
654
|
<code class="ruby"> def unregistered_devices</code>
|
649
655
|
</li>
|
650
656
|
|
651
|
-
<li class="covered" data-hits="2" data-linenumber="
|
657
|
+
<li class="covered" data-hits="2" data-linenumber="83">
|
652
658
|
<span class="hits">2</span>
|
653
659
|
|
654
660
|
<code class="ruby"> devices = []</code>
|
655
661
|
</li>
|
656
662
|
|
657
|
-
<li class="never" data-hits="" data-linenumber="
|
663
|
+
<li class="never" data-hits="" data-linenumber="84">
|
658
664
|
|
659
665
|
|
660
666
|
<code class="ruby"></code>
|
661
667
|
</li>
|
662
668
|
|
663
|
-
<li class="covered" data-hits="2" data-linenumber="
|
669
|
+
<li class="covered" data-hits="2" data-linenumber="85">
|
664
670
|
<span class="hits">2</span>
|
665
671
|
|
666
672
|
<code class="ruby"> Connection.open(@feedback_uri, @certificate, @passphrase) do |connection|</code>
|
667
673
|
</li>
|
668
674
|
|
669
|
-
<li class="covered" data-hits="2" data-linenumber="
|
675
|
+
<li class="covered" data-hits="2" data-linenumber="86">
|
670
676
|
<span class="hits">2</span>
|
671
677
|
|
672
678
|
<code class="ruby"> while line = connection.read(38)</code>
|
673
679
|
</li>
|
674
680
|
|
675
|
-
<li class="covered" data-hits="4" data-linenumber="
|
681
|
+
<li class="covered" data-hits="4" data-linenumber="87">
|
676
682
|
<span class="hits">4</span>
|
677
683
|
|
678
684
|
<code class="ruby"> feedback = line.unpack('N1n1H140')</code>
|
679
685
|
</li>
|
680
686
|
|
681
|
-
<li class="covered" data-hits="4" data-linenumber="
|
687
|
+
<li class="covered" data-hits="4" data-linenumber="88">
|
682
688
|
<span class="hits">4</span>
|
683
689
|
|
684
690
|
<code class="ruby"> timestamp = feedback[0]</code>
|
685
691
|
</li>
|
686
692
|
|
687
|
-
<li class="covered" data-hits="4" data-linenumber="
|
693
|
+
<li class="covered" data-hits="4" data-linenumber="89">
|
688
694
|
<span class="hits">4</span>
|
689
695
|
|
690
696
|
<code class="ruby"> token = feedback[2].scan(/.{0,8}/).join(' ').strip</code>
|
691
697
|
</li>
|
692
698
|
|
693
|
-
<li class="covered" data-hits="4" data-linenumber="
|
699
|
+
<li class="covered" data-hits="4" data-linenumber="90">
|
694
700
|
<span class="hits">4</span>
|
695
701
|
|
696
702
|
<code class="ruby"> devices << {token: token, timestamp: timestamp} if token && timestamp</code>
|
697
703
|
</li>
|
698
704
|
|
699
|
-
<li class="never" data-hits="" data-linenumber="
|
705
|
+
<li class="never" data-hits="" data-linenumber="91">
|
700
706
|
|
701
707
|
|
702
708
|
<code class="ruby"> end</code>
|
703
709
|
</li>
|
704
710
|
|
705
|
-
<li class="never" data-hits="" data-linenumber="
|
711
|
+
<li class="never" data-hits="" data-linenumber="92">
|
706
712
|
|
707
713
|
|
708
714
|
<code class="ruby"> end</code>
|
709
715
|
</li>
|
710
716
|
|
711
|
-
<li class="never" data-hits="" data-linenumber="
|
717
|
+
<li class="never" data-hits="" data-linenumber="93">
|
712
718
|
|
713
719
|
|
714
720
|
<code class="ruby"></code>
|
715
721
|
</li>
|
716
722
|
|
717
|
-
<li class="covered" data-hits="2" data-linenumber="
|
723
|
+
<li class="covered" data-hits="2" data-linenumber="94">
|
718
724
|
<span class="hits">2</span>
|
719
725
|
|
720
726
|
<code class="ruby"> devices</code>
|
721
727
|
</li>
|
722
728
|
|
723
|
-
<li class="never" data-hits="" data-linenumber="
|
729
|
+
<li class="never" data-hits="" data-linenumber="95">
|
724
730
|
|
725
731
|
|
726
732
|
<code class="ruby"> end</code>
|
727
733
|
</li>
|
728
734
|
|
729
|
-
<li class="never" data-hits="" data-linenumber="
|
735
|
+
<li class="never" data-hits="" data-linenumber="96">
|
730
736
|
|
731
737
|
|
732
738
|
<code class="ruby"></code>
|
733
739
|
</li>
|
734
740
|
|
735
|
-
<li class="covered" data-hits="1" data-linenumber="
|
741
|
+
<li class="covered" data-hits="1" data-linenumber="97">
|
736
742
|
<span class="hits">1</span>
|
737
743
|
|
738
744
|
<code class="ruby"> def devices</code>
|
739
745
|
</li>
|
740
746
|
|
741
|
-
<li class="covered" data-hits="3" data-linenumber="
|
747
|
+
<li class="covered" data-hits="3" data-linenumber="98">
|
742
748
|
<span class="hits">3</span>
|
743
749
|
|
744
750
|
<code class="ruby"> unregistered_devices.collect{|device| device[:token]}</code>
|
745
751
|
</li>
|
746
752
|
|
747
|
-
<li class="never" data-hits="" data-linenumber="
|
753
|
+
<li class="never" data-hits="" data-linenumber="99">
|
748
754
|
|
749
755
|
|
750
756
|
<code class="ruby"> end</code>
|
751
757
|
</li>
|
752
758
|
|
753
|
-
<li class="never" data-hits="" data-linenumber="
|
759
|
+
<li class="never" data-hits="" data-linenumber="100">
|
754
760
|
|
755
761
|
|
756
762
|
<code class="ruby"> end</code>
|
757
763
|
</li>
|
758
764
|
|
759
|
-
<li class="never" data-hits="" data-linenumber="
|
765
|
+
<li class="never" data-hits="" data-linenumber="101">
|
760
766
|
|
761
767
|
|
762
768
|
<code class="ruby">end</code>
|
@@ -1177,11 +1183,11 @@
|
|
1177
1183
|
<div class="source_table" id="7ea710ee036930b7540634e0cd00f6d863839f93">
|
1178
1184
|
<div class="header">
|
1179
1185
|
<h3>lib/houston/notification.rb</h3>
|
1180
|
-
<h4><span class="green">
|
1186
|
+
<h4><span class="green">96.43 %</span> covered</h4>
|
1181
1187
|
<div>
|
1182
|
-
<b>
|
1183
|
-
<span class="green"><b>
|
1184
|
-
<span class="red"><b>
|
1188
|
+
<b>56</b> relevant lines.
|
1189
|
+
<span class="green"><b>54</b> lines covered</span> and
|
1190
|
+
<span class="red"><b>2</b> lines missed.</span>
|
1185
1191
|
</div>
|
1186
1192
|
</div>
|
1187
1193
|
|
@@ -1215,484 +1221,634 @@
|
|
1215
1221
|
<li class="covered" data-hits="1" data-linenumber="5">
|
1216
1222
|
<span class="hits">1</span>
|
1217
1223
|
|
1218
|
-
<code class="ruby">
|
1224
|
+
<code class="ruby"> class APNSError < RuntimeError</code>
|
1219
1225
|
</li>
|
1220
1226
|
|
1221
1227
|
<li class="never" data-hits="" data-linenumber="6">
|
1222
1228
|
|
1223
1229
|
|
1224
|
-
<code class="ruby"
|
1230
|
+
<code class="ruby"> # See: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/CommunicatingWIthAPS.html#//apple_ref/doc/uid/TP40008194-CH101-SW12</code>
|
1225
1231
|
</li>
|
1226
1232
|
|
1227
1233
|
<li class="covered" data-hits="1" data-linenumber="7">
|
1228
1234
|
<span class="hits">1</span>
|
1229
1235
|
|
1230
|
-
<code class="ruby">
|
1236
|
+
<code class="ruby"> CODES = {</code>
|
1231
1237
|
</li>
|
1232
1238
|
|
1233
|
-
<li class="
|
1239
|
+
<li class="never" data-hits="" data-linenumber="8">
|
1240
|
+
|
1241
|
+
|
1242
|
+
<code class="ruby"> 0 => "No errors encountered",</code>
|
1243
|
+
</li>
|
1244
|
+
|
1245
|
+
<li class="never" data-hits="" data-linenumber="9">
|
1246
|
+
|
1247
|
+
|
1248
|
+
<code class="ruby"> 1 => "Processing error",</code>
|
1249
|
+
</li>
|
1250
|
+
|
1251
|
+
<li class="never" data-hits="" data-linenumber="10">
|
1252
|
+
|
1253
|
+
|
1254
|
+
<code class="ruby"> 2 => "Missing device token",</code>
|
1255
|
+
</li>
|
1256
|
+
|
1257
|
+
<li class="never" data-hits="" data-linenumber="11">
|
1258
|
+
|
1259
|
+
|
1260
|
+
<code class="ruby"> 3 => "Missing topic",</code>
|
1261
|
+
</li>
|
1262
|
+
|
1263
|
+
<li class="never" data-hits="" data-linenumber="12">
|
1264
|
+
|
1265
|
+
|
1266
|
+
<code class="ruby"> 4 => "Missing payload",</code>
|
1267
|
+
</li>
|
1268
|
+
|
1269
|
+
<li class="never" data-hits="" data-linenumber="13">
|
1270
|
+
|
1271
|
+
|
1272
|
+
<code class="ruby"> 5 => "Invalid token size",</code>
|
1273
|
+
</li>
|
1274
|
+
|
1275
|
+
<li class="never" data-hits="" data-linenumber="14">
|
1276
|
+
|
1277
|
+
|
1278
|
+
<code class="ruby"> 6 => "Invalid topic size",</code>
|
1279
|
+
</li>
|
1280
|
+
|
1281
|
+
<li class="never" data-hits="" data-linenumber="15">
|
1282
|
+
|
1283
|
+
|
1284
|
+
<code class="ruby"> 7 => "Invalid payload size",</code>
|
1285
|
+
</li>
|
1286
|
+
|
1287
|
+
<li class="never" data-hits="" data-linenumber="16">
|
1288
|
+
|
1289
|
+
|
1290
|
+
<code class="ruby"> 8 => "Invalid token",</code>
|
1291
|
+
</li>
|
1292
|
+
|
1293
|
+
<li class="never" data-hits="" data-linenumber="17">
|
1294
|
+
|
1295
|
+
|
1296
|
+
<code class="ruby"> 10 => "Shutdown",</code>
|
1297
|
+
</li>
|
1298
|
+
|
1299
|
+
<li class="never" data-hits="" data-linenumber="18">
|
1300
|
+
|
1301
|
+
|
1302
|
+
<code class="ruby"> 255 => "Unknown error"</code>
|
1303
|
+
</li>
|
1304
|
+
|
1305
|
+
<li class="never" data-hits="" data-linenumber="19">
|
1306
|
+
|
1307
|
+
|
1308
|
+
<code class="ruby"> }</code>
|
1309
|
+
</li>
|
1310
|
+
|
1311
|
+
<li class="never" data-hits="" data-linenumber="20">
|
1312
|
+
|
1313
|
+
|
1314
|
+
<code class="ruby"> end</code>
|
1315
|
+
</li>
|
1316
|
+
|
1317
|
+
<li class="never" data-hits="" data-linenumber="21">
|
1318
|
+
|
1319
|
+
|
1320
|
+
<code class="ruby"></code>
|
1321
|
+
</li>
|
1322
|
+
|
1323
|
+
<li class="covered" data-hits="1" data-linenumber="22">
|
1324
|
+
<span class="hits">1</span>
|
1325
|
+
|
1326
|
+
<code class="ruby"> MAXIMUM_PAYLOAD_SIZE = 2048</code>
|
1327
|
+
</li>
|
1328
|
+
|
1329
|
+
<li class="never" data-hits="" data-linenumber="23">
|
1330
|
+
|
1331
|
+
|
1332
|
+
<code class="ruby"></code>
|
1333
|
+
</li>
|
1334
|
+
|
1335
|
+
<li class="covered" data-hits="1" data-linenumber="24">
|
1336
|
+
<span class="hits">1</span>
|
1337
|
+
|
1338
|
+
<code class="ruby"> attr_accessor :token, :alert, :badge, :sound, :category, :content_available, :custom_data, :id, :expiry, :priority</code>
|
1339
|
+
</li>
|
1340
|
+
|
1341
|
+
<li class="covered" data-hits="1" data-linenumber="25">
|
1234
1342
|
<span class="hits">1</span>
|
1235
1343
|
|
1236
1344
|
<code class="ruby"> attr_reader :sent_at</code>
|
1237
1345
|
</li>
|
1238
1346
|
|
1239
|
-
<li class="
|
1347
|
+
<li class="covered" data-hits="1" data-linenumber="26">
|
1348
|
+
<span class="hits">1</span>
|
1349
|
+
|
1350
|
+
<code class="ruby"> attr_writer :apns_error_code</code>
|
1351
|
+
</li>
|
1352
|
+
|
1353
|
+
<li class="never" data-hits="" data-linenumber="27">
|
1240
1354
|
|
1241
1355
|
|
1242
1356
|
<code class="ruby"></code>
|
1243
1357
|
</li>
|
1244
1358
|
|
1245
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1359
|
+
<li class="covered" data-hits="1" data-linenumber="28">
|
1246
1360
|
<span class="hits">1</span>
|
1247
1361
|
|
1248
1362
|
<code class="ruby"> alias :device :token</code>
|
1249
1363
|
</li>
|
1250
1364
|
|
1251
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1365
|
+
<li class="covered" data-hits="1" data-linenumber="29">
|
1252
1366
|
<span class="hits">1</span>
|
1253
1367
|
|
1254
1368
|
<code class="ruby"> alias :device= :token=</code>
|
1255
1369
|
</li>
|
1256
1370
|
|
1257
|
-
<li class="never" data-hits="" data-linenumber="
|
1371
|
+
<li class="never" data-hits="" data-linenumber="30">
|
1258
1372
|
|
1259
1373
|
|
1260
1374
|
<code class="ruby"></code>
|
1261
1375
|
</li>
|
1262
1376
|
|
1263
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1377
|
+
<li class="covered" data-hits="1" data-linenumber="31">
|
1264
1378
|
<span class="hits">1</span>
|
1265
1379
|
|
1266
1380
|
<code class="ruby"> def initialize(options = {})</code>
|
1267
1381
|
</li>
|
1268
1382
|
|
1269
|
-
<li class="covered" data-hits="
|
1270
|
-
<span class="hits">
|
1383
|
+
<li class="covered" data-hits="33" data-linenumber="32">
|
1384
|
+
<span class="hits">33</span>
|
1271
1385
|
|
1272
1386
|
<code class="ruby"> @token = options.delete(:token) || options.delete(:device)</code>
|
1273
1387
|
</li>
|
1274
1388
|
|
1275
|
-
<li class="covered" data-hits="
|
1276
|
-
<span class="hits">
|
1389
|
+
<li class="covered" data-hits="33" data-linenumber="33">
|
1390
|
+
<span class="hits">33</span>
|
1277
1391
|
|
1278
1392
|
<code class="ruby"> @alert = options.delete(:alert)</code>
|
1279
1393
|
</li>
|
1280
1394
|
|
1281
|
-
<li class="covered" data-hits="
|
1282
|
-
<span class="hits">
|
1395
|
+
<li class="covered" data-hits="33" data-linenumber="34">
|
1396
|
+
<span class="hits">33</span>
|
1283
1397
|
|
1284
1398
|
<code class="ruby"> @badge = options.delete(:badge)</code>
|
1285
1399
|
</li>
|
1286
1400
|
|
1287
|
-
<li class="covered" data-hits="
|
1288
|
-
<span class="hits">
|
1401
|
+
<li class="covered" data-hits="33" data-linenumber="35">
|
1402
|
+
<span class="hits">33</span>
|
1289
1403
|
|
1290
1404
|
<code class="ruby"> @sound = options.delete(:sound)</code>
|
1291
1405
|
</li>
|
1292
1406
|
|
1293
|
-
<li class="covered" data-hits="
|
1294
|
-
<span class="hits">
|
1407
|
+
<li class="covered" data-hits="33" data-linenumber="36">
|
1408
|
+
<span class="hits">33</span>
|
1409
|
+
|
1410
|
+
<code class="ruby"> @category = options.delete(:category)</code>
|
1411
|
+
</li>
|
1412
|
+
|
1413
|
+
<li class="covered" data-hits="33" data-linenumber="37">
|
1414
|
+
<span class="hits">33</span>
|
1295
1415
|
|
1296
1416
|
<code class="ruby"> @expiry = options.delete(:expiry)</code>
|
1297
1417
|
</li>
|
1298
1418
|
|
1299
|
-
<li class="covered" data-hits="
|
1300
|
-
<span class="hits">
|
1419
|
+
<li class="covered" data-hits="33" data-linenumber="38">
|
1420
|
+
<span class="hits">33</span>
|
1301
1421
|
|
1302
1422
|
<code class="ruby"> @id = options.delete(:id)</code>
|
1303
1423
|
</li>
|
1304
1424
|
|
1305
|
-
<li class="covered" data-hits="
|
1306
|
-
<span class="hits">
|
1425
|
+
<li class="covered" data-hits="33" data-linenumber="39">
|
1426
|
+
<span class="hits">33</span>
|
1307
1427
|
|
1308
1428
|
<code class="ruby"> @priority = options.delete(:priority)</code>
|
1309
1429
|
</li>
|
1310
1430
|
|
1311
|
-
<li class="covered" data-hits="
|
1312
|
-
<span class="hits">
|
1431
|
+
<li class="covered" data-hits="33" data-linenumber="40">
|
1432
|
+
<span class="hits">33</span>
|
1313
1433
|
|
1314
1434
|
<code class="ruby"> @content_available = options.delete(:content_available)</code>
|
1315
1435
|
</li>
|
1316
1436
|
|
1317
|
-
<li class="never" data-hits="" data-linenumber="
|
1437
|
+
<li class="never" data-hits="" data-linenumber="41">
|
1318
1438
|
|
1319
1439
|
|
1320
1440
|
<code class="ruby"></code>
|
1321
1441
|
</li>
|
1322
1442
|
|
1323
|
-
<li class="covered" data-hits="
|
1324
|
-
<span class="hits">
|
1443
|
+
<li class="covered" data-hits="33" data-linenumber="42">
|
1444
|
+
<span class="hits">33</span>
|
1325
1445
|
|
1326
1446
|
<code class="ruby"> @custom_data = options</code>
|
1327
1447
|
</li>
|
1328
1448
|
|
1329
|
-
<li class="never" data-hits="" data-linenumber="
|
1449
|
+
<li class="never" data-hits="" data-linenumber="43">
|
1330
1450
|
|
1331
1451
|
|
1332
1452
|
<code class="ruby"> end</code>
|
1333
1453
|
</li>
|
1334
1454
|
|
1335
|
-
<li class="never" data-hits="" data-linenumber="
|
1455
|
+
<li class="never" data-hits="" data-linenumber="44">
|
1336
1456
|
|
1337
1457
|
|
1338
1458
|
<code class="ruby"></code>
|
1339
1459
|
</li>
|
1340
1460
|
|
1341
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1461
|
+
<li class="covered" data-hits="1" data-linenumber="45">
|
1342
1462
|
<span class="hits">1</span>
|
1343
1463
|
|
1344
1464
|
<code class="ruby"> def payload</code>
|
1345
1465
|
</li>
|
1346
1466
|
|
1347
|
-
<li class="covered" data-hits="
|
1348
|
-
<span class="hits">
|
1467
|
+
<li class="covered" data-hits="59" data-linenumber="46">
|
1468
|
+
<span class="hits">59</span>
|
1349
1469
|
|
1350
|
-
<code class="ruby"> json = {}.merge(@custom_data || {})</code>
|
1470
|
+
<code class="ruby"> json = {}.merge(@custom_data || {}).inject({}){|h,(k,v)| h[k.to_s] = v; h}</code>
|
1351
1471
|
</li>
|
1352
1472
|
|
1353
|
-
<li class="
|
1354
|
-
|
1473
|
+
<li class="never" data-hits="" data-linenumber="47">
|
1474
|
+
|
1475
|
+
|
1476
|
+
<code class="ruby"></code>
|
1477
|
+
</li>
|
1478
|
+
|
1479
|
+
<li class="covered" data-hits="23" data-linenumber="48">
|
1480
|
+
<span class="hits">23</span>
|
1355
1481
|
|
1356
1482
|
<code class="ruby"> json['aps'] ||= {}</code>
|
1357
1483
|
</li>
|
1358
1484
|
|
1359
|
-
<li class="covered" data-hits="
|
1360
|
-
<span class="hits">
|
1485
|
+
<li class="covered" data-hits="23" data-linenumber="49">
|
1486
|
+
<span class="hits">23</span>
|
1361
1487
|
|
1362
1488
|
<code class="ruby"> json['aps']['alert'] = @alert if @alert</code>
|
1363
1489
|
</li>
|
1364
1490
|
|
1365
|
-
<li class="covered" data-hits="
|
1366
|
-
<span class="hits">
|
1491
|
+
<li class="covered" data-hits="23" data-linenumber="50">
|
1492
|
+
<span class="hits">23</span>
|
1367
1493
|
|
1368
1494
|
<code class="ruby"> json['aps']['badge'] = @badge.to_i rescue 0 if @badge</code>
|
1369
1495
|
</li>
|
1370
1496
|
|
1371
|
-
<li class="covered" data-hits="
|
1372
|
-
<span class="hits">
|
1497
|
+
<li class="covered" data-hits="23" data-linenumber="51">
|
1498
|
+
<span class="hits">23</span>
|
1373
1499
|
|
1374
1500
|
<code class="ruby"> json['aps']['sound'] = @sound if @sound</code>
|
1375
1501
|
</li>
|
1376
1502
|
|
1377
|
-
<li class="covered" data-hits="
|
1378
|
-
<span class="hits">
|
1503
|
+
<li class="covered" data-hits="23" data-linenumber="52">
|
1504
|
+
<span class="hits">23</span>
|
1505
|
+
|
1506
|
+
<code class="ruby"> json['aps']['category'] = @category if @category</code>
|
1507
|
+
</li>
|
1508
|
+
|
1509
|
+
<li class="covered" data-hits="23" data-linenumber="53">
|
1510
|
+
<span class="hits">23</span>
|
1379
1511
|
|
1380
1512
|
<code class="ruby"> json['aps']['content-available'] = 1 if @content_available</code>
|
1381
1513
|
</li>
|
1382
1514
|
|
1383
|
-
<li class="never" data-hits="" data-linenumber="
|
1515
|
+
<li class="never" data-hits="" data-linenumber="54">
|
1384
1516
|
|
1385
1517
|
|
1386
1518
|
<code class="ruby"></code>
|
1387
1519
|
</li>
|
1388
1520
|
|
1389
|
-
<li class="covered" data-hits="
|
1390
|
-
<span class="hits">
|
1521
|
+
<li class="covered" data-hits="23" data-linenumber="55">
|
1522
|
+
<span class="hits">23</span>
|
1391
1523
|
|
1392
1524
|
<code class="ruby"> json</code>
|
1393
1525
|
</li>
|
1394
1526
|
|
1395
|
-
<li class="never" data-hits="" data-linenumber="
|
1527
|
+
<li class="never" data-hits="" data-linenumber="56">
|
1396
1528
|
|
1397
1529
|
|
1398
1530
|
<code class="ruby"> end</code>
|
1399
1531
|
</li>
|
1400
1532
|
|
1401
|
-
<li class="never" data-hits="" data-linenumber="
|
1533
|
+
<li class="never" data-hits="" data-linenumber="57">
|
1402
1534
|
|
1403
1535
|
|
1404
1536
|
<code class="ruby"></code>
|
1405
1537
|
</li>
|
1406
1538
|
|
1407
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1539
|
+
<li class="covered" data-hits="1" data-linenumber="58">
|
1408
1540
|
<span class="hits">1</span>
|
1409
1541
|
|
1410
1542
|
<code class="ruby"> def message</code>
|
1411
1543
|
</li>
|
1412
1544
|
|
1413
|
-
<li class="covered" data-hits="
|
1414
|
-
<span class="hits">
|
1545
|
+
<li class="covered" data-hits="15" data-linenumber="59">
|
1546
|
+
<span class="hits">15</span>
|
1415
1547
|
|
1416
1548
|
<code class="ruby"> data = [device_token_item,</code>
|
1417
1549
|
</li>
|
1418
1550
|
|
1419
|
-
<li class="never" data-hits="" data-linenumber="
|
1551
|
+
<li class="never" data-hits="" data-linenumber="60">
|
1420
1552
|
|
1421
1553
|
|
1422
1554
|
<code class="ruby"> payload_item,</code>
|
1423
1555
|
</li>
|
1424
1556
|
|
1425
|
-
<li class="never" data-hits="" data-linenumber="
|
1557
|
+
<li class="never" data-hits="" data-linenumber="61">
|
1426
1558
|
|
1427
1559
|
|
1428
1560
|
<code class="ruby"> identifier_item,</code>
|
1429
1561
|
</li>
|
1430
1562
|
|
1431
|
-
<li class="never" data-hits="" data-linenumber="
|
1563
|
+
<li class="never" data-hits="" data-linenumber="62">
|
1432
1564
|
|
1433
1565
|
|
1434
1566
|
<code class="ruby"> expiration_item,</code>
|
1435
1567
|
</li>
|
1436
1568
|
|
1437
|
-
<li class="never" data-hits="" data-linenumber="
|
1569
|
+
<li class="never" data-hits="" data-linenumber="63">
|
1438
1570
|
|
1439
1571
|
|
1440
1572
|
<code class="ruby"> priority_item].compact.join</code>
|
1441
1573
|
</li>
|
1442
1574
|
|
1443
|
-
<li class="covered" data-hits="
|
1444
|
-
<span class="hits">
|
1575
|
+
<li class="covered" data-hits="15" data-linenumber="64">
|
1576
|
+
<span class="hits">15</span>
|
1445
1577
|
|
1446
1578
|
<code class="ruby"> [2, data.bytes.count, data].pack('cNa*')</code>
|
1447
1579
|
</li>
|
1448
1580
|
|
1449
|
-
<li class="never" data-hits="" data-linenumber="
|
1581
|
+
<li class="never" data-hits="" data-linenumber="65">
|
1450
1582
|
|
1451
1583
|
|
1452
1584
|
<code class="ruby"> end</code>
|
1453
1585
|
</li>
|
1454
1586
|
|
1455
|
-
<li class="never" data-hits="" data-linenumber="
|
1587
|
+
<li class="never" data-hits="" data-linenumber="66">
|
1456
1588
|
|
1457
1589
|
|
1458
1590
|
<code class="ruby"></code>
|
1459
1591
|
</li>
|
1460
1592
|
|
1461
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1593
|
+
<li class="covered" data-hits="1" data-linenumber="67">
|
1462
1594
|
<span class="hits">1</span>
|
1463
1595
|
|
1464
1596
|
<code class="ruby"> def mark_as_sent!</code>
|
1465
1597
|
</li>
|
1466
1598
|
|
1467
|
-
<li class="covered" data-hits="2" data-linenumber="
|
1599
|
+
<li class="covered" data-hits="2" data-linenumber="68">
|
1468
1600
|
<span class="hits">2</span>
|
1469
1601
|
|
1470
1602
|
<code class="ruby"> @sent_at = Time.now</code>
|
1471
1603
|
</li>
|
1472
1604
|
|
1473
|
-
<li class="never" data-hits="" data-linenumber="
|
1605
|
+
<li class="never" data-hits="" data-linenumber="69">
|
1474
1606
|
|
1475
1607
|
|
1476
1608
|
<code class="ruby"> end</code>
|
1477
1609
|
</li>
|
1478
1610
|
|
1479
|
-
<li class="never" data-hits="" data-linenumber="
|
1611
|
+
<li class="never" data-hits="" data-linenumber="70">
|
1480
1612
|
|
1481
1613
|
|
1482
1614
|
<code class="ruby"></code>
|
1483
1615
|
</li>
|
1484
1616
|
|
1485
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1617
|
+
<li class="covered" data-hits="1" data-linenumber="71">
|
1486
1618
|
<span class="hits">1</span>
|
1487
1619
|
|
1488
1620
|
<code class="ruby"> def mark_as_unsent!</code>
|
1489
1621
|
</li>
|
1490
1622
|
|
1491
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1623
|
+
<li class="covered" data-hits="1" data-linenumber="72">
|
1492
1624
|
<span class="hits">1</span>
|
1493
1625
|
|
1494
1626
|
<code class="ruby"> @sent_at = nil</code>
|
1495
1627
|
</li>
|
1496
1628
|
|
1497
|
-
<li class="never" data-hits="" data-linenumber="
|
1629
|
+
<li class="never" data-hits="" data-linenumber="73">
|
1498
1630
|
|
1499
1631
|
|
1500
1632
|
<code class="ruby"> end</code>
|
1501
1633
|
</li>
|
1502
1634
|
|
1503
|
-
<li class="never" data-hits="" data-linenumber="
|
1635
|
+
<li class="never" data-hits="" data-linenumber="74">
|
1504
1636
|
|
1505
1637
|
|
1506
1638
|
<code class="ruby"></code>
|
1507
1639
|
</li>
|
1508
1640
|
|
1509
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1641
|
+
<li class="covered" data-hits="1" data-linenumber="75">
|
1510
1642
|
<span class="hits">1</span>
|
1511
1643
|
|
1512
1644
|
<code class="ruby"> def sent?</code>
|
1513
1645
|
</li>
|
1514
1646
|
|
1515
|
-
<li class="covered" data-hits="3" data-linenumber="
|
1647
|
+
<li class="covered" data-hits="3" data-linenumber="76">
|
1516
1648
|
<span class="hits">3</span>
|
1517
1649
|
|
1518
1650
|
<code class="ruby"> !!@sent_at</code>
|
1519
1651
|
</li>
|
1520
1652
|
|
1521
|
-
<li class="never" data-hits="" data-linenumber="
|
1653
|
+
<li class="never" data-hits="" data-linenumber="77">
|
1522
1654
|
|
1523
1655
|
|
1524
1656
|
<code class="ruby"> end</code>
|
1525
1657
|
</li>
|
1526
1658
|
|
1527
|
-
<li class="never" data-hits="" data-linenumber="
|
1659
|
+
<li class="never" data-hits="" data-linenumber="78">
|
1528
1660
|
|
1529
1661
|
|
1530
1662
|
<code class="ruby"></code>
|
1531
1663
|
</li>
|
1532
1664
|
|
1533
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1665
|
+
<li class="covered" data-hits="1" data-linenumber="79">
|
1534
1666
|
<span class="hits">1</span>
|
1535
1667
|
|
1536
1668
|
<code class="ruby"> def valid?</code>
|
1537
1669
|
</li>
|
1538
1670
|
|
1539
|
-
<li class="missed" data-hits="0" data-linenumber="
|
1671
|
+
<li class="missed" data-hits="0" data-linenumber="80">
|
1540
1672
|
|
1541
1673
|
|
1542
1674
|
<code class="ruby"> payload.to_json.bytesize <= MAXIMUM_PAYLOAD_SIZE</code>
|
1543
1675
|
</li>
|
1544
1676
|
|
1545
|
-
<li class="never" data-hits="" data-linenumber="
|
1677
|
+
<li class="never" data-hits="" data-linenumber="81">
|
1546
1678
|
|
1547
1679
|
|
1548
1680
|
<code class="ruby"> end</code>
|
1549
1681
|
</li>
|
1550
1682
|
|
1551
|
-
<li class="never" data-hits="" data-linenumber="
|
1683
|
+
<li class="never" data-hits="" data-linenumber="82">
|
1552
1684
|
|
1553
1685
|
|
1554
1686
|
<code class="ruby"></code>
|
1555
1687
|
</li>
|
1556
1688
|
|
1557
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1689
|
+
<li class="covered" data-hits="1" data-linenumber="83">
|
1690
|
+
<span class="hits">1</span>
|
1691
|
+
|
1692
|
+
<code class="ruby"> def error</code>
|
1693
|
+
</li>
|
1694
|
+
|
1695
|
+
<li class="missed" data-hits="0" data-linenumber="84">
|
1696
|
+
|
1697
|
+
|
1698
|
+
<code class="ruby"> APNSError.new(APNSError::CODES[@apns_error_code]) if @apns_error_code.nonzero?</code>
|
1699
|
+
</li>
|
1700
|
+
|
1701
|
+
<li class="never" data-hits="" data-linenumber="85">
|
1702
|
+
|
1703
|
+
|
1704
|
+
<code class="ruby"> end</code>
|
1705
|
+
</li>
|
1706
|
+
|
1707
|
+
<li class="never" data-hits="" data-linenumber="86">
|
1708
|
+
|
1709
|
+
|
1710
|
+
<code class="ruby"></code>
|
1711
|
+
</li>
|
1712
|
+
|
1713
|
+
<li class="covered" data-hits="1" data-linenumber="87">
|
1558
1714
|
<span class="hits">1</span>
|
1559
1715
|
|
1560
1716
|
<code class="ruby"> private</code>
|
1561
1717
|
</li>
|
1562
1718
|
|
1563
|
-
<li class="never" data-hits="" data-linenumber="
|
1719
|
+
<li class="never" data-hits="" data-linenumber="88">
|
1564
1720
|
|
1565
1721
|
|
1566
|
-
<code class="ruby"
|
1722
|
+
<code class="ruby"></code>
|
1567
1723
|
</li>
|
1568
1724
|
|
1569
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1725
|
+
<li class="covered" data-hits="1" data-linenumber="89">
|
1570
1726
|
<span class="hits">1</span>
|
1571
1727
|
|
1572
1728
|
<code class="ruby"> def device_token_item</code>
|
1573
1729
|
</li>
|
1574
1730
|
|
1575
|
-
<li class="covered" data-hits="
|
1576
|
-
<span class="hits">
|
1731
|
+
<li class="covered" data-hits="15" data-linenumber="90">
|
1732
|
+
<span class="hits">15</span>
|
1577
1733
|
|
1578
|
-
<code class="ruby"> [1, 32, @token.gsub(/[<\s>]/, '')].pack('
|
1734
|
+
<code class="ruby"> [1, 32, @token.gsub(/[<\s>]/, '')].pack('cnH64')</code>
|
1579
1735
|
</li>
|
1580
1736
|
|
1581
|
-
<li class="never" data-hits="" data-linenumber="
|
1737
|
+
<li class="never" data-hits="" data-linenumber="91">
|
1582
1738
|
|
1583
1739
|
|
1584
1740
|
<code class="ruby"> end</code>
|
1585
1741
|
</li>
|
1586
1742
|
|
1587
|
-
<li class="never" data-hits="" data-linenumber="
|
1743
|
+
<li class="never" data-hits="" data-linenumber="92">
|
1588
1744
|
|
1589
1745
|
|
1590
1746
|
<code class="ruby"></code>
|
1591
1747
|
</li>
|
1592
1748
|
|
1593
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1749
|
+
<li class="covered" data-hits="1" data-linenumber="93">
|
1594
1750
|
<span class="hits">1</span>
|
1595
1751
|
|
1596
1752
|
<code class="ruby"> def payload_item</code>
|
1597
1753
|
</li>
|
1598
1754
|
|
1599
|
-
<li class="covered" data-hits="
|
1600
|
-
<span class="hits">
|
1755
|
+
<li class="covered" data-hits="15" data-linenumber="94">
|
1756
|
+
<span class="hits">15</span>
|
1601
1757
|
|
1602
1758
|
<code class="ruby"> json = payload.to_json</code>
|
1603
1759
|
</li>
|
1604
1760
|
|
1605
|
-
<li class="covered" data-hits="
|
1606
|
-
<span class="hits">
|
1761
|
+
<li class="covered" data-hits="15" data-linenumber="95">
|
1762
|
+
<span class="hits">15</span>
|
1607
1763
|
|
1608
1764
|
<code class="ruby"> [2, json.bytes.count, json].pack('cna*')</code>
|
1609
1765
|
</li>
|
1610
1766
|
|
1611
|
-
<li class="never" data-hits="" data-linenumber="
|
1767
|
+
<li class="never" data-hits="" data-linenumber="96">
|
1612
1768
|
|
1613
1769
|
|
1614
1770
|
<code class="ruby"> end</code>
|
1615
1771
|
</li>
|
1616
1772
|
|
1617
|
-
<li class="never" data-hits="" data-linenumber="
|
1773
|
+
<li class="never" data-hits="" data-linenumber="97">
|
1618
1774
|
|
1619
1775
|
|
1620
1776
|
<code class="ruby"></code>
|
1621
1777
|
</li>
|
1622
1778
|
|
1623
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1779
|
+
<li class="covered" data-hits="1" data-linenumber="98">
|
1624
1780
|
<span class="hits">1</span>
|
1625
1781
|
|
1626
1782
|
<code class="ruby"> def identifier_item</code>
|
1627
1783
|
</li>
|
1628
1784
|
|
1629
|
-
<li class="covered" data-hits="
|
1630
|
-
<span class="hits">
|
1785
|
+
<li class="covered" data-hits="15" data-linenumber="99">
|
1786
|
+
<span class="hits">15</span>
|
1631
1787
|
|
1632
1788
|
<code class="ruby"> [3, 4, @id].pack('cnN') unless @id.nil?</code>
|
1633
1789
|
</li>
|
1634
1790
|
|
1635
|
-
<li class="never" data-hits="" data-linenumber="
|
1791
|
+
<li class="never" data-hits="" data-linenumber="100">
|
1636
1792
|
|
1637
1793
|
|
1638
1794
|
<code class="ruby"> end</code>
|
1639
1795
|
</li>
|
1640
1796
|
|
1641
|
-
<li class="never" data-hits="" data-linenumber="
|
1797
|
+
<li class="never" data-hits="" data-linenumber="101">
|
1642
1798
|
|
1643
1799
|
|
1644
1800
|
<code class="ruby"></code>
|
1645
1801
|
</li>
|
1646
1802
|
|
1647
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1803
|
+
<li class="covered" data-hits="1" data-linenumber="102">
|
1648
1804
|
<span class="hits">1</span>
|
1649
1805
|
|
1650
1806
|
<code class="ruby"> def expiration_item</code>
|
1651
1807
|
</li>
|
1652
1808
|
|
1653
|
-
<li class="covered" data-hits="
|
1654
|
-
<span class="hits">
|
1809
|
+
<li class="covered" data-hits="15" data-linenumber="103">
|
1810
|
+
<span class="hits">15</span>
|
1655
1811
|
|
1656
1812
|
<code class="ruby"> [4, 4, @expiry.to_i].pack('cnN') unless @expiry.nil?</code>
|
1657
1813
|
</li>
|
1658
1814
|
|
1659
|
-
<li class="never" data-hits="" data-linenumber="
|
1815
|
+
<li class="never" data-hits="" data-linenumber="104">
|
1660
1816
|
|
1661
1817
|
|
1662
1818
|
<code class="ruby"> end</code>
|
1663
1819
|
</li>
|
1664
1820
|
|
1665
|
-
<li class="never" data-hits="" data-linenumber="
|
1821
|
+
<li class="never" data-hits="" data-linenumber="105">
|
1666
1822
|
|
1667
1823
|
|
1668
1824
|
<code class="ruby"></code>
|
1669
1825
|
</li>
|
1670
1826
|
|
1671
|
-
<li class="covered" data-hits="1" data-linenumber="
|
1827
|
+
<li class="covered" data-hits="1" data-linenumber="106">
|
1672
1828
|
<span class="hits">1</span>
|
1673
1829
|
|
1674
1830
|
<code class="ruby"> def priority_item</code>
|
1675
1831
|
</li>
|
1676
1832
|
|
1677
|
-
<li class="covered" data-hits="
|
1678
|
-
<span class="hits">
|
1833
|
+
<li class="covered" data-hits="15" data-linenumber="107">
|
1834
|
+
<span class="hits">15</span>
|
1679
1835
|
|
1680
1836
|
<code class="ruby"> [5, 1, @priority].pack('cnc') unless @priority.nil?</code>
|
1681
1837
|
</li>
|
1682
1838
|
|
1683
|
-
<li class="never" data-hits="" data-linenumber="
|
1839
|
+
<li class="never" data-hits="" data-linenumber="108">
|
1684
1840
|
|
1685
1841
|
|
1686
1842
|
<code class="ruby"> end</code>
|
1687
1843
|
</li>
|
1688
1844
|
|
1689
|
-
<li class="never" data-hits="" data-linenumber="
|
1845
|
+
<li class="never" data-hits="" data-linenumber="109">
|
1690
1846
|
|
1691
1847
|
|
1692
1848
|
<code class="ruby"> end</code>
|
1693
1849
|
</li>
|
1694
1850
|
|
1695
|
-
<li class="never" data-hits="" data-linenumber="
|
1851
|
+
<li class="never" data-hits="" data-linenumber="110">
|
1696
1852
|
|
1697
1853
|
|
1698
1854
|
<code class="ruby">end</code>
|