houston 2.2.3 → 2.2.4
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 +1 -1
- data/Gemfile.lock +27 -24
- data/LICENSE +1 -1
- data/README.md +60 -15
- data/Rakefile +4 -8
- data/coverage/assets/{0.8.0 → 0.10.0}/application.css +0 -0
- data/coverage/assets/{0.8.0 → 0.10.0}/application.js +1079 -931
- data/coverage/assets/{0.8.0 → 0.10.0}/colorbox/border.png +0 -0
- data/coverage/assets/{0.8.0 → 0.10.0}/colorbox/controls.png +0 -0
- data/coverage/assets/{0.8.0 → 0.10.0}/colorbox/loading.gif +0 -0
- data/coverage/assets/{0.8.0 → 0.10.0}/colorbox/loading_background.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/favicon_green.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/favicon_red.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/favicon_yellow.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/loading.gif +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/magnify.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-icons_222222_256x240.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-icons_454545_256x240.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-icons_888888_256x240.png +0 -0
- data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/coverage/index.html +296 -184
- data/houston.gemspec +17 -17
- data/lib/houston/client.rb +16 -8
- data/lib/houston/connection.rb +1 -1
- data/lib/houston/notification.rb +33 -30
- data/lib/houston/version.rb +1 -1
- data/spec/client_spec.rb +13 -13
- data/spec/notification_spec.rb +25 -21
- data/spec/spec_helper.rb +2 -2
- metadata +56 -97
- data/coverage/assets/0.7.1/application.css +0 -1110
- data/coverage/assets/0.7.1/application.js +0 -626
- data/coverage/assets/0.7.1/fancybox/blank.gif +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_close.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_loading.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_nav_left.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_nav_right.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_shadow_e.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_shadow_n.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_shadow_ne.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_shadow_nw.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_shadow_s.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_shadow_se.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_shadow_sw.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_shadow_w.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_title_left.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_title_main.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_title_over.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancy_title_right.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancybox-x.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancybox-y.png +0 -0
- data/coverage/assets/0.7.1/fancybox/fancybox.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/houston-2.2.2.gem +0 -0
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
data/coverage/assets/{0.7.1 → 0.10.0}/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
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.10.0/application.js' type='text/javascript'></script>
|
|
7
|
+
<link href='./assets/0.10.0/application.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
|
|
8
|
+
<link rel="shortcut icon" type="image/png" href="./assets/0.10.0/favicon_red.png" />
|
|
9
|
+
<link rel="icon" type="image/png" href="./assets/0.10.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.10.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="
|
|
17
|
+
<div class="timestamp">Generated <abbr class="timeago" title="2017-01-11T12:32:00+03:00">2017-01-11T12:32:00+03: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">74.
|
|
24
|
+
(<span class="covered_percent"><span class="red">74.85%</span></span>
|
|
25
25
|
covered at
|
|
26
26
|
<span class="covered_strength">
|
|
27
27
|
<span class="green">
|
|
28
|
-
|
|
28
|
+
6.2
|
|
29
29
|
</span>
|
|
30
30
|
</span> hits/line)
|
|
31
31
|
</h2>
|
|
32
32
|
<a name="AllFiles"></a>
|
|
33
33
|
<div>
|
|
34
|
-
<b>
|
|
35
|
-
<b>
|
|
36
|
-
<span class="green"><b>
|
|
37
|
-
<span class="red"><b>
|
|
34
|
+
<b>5</b> files in total.
|
|
35
|
+
<b>167</b> relevant lines.
|
|
36
|
+
<span class="green"><b>125</b> lines covered</span> and
|
|
37
|
+
<span class="red"><b>42</b> lines missed </span>
|
|
38
38
|
</div>
|
|
39
39
|
<table class="file_list">
|
|
40
40
|
<thead>
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
<tbody>
|
|
52
52
|
|
|
53
53
|
<tr>
|
|
54
|
-
<td class="strong"><a href="#
|
|
54
|
+
<td class="strong"><a href="#72d7df740003fec9ba7330c9230dc3a1edee4945" class="src_link" title="lib/houston.rb">lib/houston.rb</a></td>
|
|
55
55
|
<td class="green strong">100.0 %</td>
|
|
56
56
|
<td>4</td>
|
|
57
57
|
<td>4</td>
|
|
@@ -61,17 +61,17 @@
|
|
|
61
61
|
</tr>
|
|
62
62
|
|
|
63
63
|
<tr>
|
|
64
|
-
<td class="strong"><a href="#
|
|
65
|
-
<td class="red strong">
|
|
66
|
-
<td>
|
|
67
|
-
<td>
|
|
68
|
-
<td>
|
|
69
|
-
<td>
|
|
70
|
-
<td>2.
|
|
64
|
+
<td class="strong"><a href="#c4c7250bbb95849a2925fcae422513df8e00e04e" class="src_link" title="lib/houston/client.rb">lib/houston/client.rb</a></td>
|
|
65
|
+
<td class="red strong">68.97 %</td>
|
|
66
|
+
<td>92</td>
|
|
67
|
+
<td>58</td>
|
|
68
|
+
<td>40</td>
|
|
69
|
+
<td>18</td>
|
|
70
|
+
<td>2.8</td>
|
|
71
71
|
</tr>
|
|
72
72
|
|
|
73
73
|
<tr>
|
|
74
|
-
<td class="strong"><a href="#
|
|
74
|
+
<td class="strong"><a href="#6ad9dbe47d23364c5492cfc7f56fc9540e1a205f" class="src_link" title="lib/houston/connection.rb">lib/houston/connection.rb</a></td>
|
|
75
75
|
<td class="red strong">42.5 %</td>
|
|
76
76
|
<td>65</td>
|
|
77
77
|
<td>40</td>
|
|
@@ -81,13 +81,23 @@
|
|
|
81
81
|
</tr>
|
|
82
82
|
|
|
83
83
|
<tr>
|
|
84
|
-
<td class="strong"><a href="#
|
|
85
|
-
<td class="green strong">98.
|
|
86
|
-
<td>
|
|
87
|
-
<td>
|
|
88
|
-
<td>
|
|
84
|
+
<td class="strong"><a href="#77241215823ec249590ac9f1602fb0bded160262" class="src_link" title="lib/houston/notification.rb">lib/houston/notification.rb</a></td>
|
|
85
|
+
<td class="green strong">98.41 %</td>
|
|
86
|
+
<td>121</td>
|
|
87
|
+
<td>63</td>
|
|
88
|
+
<td>62</td>
|
|
89
89
|
<td>1</td>
|
|
90
|
-
<td>
|
|
90
|
+
<td>13.5</td>
|
|
91
|
+
</tr>
|
|
92
|
+
|
|
93
|
+
<tr>
|
|
94
|
+
<td class="strong"><a href="#e8b12a361feeb011b347553315d0176790f5020a" class="src_link" title="lib/houston/version.rb">lib/houston/version.rb</a></td>
|
|
95
|
+
<td class="green strong">100.0 %</td>
|
|
96
|
+
<td>3</td>
|
|
97
|
+
<td>2</td>
|
|
98
|
+
<td>2</td>
|
|
99
|
+
<td>0</td>
|
|
100
|
+
<td>1.0</td>
|
|
91
101
|
</tr>
|
|
92
102
|
|
|
93
103
|
</tbody>
|
|
@@ -99,14 +109,14 @@
|
|
|
99
109
|
</div>
|
|
100
110
|
|
|
101
111
|
<div id="footer">
|
|
102
|
-
Generated by <a href="http://github.com/colszowka/simplecov">simplecov</a> v0.
|
|
103
|
-
and simplecov-html v0.
|
|
112
|
+
Generated by <a href="http://github.com/colszowka/simplecov">simplecov</a> v0.12.0
|
|
113
|
+
and simplecov-html v0.10.0<br/>
|
|
104
114
|
using RSpec
|
|
105
115
|
</div>
|
|
106
116
|
|
|
107
117
|
<div class="source_files">
|
|
108
118
|
|
|
109
|
-
<div class="source_table" id="
|
|
119
|
+
<div class="source_table" id="72d7df740003fec9ba7330c9230dc3a1edee4945">
|
|
110
120
|
<div class="header">
|
|
111
121
|
<h3>lib/houston.rb</h3>
|
|
112
122
|
<h4><span class="green">100.0 %</span> covered</h4>
|
|
@@ -148,14 +158,14 @@
|
|
|
148
158
|
</pre>
|
|
149
159
|
</div>
|
|
150
160
|
|
|
151
|
-
<div class="source_table" id="
|
|
161
|
+
<div class="source_table" id="c4c7250bbb95849a2925fcae422513df8e00e04e">
|
|
152
162
|
<div class="header">
|
|
153
163
|
<h3>lib/houston/client.rb</h3>
|
|
154
|
-
<h4><span class="red">
|
|
164
|
+
<h4><span class="red">68.97 %</span> covered</h4>
|
|
155
165
|
<div>
|
|
156
|
-
<b>
|
|
157
|
-
<span class="green"><b>
|
|
158
|
-
<span class="red"><b>
|
|
166
|
+
<b>58</b> relevant lines.
|
|
167
|
+
<span class="green"><b>40</b> lines covered</span> and
|
|
168
|
+
<span class="red"><b>18</b> lines missed.</span>
|
|
159
169
|
</div>
|
|
160
170
|
</div>
|
|
161
171
|
|
|
@@ -171,13 +181,13 @@
|
|
|
171
181
|
<li class="covered" data-hits="1" data-linenumber="2">
|
|
172
182
|
<span class="hits">1</span>
|
|
173
183
|
|
|
174
|
-
<code class="ruby"> APPLE_PRODUCTION_GATEWAY_URI =
|
|
184
|
+
<code class="ruby"> APPLE_PRODUCTION_GATEWAY_URI = 'apn://gateway.push.apple.com:2195'</code>
|
|
175
185
|
</li>
|
|
176
186
|
|
|
177
187
|
<li class="covered" data-hits="1" data-linenumber="3">
|
|
178
188
|
<span class="hits">1</span>
|
|
179
189
|
|
|
180
|
-
<code class="ruby"> APPLE_PRODUCTION_FEEDBACK_URI =
|
|
190
|
+
<code class="ruby"> APPLE_PRODUCTION_FEEDBACK_URI = 'apn://feedback.push.apple.com:2196'</code>
|
|
181
191
|
</li>
|
|
182
192
|
|
|
183
193
|
<li class="never" data-hits="" data-linenumber="4">
|
|
@@ -189,13 +199,13 @@
|
|
|
189
199
|
<li class="covered" data-hits="1" data-linenumber="5">
|
|
190
200
|
<span class="hits">1</span>
|
|
191
201
|
|
|
192
|
-
<code class="ruby"> APPLE_DEVELOPMENT_GATEWAY_URI =
|
|
202
|
+
<code class="ruby"> APPLE_DEVELOPMENT_GATEWAY_URI = 'apn://gateway.sandbox.push.apple.com:2195'</code>
|
|
193
203
|
</li>
|
|
194
204
|
|
|
195
205
|
<li class="covered" data-hits="1" data-linenumber="6">
|
|
196
206
|
<span class="hits">1</span>
|
|
197
207
|
|
|
198
|
-
<code class="ruby"> APPLE_DEVELOPMENT_FEEDBACK_URI =
|
|
208
|
+
<code class="ruby"> APPLE_DEVELOPMENT_FEEDBACK_URI = 'apn://feedback.sandbox.push.apple.com:2196'</code>
|
|
199
209
|
</li>
|
|
200
210
|
|
|
201
211
|
<li class="never" data-hits="" data-linenumber="7">
|
|
@@ -339,7 +349,7 @@
|
|
|
339
349
|
<li class="covered" data-hits="13" data-linenumber="30">
|
|
340
350
|
<span class="hits">13</span>
|
|
341
351
|
|
|
342
|
-
<code class="ruby"> @certificate =
|
|
352
|
+
<code class="ruby"> @certificate = certificate_data</code>
|
|
343
353
|
</li>
|
|
344
354
|
|
|
345
355
|
<li class="covered" data-hits="13" data-linenumber="31">
|
|
@@ -495,7 +505,7 @@
|
|
|
495
505
|
<li class="missed" data-hits="0" data-linenumber="56">
|
|
496
506
|
|
|
497
507
|
|
|
498
|
-
<code class="ruby"> command, status, index = error.unpack(
|
|
508
|
+
<code class="ruby"> command, status, index = error.unpack('ccN')</code>
|
|
499
509
|
</li>
|
|
500
510
|
|
|
501
511
|
<li class="missed" data-hits="0" data-linenumber="57">
|
|
@@ -597,7 +607,7 @@
|
|
|
597
607
|
<li class="covered" data-hits="4" data-linenumber="73">
|
|
598
608
|
<span class="hits">4</span>
|
|
599
609
|
|
|
600
|
-
<code class="ruby"> devices << {token: token, timestamp: timestamp} if token && timestamp</code>
|
|
610
|
+
<code class="ruby"> devices << { token: token, timestamp: timestamp } if token && timestamp</code>
|
|
601
611
|
</li>
|
|
602
612
|
|
|
603
613
|
<li class="never" data-hits="" data-linenumber="74">
|
|
@@ -645,7 +655,7 @@
|
|
|
645
655
|
<li class="covered" data-hits="3" data-linenumber="81">
|
|
646
656
|
<span class="hits">3</span>
|
|
647
657
|
|
|
648
|
-
<code class="ruby"> unregistered_devices.collect{|device| device[:token]}</code>
|
|
658
|
+
<code class="ruby"> unregistered_devices.collect { |device| device[:token] }</code>
|
|
649
659
|
</li>
|
|
650
660
|
|
|
651
661
|
<li class="never" data-hits="" data-linenumber="82">
|
|
@@ -657,10 +667,58 @@
|
|
|
657
667
|
<li class="never" data-hits="" data-linenumber="83">
|
|
658
668
|
|
|
659
669
|
|
|
670
|
+
<code class="ruby"></code>
|
|
671
|
+
</li>
|
|
672
|
+
|
|
673
|
+
<li class="covered" data-hits="1" data-linenumber="84">
|
|
674
|
+
<span class="hits">1</span>
|
|
675
|
+
|
|
676
|
+
<code class="ruby"> def certificate_data</code>
|
|
677
|
+
</li>
|
|
678
|
+
|
|
679
|
+
<li class="covered" data-hits="13" data-linenumber="85">
|
|
680
|
+
<span class="hits">13</span>
|
|
681
|
+
|
|
682
|
+
<code class="ruby"> if ENV['APN_CERTIFICATE']</code>
|
|
683
|
+
</li>
|
|
684
|
+
|
|
685
|
+
<li class="missed" data-hits="0" data-linenumber="86">
|
|
686
|
+
|
|
687
|
+
|
|
688
|
+
<code class="ruby"> File.read(ENV['APN_CERTIFICATE'])</code>
|
|
689
|
+
</li>
|
|
690
|
+
|
|
691
|
+
<li class="covered" data-hits="13" data-linenumber="87">
|
|
692
|
+
<span class="hits">13</span>
|
|
693
|
+
|
|
694
|
+
<code class="ruby"> elsif ENV['APN_CERTIFICATE_DATA']</code>
|
|
695
|
+
</li>
|
|
696
|
+
|
|
697
|
+
<li class="missed" data-hits="0" data-linenumber="88">
|
|
698
|
+
|
|
699
|
+
|
|
700
|
+
<code class="ruby"> ENV['APN_CERTIFICATE_DATA']</code>
|
|
701
|
+
</li>
|
|
702
|
+
|
|
703
|
+
<li class="never" data-hits="" data-linenumber="89">
|
|
704
|
+
|
|
705
|
+
|
|
706
|
+
<code class="ruby"> end</code>
|
|
707
|
+
</li>
|
|
708
|
+
|
|
709
|
+
<li class="never" data-hits="" data-linenumber="90">
|
|
710
|
+
|
|
711
|
+
|
|
712
|
+
<code class="ruby"> end</code>
|
|
713
|
+
</li>
|
|
714
|
+
|
|
715
|
+
<li class="never" data-hits="" data-linenumber="91">
|
|
716
|
+
|
|
717
|
+
|
|
660
718
|
<code class="ruby"> end</code>
|
|
661
719
|
</li>
|
|
662
720
|
|
|
663
|
-
<li class="never" data-hits="" data-linenumber="
|
|
721
|
+
<li class="never" data-hits="" data-linenumber="92">
|
|
664
722
|
|
|
665
723
|
|
|
666
724
|
<code class="ruby">end</code>
|
|
@@ -670,7 +728,7 @@
|
|
|
670
728
|
</pre>
|
|
671
729
|
</div>
|
|
672
730
|
|
|
673
|
-
<div class="source_table" id="
|
|
731
|
+
<div class="source_table" id="6ad9dbe47d23364c5492cfc7f56fc9540e1a205f">
|
|
674
732
|
<div class="header">
|
|
675
733
|
<h3>lib/houston/connection.rb</h3>
|
|
676
734
|
<h4><span class="red">42.5 %</span> covered</h4>
|
|
@@ -969,7 +1027,7 @@
|
|
|
969
1027
|
<li class="missed" data-hits="0" data-linenumber="48">
|
|
970
1028
|
|
|
971
1029
|
|
|
972
|
-
<code class="ruby"> not (@ssl
|
|
1030
|
+
<code class="ruby"> not (@ssl && @socket).nil?</code>
|
|
973
1031
|
</li>
|
|
974
1032
|
|
|
975
1033
|
<li class="never" data-hits="" data-linenumber="49">
|
|
@@ -1078,13 +1136,13 @@
|
|
|
1078
1136
|
</pre>
|
|
1079
1137
|
</div>
|
|
1080
1138
|
|
|
1081
|
-
<div class="source_table" id="
|
|
1139
|
+
<div class="source_table" id="77241215823ec249590ac9f1602fb0bded160262">
|
|
1082
1140
|
<div class="header">
|
|
1083
1141
|
<h3>lib/houston/notification.rb</h3>
|
|
1084
|
-
<h4><span class="green">98.
|
|
1142
|
+
<h4><span class="green">98.41 %</span> covered</h4>
|
|
1085
1143
|
<div>
|
|
1086
|
-
<b>
|
|
1087
|
-
<span class="green"><b>
|
|
1144
|
+
<b>63</b> relevant lines.
|
|
1145
|
+
<span class="green"><b>62</b> lines covered</span> and
|
|
1088
1146
|
<span class="red"><b>1</b> lines missed.</span>
|
|
1089
1147
|
</div>
|
|
1090
1148
|
</div>
|
|
@@ -1137,67 +1195,67 @@
|
|
|
1137
1195
|
<li class="never" data-hits="" data-linenumber="8">
|
|
1138
1196
|
|
|
1139
1197
|
|
|
1140
|
-
<code class="ruby"> 0 =>
|
|
1198
|
+
<code class="ruby"> 0 => 'No errors encountered',</code>
|
|
1141
1199
|
</li>
|
|
1142
1200
|
|
|
1143
1201
|
<li class="never" data-hits="" data-linenumber="9">
|
|
1144
1202
|
|
|
1145
1203
|
|
|
1146
|
-
<code class="ruby"> 1 =>
|
|
1204
|
+
<code class="ruby"> 1 => 'Processing error',</code>
|
|
1147
1205
|
</li>
|
|
1148
1206
|
|
|
1149
1207
|
<li class="never" data-hits="" data-linenumber="10">
|
|
1150
1208
|
|
|
1151
1209
|
|
|
1152
|
-
<code class="ruby"> 2 =>
|
|
1210
|
+
<code class="ruby"> 2 => 'Missing device token',</code>
|
|
1153
1211
|
</li>
|
|
1154
1212
|
|
|
1155
1213
|
<li class="never" data-hits="" data-linenumber="11">
|
|
1156
1214
|
|
|
1157
1215
|
|
|
1158
|
-
<code class="ruby"> 3 =>
|
|
1216
|
+
<code class="ruby"> 3 => 'Missing topic',</code>
|
|
1159
1217
|
</li>
|
|
1160
1218
|
|
|
1161
1219
|
<li class="never" data-hits="" data-linenumber="12">
|
|
1162
1220
|
|
|
1163
1221
|
|
|
1164
|
-
<code class="ruby"> 4 =>
|
|
1222
|
+
<code class="ruby"> 4 => 'Missing payload',</code>
|
|
1165
1223
|
</li>
|
|
1166
1224
|
|
|
1167
1225
|
<li class="never" data-hits="" data-linenumber="13">
|
|
1168
1226
|
|
|
1169
1227
|
|
|
1170
|
-
<code class="ruby"> 5 =>
|
|
1228
|
+
<code class="ruby"> 5 => 'Invalid token size',</code>
|
|
1171
1229
|
</li>
|
|
1172
1230
|
|
|
1173
1231
|
<li class="never" data-hits="" data-linenumber="14">
|
|
1174
1232
|
|
|
1175
1233
|
|
|
1176
|
-
<code class="ruby"> 6 =>
|
|
1234
|
+
<code class="ruby"> 6 => 'Invalid topic size',</code>
|
|
1177
1235
|
</li>
|
|
1178
1236
|
|
|
1179
1237
|
<li class="never" data-hits="" data-linenumber="15">
|
|
1180
1238
|
|
|
1181
1239
|
|
|
1182
|
-
<code class="ruby"> 7 =>
|
|
1240
|
+
<code class="ruby"> 7 => 'Invalid payload size',</code>
|
|
1183
1241
|
</li>
|
|
1184
1242
|
|
|
1185
1243
|
<li class="never" data-hits="" data-linenumber="16">
|
|
1186
1244
|
|
|
1187
1245
|
|
|
1188
|
-
<code class="ruby"> 8 =>
|
|
1246
|
+
<code class="ruby"> 8 => 'Invalid token',</code>
|
|
1189
1247
|
</li>
|
|
1190
1248
|
|
|
1191
1249
|
<li class="never" data-hits="" data-linenumber="17">
|
|
1192
1250
|
|
|
1193
1251
|
|
|
1194
|
-
<code class="ruby"> 10 =>
|
|
1252
|
+
<code class="ruby"> 10 => 'Shutdown',</code>
|
|
1195
1253
|
</li>
|
|
1196
1254
|
|
|
1197
1255
|
<li class="never" data-hits="" data-linenumber="18">
|
|
1198
1256
|
|
|
1199
1257
|
|
|
1200
|
-
<code class="ruby"> 255 =>
|
|
1258
|
+
<code class="ruby"> 255 => 'Unknown error'</code>
|
|
1201
1259
|
</li>
|
|
1202
1260
|
|
|
1203
1261
|
<li class="never" data-hits="" data-linenumber="19">
|
|
@@ -1281,520 +1339,574 @@
|
|
|
1281
1339
|
<li class="covered" data-hits="1" data-linenumber="32">
|
|
1282
1340
|
<span class="hits">1</span>
|
|
1283
1341
|
|
|
1284
|
-
<code class="ruby"> attr_accessor :token, :alert, :badge, :sound, :category, :content_available, :
|
|
1342
|
+
<code class="ruby"> attr_accessor :token, :alert, :badge, :sound, :category, :content_available, :mutable_content,</code>
|
|
1285
1343
|
</li>
|
|
1286
1344
|
|
|
1287
|
-
<li class="
|
|
1345
|
+
<li class="never" data-hits="" data-linenumber="33">
|
|
1346
|
+
|
|
1347
|
+
|
|
1348
|
+
<code class="ruby"> :custom_data, :id, :expiry, :priority</code>
|
|
1349
|
+
</li>
|
|
1350
|
+
|
|
1351
|
+
<li class="covered" data-hits="1" data-linenumber="34">
|
|
1288
1352
|
<span class="hits">1</span>
|
|
1289
1353
|
|
|
1290
1354
|
<code class="ruby"> attr_reader :sent_at</code>
|
|
1291
1355
|
</li>
|
|
1292
1356
|
|
|
1293
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1357
|
+
<li class="covered" data-hits="1" data-linenumber="35">
|
|
1294
1358
|
<span class="hits">1</span>
|
|
1295
1359
|
|
|
1296
1360
|
<code class="ruby"> attr_writer :apns_error_code</code>
|
|
1297
1361
|
</li>
|
|
1298
1362
|
|
|
1299
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1363
|
+
<li class="never" data-hits="" data-linenumber="36">
|
|
1300
1364
|
|
|
1301
1365
|
|
|
1302
1366
|
<code class="ruby"></code>
|
|
1303
1367
|
</li>
|
|
1304
1368
|
|
|
1305
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1369
|
+
<li class="covered" data-hits="1" data-linenumber="37">
|
|
1306
1370
|
<span class="hits">1</span>
|
|
1307
1371
|
|
|
1308
1372
|
<code class="ruby"> alias :device :token</code>
|
|
1309
1373
|
</li>
|
|
1310
1374
|
|
|
1311
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1375
|
+
<li class="covered" data-hits="1" data-linenumber="38">
|
|
1312
1376
|
<span class="hits">1</span>
|
|
1313
1377
|
|
|
1314
1378
|
<code class="ruby"> alias :device= :token=</code>
|
|
1315
1379
|
</li>
|
|
1316
1380
|
|
|
1317
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1381
|
+
<li class="never" data-hits="" data-linenumber="39">
|
|
1318
1382
|
|
|
1319
1383
|
|
|
1320
1384
|
<code class="ruby"></code>
|
|
1321
1385
|
</li>
|
|
1322
1386
|
|
|
1323
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1387
|
+
<li class="covered" data-hits="1" data-linenumber="40">
|
|
1324
1388
|
<span class="hits">1</span>
|
|
1325
1389
|
|
|
1326
1390
|
<code class="ruby"> def initialize(options = {})</code>
|
|
1327
1391
|
</li>
|
|
1328
1392
|
|
|
1329
|
-
<li class="covered" data-hits="
|
|
1330
|
-
<span class="hits">
|
|
1393
|
+
<li class="covered" data-hits="39" data-linenumber="41">
|
|
1394
|
+
<span class="hits">39</span>
|
|
1331
1395
|
|
|
1332
1396
|
<code class="ruby"> @token = options.delete(:token) || options.delete(:device)</code>
|
|
1333
1397
|
</li>
|
|
1334
1398
|
|
|
1335
|
-
<li class="covered" data-hits="
|
|
1336
|
-
<span class="hits">
|
|
1399
|
+
<li class="covered" data-hits="39" data-linenumber="42">
|
|
1400
|
+
<span class="hits">39</span>
|
|
1337
1401
|
|
|
1338
1402
|
<code class="ruby"> @alert = options.delete(:alert)</code>
|
|
1339
1403
|
</li>
|
|
1340
1404
|
|
|
1341
|
-
<li class="covered" data-hits="
|
|
1342
|
-
<span class="hits">
|
|
1405
|
+
<li class="covered" data-hits="39" data-linenumber="43">
|
|
1406
|
+
<span class="hits">39</span>
|
|
1343
1407
|
|
|
1344
1408
|
<code class="ruby"> @badge = options.delete(:badge)</code>
|
|
1345
1409
|
</li>
|
|
1346
1410
|
|
|
1347
|
-
<li class="covered" data-hits="
|
|
1348
|
-
<span class="hits">
|
|
1411
|
+
<li class="covered" data-hits="39" data-linenumber="44">
|
|
1412
|
+
<span class="hits">39</span>
|
|
1349
1413
|
|
|
1350
1414
|
<code class="ruby"> @sound = options.delete(:sound)</code>
|
|
1351
1415
|
</li>
|
|
1352
1416
|
|
|
1353
|
-
<li class="covered" data-hits="
|
|
1354
|
-
<span class="hits">
|
|
1417
|
+
<li class="covered" data-hits="39" data-linenumber="45">
|
|
1418
|
+
<span class="hits">39</span>
|
|
1355
1419
|
|
|
1356
1420
|
<code class="ruby"> @category = options.delete(:category)</code>
|
|
1357
1421
|
</li>
|
|
1358
1422
|
|
|
1359
|
-
<li class="covered" data-hits="
|
|
1360
|
-
<span class="hits">
|
|
1423
|
+
<li class="covered" data-hits="39" data-linenumber="46">
|
|
1424
|
+
<span class="hits">39</span>
|
|
1361
1425
|
|
|
1362
1426
|
<code class="ruby"> @expiry = options.delete(:expiry)</code>
|
|
1363
1427
|
</li>
|
|
1364
1428
|
|
|
1365
|
-
<li class="covered" data-hits="
|
|
1366
|
-
<span class="hits">
|
|
1429
|
+
<li class="covered" data-hits="39" data-linenumber="47">
|
|
1430
|
+
<span class="hits">39</span>
|
|
1367
1431
|
|
|
1368
1432
|
<code class="ruby"> @id = options.delete(:id)</code>
|
|
1369
1433
|
</li>
|
|
1370
1434
|
|
|
1371
|
-
<li class="covered" data-hits="
|
|
1372
|
-
<span class="hits">
|
|
1435
|
+
<li class="covered" data-hits="39" data-linenumber="48">
|
|
1436
|
+
<span class="hits">39</span>
|
|
1373
1437
|
|
|
1374
1438
|
<code class="ruby"> @priority = options.delete(:priority)</code>
|
|
1375
1439
|
</li>
|
|
1376
1440
|
|
|
1377
|
-
<li class="covered" data-hits="
|
|
1378
|
-
<span class="hits">
|
|
1441
|
+
<li class="covered" data-hits="39" data-linenumber="49">
|
|
1442
|
+
<span class="hits">39</span>
|
|
1379
1443
|
|
|
1380
1444
|
<code class="ruby"> @content_available = options.delete(:content_available)</code>
|
|
1381
1445
|
</li>
|
|
1382
1446
|
|
|
1383
|
-
<li class="
|
|
1447
|
+
<li class="covered" data-hits="39" data-linenumber="50">
|
|
1448
|
+
<span class="hits">39</span>
|
|
1449
|
+
|
|
1450
|
+
<code class="ruby"> @mutable_content = options.delete(:mutable_content)</code>
|
|
1451
|
+
</li>
|
|
1452
|
+
|
|
1453
|
+
<li class="never" data-hits="" data-linenumber="51">
|
|
1384
1454
|
|
|
1385
1455
|
|
|
1386
1456
|
<code class="ruby"></code>
|
|
1387
1457
|
</li>
|
|
1388
1458
|
|
|
1389
|
-
<li class="covered" data-hits="
|
|
1390
|
-
<span class="hits">
|
|
1459
|
+
<li class="covered" data-hits="39" data-linenumber="52">
|
|
1460
|
+
<span class="hits">39</span>
|
|
1391
1461
|
|
|
1392
1462
|
<code class="ruby"> @custom_data = options</code>
|
|
1393
1463
|
</li>
|
|
1394
1464
|
|
|
1395
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1465
|
+
<li class="never" data-hits="" data-linenumber="53">
|
|
1396
1466
|
|
|
1397
1467
|
|
|
1398
1468
|
<code class="ruby"> end</code>
|
|
1399
1469
|
</li>
|
|
1400
1470
|
|
|
1401
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1471
|
+
<li class="never" data-hits="" data-linenumber="54">
|
|
1402
1472
|
|
|
1403
1473
|
|
|
1404
1474
|
<code class="ruby"></code>
|
|
1405
1475
|
</li>
|
|
1406
1476
|
|
|
1407
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1477
|
+
<li class="covered" data-hits="1" data-linenumber="55">
|
|
1408
1478
|
<span class="hits">1</span>
|
|
1409
1479
|
|
|
1410
1480
|
<code class="ruby"> def payload</code>
|
|
1411
1481
|
</li>
|
|
1412
1482
|
|
|
1413
|
-
<li class="covered" data-hits="
|
|
1414
|
-
<span class="hits">
|
|
1483
|
+
<li class="covered" data-hits="61" data-linenumber="56">
|
|
1484
|
+
<span class="hits">61</span>
|
|
1415
1485
|
|
|
1416
|
-
<code class="ruby"> json = {}.merge(@custom_data || {}).inject({}){|h,(k,v)| h[k.to_s] = v; h}</code>
|
|
1486
|
+
<code class="ruby"> json = {}.merge(@custom_data || {}).inject({}) { |h, (k, v)| h[k.to_s] = v; h }</code>
|
|
1417
1487
|
</li>
|
|
1418
1488
|
|
|
1419
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1489
|
+
<li class="never" data-hits="" data-linenumber="57">
|
|
1420
1490
|
|
|
1421
1491
|
|
|
1422
1492
|
<code class="ruby"></code>
|
|
1423
1493
|
</li>
|
|
1424
1494
|
|
|
1425
|
-
<li class="covered" data-hits="
|
|
1426
|
-
<span class="hits">
|
|
1495
|
+
<li class="covered" data-hits="25" data-linenumber="58">
|
|
1496
|
+
<span class="hits">25</span>
|
|
1427
1497
|
|
|
1428
1498
|
<code class="ruby"> json['aps'] ||= {}</code>
|
|
1429
1499
|
</li>
|
|
1430
1500
|
|
|
1431
|
-
<li class="covered" data-hits="
|
|
1432
|
-
<span class="hits">
|
|
1501
|
+
<li class="covered" data-hits="25" data-linenumber="59">
|
|
1502
|
+
<span class="hits">25</span>
|
|
1433
1503
|
|
|
1434
1504
|
<code class="ruby"> json['aps']['alert'] = @alert if @alert</code>
|
|
1435
1505
|
</li>
|
|
1436
1506
|
|
|
1437
|
-
<li class="covered" data-hits="
|
|
1438
|
-
<span class="hits">
|
|
1507
|
+
<li class="covered" data-hits="25" data-linenumber="60">
|
|
1508
|
+
<span class="hits">25</span>
|
|
1439
1509
|
|
|
1440
1510
|
<code class="ruby"> json['aps']['badge'] = @badge.to_i rescue 0 if @badge</code>
|
|
1441
1511
|
</li>
|
|
1442
1512
|
|
|
1443
|
-
<li class="covered" data-hits="
|
|
1444
|
-
<span class="hits">
|
|
1513
|
+
<li class="covered" data-hits="25" data-linenumber="61">
|
|
1514
|
+
<span class="hits">25</span>
|
|
1445
1515
|
|
|
1446
1516
|
<code class="ruby"> json['aps']['sound'] = @sound if @sound</code>
|
|
1447
1517
|
</li>
|
|
1448
1518
|
|
|
1449
|
-
<li class="covered" data-hits="
|
|
1450
|
-
<span class="hits">
|
|
1519
|
+
<li class="covered" data-hits="25" data-linenumber="62">
|
|
1520
|
+
<span class="hits">25</span>
|
|
1451
1521
|
|
|
1452
1522
|
<code class="ruby"> json['aps']['category'] = @category if @category</code>
|
|
1453
1523
|
</li>
|
|
1454
1524
|
|
|
1455
|
-
<li class="covered" data-hits="
|
|
1456
|
-
<span class="hits">
|
|
1525
|
+
<li class="covered" data-hits="25" data-linenumber="63">
|
|
1526
|
+
<span class="hits">25</span>
|
|
1457
1527
|
|
|
1458
1528
|
<code class="ruby"> json['aps']['content-available'] = 1 if @content_available</code>
|
|
1459
1529
|
</li>
|
|
1460
1530
|
|
|
1461
|
-
<li class="
|
|
1531
|
+
<li class="covered" data-hits="25" data-linenumber="64">
|
|
1532
|
+
<span class="hits">25</span>
|
|
1533
|
+
|
|
1534
|
+
<code class="ruby"> json['aps']['mutable-content'] = 1 if @mutable_content</code>
|
|
1535
|
+
</li>
|
|
1536
|
+
|
|
1537
|
+
<li class="never" data-hits="" data-linenumber="65">
|
|
1462
1538
|
|
|
1463
1539
|
|
|
1464
1540
|
<code class="ruby"></code>
|
|
1465
1541
|
</li>
|
|
1466
1542
|
|
|
1467
|
-
<li class="covered" data-hits="
|
|
1468
|
-
<span class="hits">
|
|
1543
|
+
<li class="covered" data-hits="25" data-linenumber="66">
|
|
1544
|
+
<span class="hits">25</span>
|
|
1469
1545
|
|
|
1470
1546
|
<code class="ruby"> json</code>
|
|
1471
1547
|
</li>
|
|
1472
1548
|
|
|
1473
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1549
|
+
<li class="never" data-hits="" data-linenumber="67">
|
|
1474
1550
|
|
|
1475
1551
|
|
|
1476
1552
|
<code class="ruby"> end</code>
|
|
1477
1553
|
</li>
|
|
1478
1554
|
|
|
1479
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1555
|
+
<li class="never" data-hits="" data-linenumber="68">
|
|
1480
1556
|
|
|
1481
1557
|
|
|
1482
1558
|
<code class="ruby"></code>
|
|
1483
1559
|
</li>
|
|
1484
1560
|
|
|
1485
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1561
|
+
<li class="covered" data-hits="1" data-linenumber="69">
|
|
1486
1562
|
<span class="hits">1</span>
|
|
1487
1563
|
|
|
1488
1564
|
<code class="ruby"> def message</code>
|
|
1489
1565
|
</li>
|
|
1490
1566
|
|
|
1491
|
-
<li class="covered" data-hits="15" data-linenumber="
|
|
1567
|
+
<li class="covered" data-hits="15" data-linenumber="70">
|
|
1492
1568
|
<span class="hits">15</span>
|
|
1493
1569
|
|
|
1494
1570
|
<code class="ruby"> data = [device_token_item,</code>
|
|
1495
1571
|
</li>
|
|
1496
1572
|
|
|
1497
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1573
|
+
<li class="never" data-hits="" data-linenumber="71">
|
|
1498
1574
|
|
|
1499
1575
|
|
|
1500
1576
|
<code class="ruby"> payload_item,</code>
|
|
1501
1577
|
</li>
|
|
1502
1578
|
|
|
1503
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1579
|
+
<li class="never" data-hits="" data-linenumber="72">
|
|
1504
1580
|
|
|
1505
1581
|
|
|
1506
1582
|
<code class="ruby"> identifier_item,</code>
|
|
1507
1583
|
</li>
|
|
1508
1584
|
|
|
1509
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1585
|
+
<li class="never" data-hits="" data-linenumber="73">
|
|
1510
1586
|
|
|
1511
1587
|
|
|
1512
1588
|
<code class="ruby"> expiration_item,</code>
|
|
1513
1589
|
</li>
|
|
1514
1590
|
|
|
1515
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1591
|
+
<li class="never" data-hits="" data-linenumber="74">
|
|
1516
1592
|
|
|
1517
1593
|
|
|
1518
1594
|
<code class="ruby"> priority_item].compact.join</code>
|
|
1519
1595
|
</li>
|
|
1520
1596
|
|
|
1521
|
-
<li class="covered" data-hits="15" data-linenumber="
|
|
1597
|
+
<li class="covered" data-hits="15" data-linenumber="75">
|
|
1522
1598
|
<span class="hits">15</span>
|
|
1523
1599
|
|
|
1524
1600
|
<code class="ruby"> [2, data.bytes.count, data].pack('cNa*')</code>
|
|
1525
1601
|
</li>
|
|
1526
1602
|
|
|
1527
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1603
|
+
<li class="never" data-hits="" data-linenumber="76">
|
|
1528
1604
|
|
|
1529
1605
|
|
|
1530
1606
|
<code class="ruby"> end</code>
|
|
1531
1607
|
</li>
|
|
1532
1608
|
|
|
1533
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1609
|
+
<li class="never" data-hits="" data-linenumber="77">
|
|
1534
1610
|
|
|
1535
1611
|
|
|
1536
1612
|
<code class="ruby"></code>
|
|
1537
1613
|
</li>
|
|
1538
1614
|
|
|
1539
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1615
|
+
<li class="covered" data-hits="1" data-linenumber="78">
|
|
1540
1616
|
<span class="hits">1</span>
|
|
1541
1617
|
|
|
1542
1618
|
<code class="ruby"> def mark_as_sent!</code>
|
|
1543
1619
|
</li>
|
|
1544
1620
|
|
|
1545
|
-
<li class="covered" data-hits="2" data-linenumber="
|
|
1621
|
+
<li class="covered" data-hits="2" data-linenumber="79">
|
|
1546
1622
|
<span class="hits">2</span>
|
|
1547
1623
|
|
|
1548
1624
|
<code class="ruby"> @sent_at = Time.now</code>
|
|
1549
1625
|
</li>
|
|
1550
1626
|
|
|
1551
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1627
|
+
<li class="never" data-hits="" data-linenumber="80">
|
|
1552
1628
|
|
|
1553
1629
|
|
|
1554
1630
|
<code class="ruby"> end</code>
|
|
1555
1631
|
</li>
|
|
1556
1632
|
|
|
1557
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1633
|
+
<li class="never" data-hits="" data-linenumber="81">
|
|
1558
1634
|
|
|
1559
1635
|
|
|
1560
1636
|
<code class="ruby"></code>
|
|
1561
1637
|
</li>
|
|
1562
1638
|
|
|
1563
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1639
|
+
<li class="covered" data-hits="1" data-linenumber="82">
|
|
1564
1640
|
<span class="hits">1</span>
|
|
1565
1641
|
|
|
1566
1642
|
<code class="ruby"> def mark_as_unsent!</code>
|
|
1567
1643
|
</li>
|
|
1568
1644
|
|
|
1569
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1645
|
+
<li class="covered" data-hits="1" data-linenumber="83">
|
|
1570
1646
|
<span class="hits">1</span>
|
|
1571
1647
|
|
|
1572
1648
|
<code class="ruby"> @sent_at = nil</code>
|
|
1573
1649
|
</li>
|
|
1574
1650
|
|
|
1575
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1651
|
+
<li class="never" data-hits="" data-linenumber="84">
|
|
1576
1652
|
|
|
1577
1653
|
|
|
1578
1654
|
<code class="ruby"> end</code>
|
|
1579
1655
|
</li>
|
|
1580
1656
|
|
|
1581
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1657
|
+
<li class="never" data-hits="" data-linenumber="85">
|
|
1582
1658
|
|
|
1583
1659
|
|
|
1584
1660
|
<code class="ruby"></code>
|
|
1585
1661
|
</li>
|
|
1586
1662
|
|
|
1587
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1663
|
+
<li class="covered" data-hits="1" data-linenumber="86">
|
|
1588
1664
|
<span class="hits">1</span>
|
|
1589
1665
|
|
|
1590
1666
|
<code class="ruby"> def sent?</code>
|
|
1591
1667
|
</li>
|
|
1592
1668
|
|
|
1593
|
-
<li class="covered" data-hits="3" data-linenumber="
|
|
1669
|
+
<li class="covered" data-hits="3" data-linenumber="87">
|
|
1594
1670
|
<span class="hits">3</span>
|
|
1595
1671
|
|
|
1596
1672
|
<code class="ruby"> !!@sent_at</code>
|
|
1597
1673
|
</li>
|
|
1598
1674
|
|
|
1599
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1675
|
+
<li class="never" data-hits="" data-linenumber="88">
|
|
1600
1676
|
|
|
1601
1677
|
|
|
1602
1678
|
<code class="ruby"> end</code>
|
|
1603
1679
|
</li>
|
|
1604
1680
|
|
|
1605
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1681
|
+
<li class="never" data-hits="" data-linenumber="89">
|
|
1606
1682
|
|
|
1607
1683
|
|
|
1608
1684
|
<code class="ruby"></code>
|
|
1609
1685
|
</li>
|
|
1610
1686
|
|
|
1611
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1687
|
+
<li class="covered" data-hits="1" data-linenumber="90">
|
|
1612
1688
|
<span class="hits">1</span>
|
|
1613
1689
|
|
|
1614
1690
|
<code class="ruby"> def valid?</code>
|
|
1615
1691
|
</li>
|
|
1616
1692
|
|
|
1617
|
-
<li class="missed" data-hits="0" data-linenumber="
|
|
1693
|
+
<li class="missed" data-hits="0" data-linenumber="91">
|
|
1618
1694
|
|
|
1619
1695
|
|
|
1620
1696
|
<code class="ruby"> payload.to_json.bytesize <= MAXIMUM_PAYLOAD_SIZE</code>
|
|
1621
1697
|
</li>
|
|
1622
1698
|
|
|
1623
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1699
|
+
<li class="never" data-hits="" data-linenumber="92">
|
|
1624
1700
|
|
|
1625
1701
|
|
|
1626
1702
|
<code class="ruby"> end</code>
|
|
1627
1703
|
</li>
|
|
1628
1704
|
|
|
1629
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1705
|
+
<li class="never" data-hits="" data-linenumber="93">
|
|
1630
1706
|
|
|
1631
1707
|
|
|
1632
1708
|
<code class="ruby"></code>
|
|
1633
1709
|
</li>
|
|
1634
1710
|
|
|
1635
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1711
|
+
<li class="covered" data-hits="1" data-linenumber="94">
|
|
1636
1712
|
<span class="hits">1</span>
|
|
1637
1713
|
|
|
1638
1714
|
<code class="ruby"> def error</code>
|
|
1639
1715
|
</li>
|
|
1640
1716
|
|
|
1641
|
-
<li class="covered" data-hits="3" data-linenumber="
|
|
1717
|
+
<li class="covered" data-hits="3" data-linenumber="95">
|
|
1642
1718
|
<span class="hits">3</span>
|
|
1643
1719
|
|
|
1644
|
-
<code class="ruby"> APNSError.new(@apns_error_code) if @apns_error_code
|
|
1720
|
+
<code class="ruby"> APNSError.new(@apns_error_code) if @apns_error_code && @apns_error_code.nonzero?</code>
|
|
1645
1721
|
</li>
|
|
1646
1722
|
|
|
1647
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1723
|
+
<li class="never" data-hits="" data-linenumber="96">
|
|
1648
1724
|
|
|
1649
1725
|
|
|
1650
1726
|
<code class="ruby"> end</code>
|
|
1651
1727
|
</li>
|
|
1652
1728
|
|
|
1653
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1729
|
+
<li class="never" data-hits="" data-linenumber="97">
|
|
1654
1730
|
|
|
1655
1731
|
|
|
1656
1732
|
<code class="ruby"></code>
|
|
1657
1733
|
</li>
|
|
1658
1734
|
|
|
1659
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1735
|
+
<li class="covered" data-hits="1" data-linenumber="98">
|
|
1660
1736
|
<span class="hits">1</span>
|
|
1661
1737
|
|
|
1662
1738
|
<code class="ruby"> private</code>
|
|
1663
1739
|
</li>
|
|
1664
1740
|
|
|
1665
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1741
|
+
<li class="never" data-hits="" data-linenumber="99">
|
|
1666
1742
|
|
|
1667
1743
|
|
|
1668
1744
|
<code class="ruby"></code>
|
|
1669
1745
|
</li>
|
|
1670
1746
|
|
|
1671
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1747
|
+
<li class="covered" data-hits="1" data-linenumber="100">
|
|
1672
1748
|
<span class="hits">1</span>
|
|
1673
1749
|
|
|
1674
|
-
<code class="ruby">
|
|
1750
|
+
<code class="ruby"> def device_token_item</code>
|
|
1675
1751
|
</li>
|
|
1676
1752
|
|
|
1677
|
-
<li class="covered" data-hits="15" data-linenumber="
|
|
1753
|
+
<li class="covered" data-hits="15" data-linenumber="101">
|
|
1678
1754
|
<span class="hits">15</span>
|
|
1679
1755
|
|
|
1680
|
-
<code class="ruby">
|
|
1756
|
+
<code class="ruby"> [1, 32, @token.gsub(/[<\s>]/, '')].pack('cnH64')</code>
|
|
1681
1757
|
</li>
|
|
1682
1758
|
|
|
1683
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1759
|
+
<li class="never" data-hits="" data-linenumber="102">
|
|
1684
1760
|
|
|
1685
1761
|
|
|
1686
|
-
<code class="ruby">
|
|
1762
|
+
<code class="ruby"> end</code>
|
|
1687
1763
|
</li>
|
|
1688
1764
|
|
|
1689
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1765
|
+
<li class="never" data-hits="" data-linenumber="103">
|
|
1690
1766
|
|
|
1691
1767
|
|
|
1692
1768
|
<code class="ruby"></code>
|
|
1693
1769
|
</li>
|
|
1694
1770
|
|
|
1695
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1771
|
+
<li class="covered" data-hits="1" data-linenumber="104">
|
|
1696
1772
|
<span class="hits">1</span>
|
|
1697
1773
|
|
|
1698
|
-
<code class="ruby">
|
|
1774
|
+
<code class="ruby"> def payload_item</code>
|
|
1699
1775
|
</li>
|
|
1700
1776
|
|
|
1701
|
-
<li class="covered" data-hits="15" data-linenumber="
|
|
1777
|
+
<li class="covered" data-hits="15" data-linenumber="105">
|
|
1702
1778
|
<span class="hits">15</span>
|
|
1703
1779
|
|
|
1704
|
-
<code class="ruby">
|
|
1780
|
+
<code class="ruby"> json = payload.to_json</code>
|
|
1705
1781
|
</li>
|
|
1706
1782
|
|
|
1707
|
-
<li class="covered" data-hits="15" data-linenumber="
|
|
1783
|
+
<li class="covered" data-hits="15" data-linenumber="106">
|
|
1708
1784
|
<span class="hits">15</span>
|
|
1709
1785
|
|
|
1710
|
-
<code class="ruby">
|
|
1786
|
+
<code class="ruby"> [2, json.bytes.count, json].pack('cna*')</code>
|
|
1711
1787
|
</li>
|
|
1712
1788
|
|
|
1713
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1789
|
+
<li class="never" data-hits="" data-linenumber="107">
|
|
1714
1790
|
|
|
1715
1791
|
|
|
1716
|
-
<code class="ruby">
|
|
1792
|
+
<code class="ruby"> end</code>
|
|
1717
1793
|
</li>
|
|
1718
1794
|
|
|
1719
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1795
|
+
<li class="never" data-hits="" data-linenumber="108">
|
|
1720
1796
|
|
|
1721
1797
|
|
|
1722
1798
|
<code class="ruby"></code>
|
|
1723
1799
|
</li>
|
|
1724
1800
|
|
|
1725
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1801
|
+
<li class="covered" data-hits="1" data-linenumber="109">
|
|
1726
1802
|
<span class="hits">1</span>
|
|
1727
1803
|
|
|
1728
|
-
<code class="ruby">
|
|
1804
|
+
<code class="ruby"> def identifier_item</code>
|
|
1729
1805
|
</li>
|
|
1730
1806
|
|
|
1731
|
-
<li class="covered" data-hits="15" data-linenumber="
|
|
1807
|
+
<li class="covered" data-hits="15" data-linenumber="110">
|
|
1732
1808
|
<span class="hits">15</span>
|
|
1733
1809
|
|
|
1734
|
-
<code class="ruby">
|
|
1810
|
+
<code class="ruby"> [3, 4, @id].pack('cnN') unless @id.nil?</code>
|
|
1735
1811
|
</li>
|
|
1736
1812
|
|
|
1737
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1813
|
+
<li class="never" data-hits="" data-linenumber="111">
|
|
1738
1814
|
|
|
1739
1815
|
|
|
1740
|
-
<code class="ruby">
|
|
1816
|
+
<code class="ruby"> end</code>
|
|
1741
1817
|
</li>
|
|
1742
1818
|
|
|
1743
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1819
|
+
<li class="never" data-hits="" data-linenumber="112">
|
|
1744
1820
|
|
|
1745
1821
|
|
|
1746
1822
|
<code class="ruby"></code>
|
|
1747
1823
|
</li>
|
|
1748
1824
|
|
|
1749
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1825
|
+
<li class="covered" data-hits="1" data-linenumber="113">
|
|
1750
1826
|
<span class="hits">1</span>
|
|
1751
1827
|
|
|
1752
|
-
<code class="ruby">
|
|
1828
|
+
<code class="ruby"> def expiration_item</code>
|
|
1753
1829
|
</li>
|
|
1754
1830
|
|
|
1755
|
-
<li class="covered" data-hits="15" data-linenumber="
|
|
1831
|
+
<li class="covered" data-hits="15" data-linenumber="114">
|
|
1756
1832
|
<span class="hits">15</span>
|
|
1757
1833
|
|
|
1758
|
-
<code class="ruby">
|
|
1834
|
+
<code class="ruby"> [4, 4, @expiry.to_i].pack('cnN') unless @expiry.nil?</code>
|
|
1759
1835
|
</li>
|
|
1760
1836
|
|
|
1761
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1837
|
+
<li class="never" data-hits="" data-linenumber="115">
|
|
1762
1838
|
|
|
1763
1839
|
|
|
1764
|
-
<code class="ruby">
|
|
1840
|
+
<code class="ruby"> end</code>
|
|
1765
1841
|
</li>
|
|
1766
1842
|
|
|
1767
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1843
|
+
<li class="never" data-hits="" data-linenumber="116">
|
|
1768
1844
|
|
|
1769
1845
|
|
|
1770
1846
|
<code class="ruby"></code>
|
|
1771
1847
|
</li>
|
|
1772
1848
|
|
|
1773
|
-
<li class="covered" data-hits="1" data-linenumber="
|
|
1849
|
+
<li class="covered" data-hits="1" data-linenumber="117">
|
|
1774
1850
|
<span class="hits">1</span>
|
|
1775
1851
|
|
|
1776
|
-
<code class="ruby">
|
|
1852
|
+
<code class="ruby"> def priority_item</code>
|
|
1777
1853
|
</li>
|
|
1778
1854
|
|
|
1779
|
-
<li class="covered" data-hits="15" data-linenumber="
|
|
1855
|
+
<li class="covered" data-hits="15" data-linenumber="118">
|
|
1780
1856
|
<span class="hits">15</span>
|
|
1781
1857
|
|
|
1782
|
-
<code class="ruby">
|
|
1858
|
+
<code class="ruby"> [5, 1, @priority].pack('cnc') unless @priority.nil?</code>
|
|
1783
1859
|
</li>
|
|
1784
1860
|
|
|
1785
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1861
|
+
<li class="never" data-hits="" data-linenumber="119">
|
|
1786
1862
|
|
|
1787
1863
|
|
|
1788
|
-
<code class="ruby">
|
|
1864
|
+
<code class="ruby"> end</code>
|
|
1789
1865
|
</li>
|
|
1790
1866
|
|
|
1791
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1867
|
+
<li class="never" data-hits="" data-linenumber="120">
|
|
1792
1868
|
|
|
1793
1869
|
|
|
1794
1870
|
<code class="ruby"> end</code>
|
|
1795
1871
|
</li>
|
|
1796
1872
|
|
|
1797
|
-
<li class="never" data-hits="" data-linenumber="
|
|
1873
|
+
<li class="never" data-hits="" data-linenumber="121">
|
|
1874
|
+
|
|
1875
|
+
|
|
1876
|
+
<code class="ruby">end</code>
|
|
1877
|
+
</li>
|
|
1878
|
+
|
|
1879
|
+
</ol>
|
|
1880
|
+
</pre>
|
|
1881
|
+
</div>
|
|
1882
|
+
|
|
1883
|
+
<div class="source_table" id="e8b12a361feeb011b347553315d0176790f5020a">
|
|
1884
|
+
<div class="header">
|
|
1885
|
+
<h3>lib/houston/version.rb</h3>
|
|
1886
|
+
<h4><span class="green">100.0 %</span> covered</h4>
|
|
1887
|
+
<div>
|
|
1888
|
+
<b>2</b> relevant lines.
|
|
1889
|
+
<span class="green"><b>2</b> lines covered</span> and
|
|
1890
|
+
<span class="red"><b>0</b> lines missed.</span>
|
|
1891
|
+
</div>
|
|
1892
|
+
</div>
|
|
1893
|
+
|
|
1894
|
+
<pre>
|
|
1895
|
+
<ol>
|
|
1896
|
+
|
|
1897
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
1898
|
+
<span class="hits">1</span>
|
|
1899
|
+
|
|
1900
|
+
<code class="ruby">module Houston</code>
|
|
1901
|
+
</li>
|
|
1902
|
+
|
|
1903
|
+
<li class="covered" data-hits="1" data-linenumber="2">
|
|
1904
|
+
<span class="hits">1</span>
|
|
1905
|
+
|
|
1906
|
+
<code class="ruby"> VERSION = '2.2.4'</code>
|
|
1907
|
+
</li>
|
|
1908
|
+
|
|
1909
|
+
<li class="never" data-hits="" data-linenumber="3">
|
|
1798
1910
|
|
|
1799
1911
|
|
|
1800
1912
|
<code class="ruby">end</code>
|