mattock 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/doc/README +2 -0
- data/doc/Specifications +36 -0
- data/doc/coverage/assets/0.5.3/app.js +88 -0
- data/doc/coverage/assets/0.5.3/fancybox/blank.gif +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_close.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_loading.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_nav_left.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_nav_right.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_e.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_n.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_ne.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_nw.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_s.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_se.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_sw.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_shadow_w.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_title_left.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_title_main.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_title_over.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancy_title_right.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancybox-x.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancybox-y.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/fancybox.png +0 -0
- data/doc/coverage/assets/0.5.3/fancybox/jquery.fancybox-1.3.1.css +363 -0
- data/doc/coverage/assets/0.5.3/fancybox/jquery.fancybox-1.3.1.pack.js +44 -0
- data/doc/coverage/assets/0.5.3/favicon_green.png +0 -0
- data/doc/coverage/assets/0.5.3/favicon_red.png +0 -0
- data/doc/coverage/assets/0.5.3/favicon_yellow.png +0 -0
- data/doc/coverage/assets/0.5.3/highlight.css +129 -0
- data/doc/coverage/assets/0.5.3/highlight.pack.js +1 -0
- data/doc/coverage/assets/0.5.3/jquery-1.6.2.min.js +18 -0
- data/doc/coverage/assets/0.5.3/jquery.dataTables.min.js +152 -0
- data/doc/coverage/assets/0.5.3/jquery.timeago.js +141 -0
- data/doc/coverage/assets/0.5.3/jquery.url.js +174 -0
- data/doc/coverage/assets/0.5.3/loading.gif +0 -0
- data/doc/coverage/assets/0.5.3/magnify.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_222222_256x240.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_454545_256x240.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_888888_256x240.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/doc/coverage/assets/0.5.3/smoothness/jquery-ui-1.8.4.custom.css +295 -0
- data/doc/coverage/assets/0.5.3/stylesheet.css +383 -0
- data/doc/coverage/index.html +3969 -0
- data/lib/mattock.rb +4 -0
- data/lib/mattock/command-line.rb +157 -0
- data/lib/mattock/command-task.rb +51 -0
- data/lib/mattock/configurable.rb +129 -0
- data/lib/mattock/remote-command-task.rb +30 -0
- data/lib/mattock/tasklib.rb +76 -0
- data/lib/mattock/template-host.rb +54 -0
- data/lib/mattock/testing/mock-command-line.rb +26 -0
- data/lib/mattock/testing/rake-example-group.rb +79 -0
- data/spec/command-line.rb +59 -0
- data/spec/command-task.rb +39 -0
- data/spec/configurable.rb +45 -0
- data/spec/tasklib.rb +42 -0
- data/spec_help/gem_test_suite.rb +17 -0
- data/spec_help/spec_helper.rb +2 -0
- metadata +215 -0
|
@@ -0,0 +1,383 @@
|
|
|
1
|
+
/* -----------------------------------------------------------------------
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
Blueprint CSS Framework 0.9
|
|
5
|
+
http://blueprintcss.org
|
|
6
|
+
|
|
7
|
+
* Copyright (c) 2007-Present. See LICENSE for more info.
|
|
8
|
+
* See README for instructions on how to use Blueprint.
|
|
9
|
+
* For credits and origins, see AUTHORS.
|
|
10
|
+
* This is a compressed file. See the sources in the 'src' directory.
|
|
11
|
+
|
|
12
|
+
----------------------------------------------------------------------- */
|
|
13
|
+
|
|
14
|
+
/* reset.css */
|
|
15
|
+
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, nav, section {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
|
|
16
|
+
article, aside, dialog, figure, footer, header, hgroup, nav, section {display:block;}
|
|
17
|
+
body {line-height:1.5;}
|
|
18
|
+
table {border-collapse:separate;border-spacing:0;}
|
|
19
|
+
caption, th, td {text-align:left;font-weight:normal;}
|
|
20
|
+
table, td, th {vertical-align:middle;}
|
|
21
|
+
blockquote:before, blockquote:after, q:before, q:after {content:"";}
|
|
22
|
+
blockquote, q {quotes:"" "";}
|
|
23
|
+
a img {border:none;}
|
|
24
|
+
|
|
25
|
+
/* typography.css */
|
|
26
|
+
html {font-size:100.01%;}
|
|
27
|
+
body {font-size:82%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;}
|
|
28
|
+
h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;}
|
|
29
|
+
h1 {font-size:3em;line-height:1;margin-bottom:0.5em;}
|
|
30
|
+
h2 {font-size:2em;margin-bottom:0.75em;}
|
|
31
|
+
h3 {font-size:1.5em;line-height:1;margin-bottom:1em;}
|
|
32
|
+
h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}
|
|
33
|
+
h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
|
|
34
|
+
h6 {font-size:1em;font-weight:bold;}
|
|
35
|
+
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
|
|
36
|
+
p {margin:0 0 1.5em;}
|
|
37
|
+
p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
|
|
38
|
+
p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
|
|
39
|
+
a:focus, a:hover {color:#000;}
|
|
40
|
+
a {color:#009;text-decoration:underline;}
|
|
41
|
+
blockquote {margin:1.5em;color:#666;font-style:italic;}
|
|
42
|
+
strong {font-weight:bold;}
|
|
43
|
+
em, dfn {font-style:italic;}
|
|
44
|
+
dfn {font-weight:bold;}
|
|
45
|
+
sup, sub {line-height:0;}
|
|
46
|
+
abbr, acronym {border-bottom:1px dotted #666;}
|
|
47
|
+
address {margin:0 0 1.5em;font-style:italic;}
|
|
48
|
+
del {color:#666;}
|
|
49
|
+
pre {margin:1.5em 0;white-space:pre;}
|
|
50
|
+
pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
|
|
51
|
+
li ul, li ol {margin:0;}
|
|
52
|
+
ul, ol {margin:0 1.5em 1.5em 0;padding-left:3.333em;}
|
|
53
|
+
ul {list-style-type:disc;}
|
|
54
|
+
ol {list-style-type:decimal;}
|
|
55
|
+
dl {margin:0 0 1.5em 0;}
|
|
56
|
+
dl dt {font-weight:bold;}
|
|
57
|
+
dd {margin-left:1.5em;}
|
|
58
|
+
table {margin-bottom:1.4em;width:100%;}
|
|
59
|
+
th {font-weight:bold;}
|
|
60
|
+
thead th {background:#c3d9ff;}
|
|
61
|
+
th, td, caption {padding:4px 10px 4px 5px;}
|
|
62
|
+
tr.even td {background:#efefef;}
|
|
63
|
+
tfoot {font-style:italic;}
|
|
64
|
+
caption {background:#eee;}
|
|
65
|
+
.small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
|
|
66
|
+
.large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
|
|
67
|
+
.hide {display:none;}
|
|
68
|
+
.quiet {color:#666;}
|
|
69
|
+
.loud {color:#000;}
|
|
70
|
+
.highlight {background:#ff0;}
|
|
71
|
+
.added {background:#060;color:#fff;}
|
|
72
|
+
.removed {background:#900;color:#fff;}
|
|
73
|
+
.first {margin-left:0;padding-left:0;}
|
|
74
|
+
.last {margin-right:0;padding-right:0;}
|
|
75
|
+
.top {margin-top:0;padding-top:0;}
|
|
76
|
+
.bottom {margin-bottom:0;padding-bottom:0;}
|
|
77
|
+
|
|
78
|
+
/* forms.css */
|
|
79
|
+
label {font-weight:bold;}
|
|
80
|
+
fieldset {padding:1.4em;margin:0 0 1.5em 0;border:1px solid #ccc;}
|
|
81
|
+
legend {font-weight:bold;font-size:1.2em;}
|
|
82
|
+
input[type=text], input[type=password], input.text, input.title, textarea, select {background-color:#fff;border:1px solid #bbb;}
|
|
83
|
+
input[type=text]:focus, input[type=password]:focus, input.text:focus, input.title:focus, textarea:focus, select:focus {border-color:#666;}
|
|
84
|
+
input[type=text], input[type=password], input.text, input.title, textarea, select {margin:0.5em 0;}
|
|
85
|
+
input.text, input.title {width:300px;padding:5px;}
|
|
86
|
+
input.title {font-size:1.5em;}
|
|
87
|
+
textarea {width:390px;height:250px;padding:5px;}
|
|
88
|
+
input[type=checkbox], input[type=radio], input.checkbox, input.radio {position:relative;top:.25em;}
|
|
89
|
+
form.inline {line-height:3;}
|
|
90
|
+
form.inline p {margin-bottom:0;}
|
|
91
|
+
.error, .notice, .success {padding:.8em;margin-bottom:1em;border:2px solid #ddd;}
|
|
92
|
+
.error {background:#FBE3E4;color:#8a1f11;border-color:#FBC2C4;}
|
|
93
|
+
.notice {background:#FFF6BF;color:#514721;border-color:#FFD324;}
|
|
94
|
+
.success {background:#E6EFC2;color:#264409;border-color:#C6D880;}
|
|
95
|
+
.error a {color:#8a1f11;}
|
|
96
|
+
.notice a {color:#514721;}
|
|
97
|
+
.success a {color:#264409;}
|
|
98
|
+
.box {padding:1.5em;margin-bottom:1.5em;background:#E5ECF9;}
|
|
99
|
+
hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:.1em;margin:0 0 1.45em;border:none;}
|
|
100
|
+
hr.space {background:#fff;color:#fff;visibility:hidden;}
|
|
101
|
+
.clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;}
|
|
102
|
+
.clearfix, .container {display:block;}
|
|
103
|
+
.clear {clear:both;}
|
|
104
|
+
|
|
105
|
+
#loading {
|
|
106
|
+
position: fixed;
|
|
107
|
+
left: 40%;
|
|
108
|
+
top: 50%;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
a {
|
|
112
|
+
color: #333;
|
|
113
|
+
text-decoration: none;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
a:hover {
|
|
117
|
+
color: #000;
|
|
118
|
+
text-decoration: underline;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
body {
|
|
122
|
+
font-family: "Lucida Grande", Helvetica, "Helvetica Neue", Arial, sans-serif;
|
|
123
|
+
padding: 12px;
|
|
124
|
+
background-color: #333;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
h1, h2, h3, h4 {
|
|
128
|
+
color: #1C2324;
|
|
129
|
+
margin: 0;
|
|
130
|
+
padding: 0;
|
|
131
|
+
margin-bottom: 12px;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
table {
|
|
135
|
+
width: 100%;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
#content {
|
|
139
|
+
clear: left;
|
|
140
|
+
background-color: white;
|
|
141
|
+
border: 2px solid #ddd;
|
|
142
|
+
border-top: 8px solid #ddd;
|
|
143
|
+
padding: 18px;
|
|
144
|
+
-webkit-border-bottom-left-radius: 5px;
|
|
145
|
+
-webkit-border-bottom-right-radius: 5px;
|
|
146
|
+
-webkit-border-top-right-radius: 5px;
|
|
147
|
+
-moz-border-radius-bottomleft: 5px;
|
|
148
|
+
-moz-border-radius-bottomright: 5px;
|
|
149
|
+
-moz-border-radius-topright: 5px;
|
|
150
|
+
border-bottom-left-radius: 5px;
|
|
151
|
+
border-bottom-right-radius: 5px;
|
|
152
|
+
border-top-right-radius: 5px;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.dataTables_filter, .dataTables_info {
|
|
156
|
+
padding: 2px 6px;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
abbr.timeago {
|
|
160
|
+
text-decoration: none;
|
|
161
|
+
border: none;
|
|
162
|
+
font-weight: bold;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.timestamp {
|
|
166
|
+
float: right;
|
|
167
|
+
color: #ddd;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.group_tabs {
|
|
171
|
+
list-style: none;
|
|
172
|
+
float: left;
|
|
173
|
+
margin: 0;
|
|
174
|
+
padding: 0;
|
|
175
|
+
}
|
|
176
|
+
.group_tabs li {
|
|
177
|
+
display: inline;
|
|
178
|
+
float: left;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.group_tabs li a {
|
|
182
|
+
font-family: Helvetica, Arial, sans-serif;
|
|
183
|
+
display: block;
|
|
184
|
+
float: left;
|
|
185
|
+
text-decoration: none;
|
|
186
|
+
padding: 4px 8px;
|
|
187
|
+
background-color: #aaa;
|
|
188
|
+
background: -webkit-gradient(linear, 0 0, 0 bottom, from(#DDD), to(#aaa));
|
|
189
|
+
background: -moz-linear-gradient(#DDD, #aaa);
|
|
190
|
+
background: linear-gradient(#DDD, #aaa);
|
|
191
|
+
text-shadow: #e5e5e5 1px 1px 0px;
|
|
192
|
+
border-bottom: none;
|
|
193
|
+
color: #333;
|
|
194
|
+
font-weight: bold;
|
|
195
|
+
margin-right: 8px;
|
|
196
|
+
border-top: 1px solid #efefef;
|
|
197
|
+
-webkit-border-top-left-radius: 2px;
|
|
198
|
+
-webkit-border-top-right-radius: 2px;
|
|
199
|
+
-moz-border-radius-topleft: 2px;
|
|
200
|
+
-moz-border-radius-topright: 2px;
|
|
201
|
+
border-top-left-radius: 2px;
|
|
202
|
+
border-top-right-radius: 2px;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
.group_tabs li a:hover {
|
|
206
|
+
background-color: #ccc;
|
|
207
|
+
background: -webkit-gradient(linear, 0 0, 0 bottom, from(#eee), to(#aaa));
|
|
208
|
+
background: -moz-linear-gradient(#eee, #aaa);
|
|
209
|
+
background: linear-gradient(#eee, #aaa);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
.group_tabs li a:active {
|
|
213
|
+
padding-top: 5px;
|
|
214
|
+
padding-bottom: 3px;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
.group_tabs li.active a {
|
|
218
|
+
color: black;
|
|
219
|
+
text-shadow: #fff 1px 1px 0px;
|
|
220
|
+
background-color: #ddd;
|
|
221
|
+
background: -webkit-gradient(linear, 0 0, 0 bottom, from(#fff), to(#ddd));
|
|
222
|
+
background: -moz-linear-gradient(#fff, #ddd);
|
|
223
|
+
background: linear-gradient(#fff, #ddd);
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
.file_list {
|
|
227
|
+
margin-bottom: 18px;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
a.src_link {
|
|
231
|
+
background: url('./magnify.png') no-repeat left 50%;
|
|
232
|
+
padding-left: 18px;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
tr, td {
|
|
236
|
+
margin: 0;
|
|
237
|
+
padding: 0;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
th {
|
|
241
|
+
white-space: nowrap;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
th.ui-state-default {
|
|
245
|
+
cursor: pointer;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
th span.ui-icon {
|
|
249
|
+
float: left;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
td {
|
|
253
|
+
padding: 4px 8px;
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
td.strong {
|
|
257
|
+
font-weight: bold;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
.source_table h3, .source_table h4 {
|
|
261
|
+
padding: 0;
|
|
262
|
+
margin: 0;
|
|
263
|
+
margin-bottom: 4px;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
.source_table .header {
|
|
267
|
+
padding: 10px;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
.source_table pre {
|
|
271
|
+
margin: 0;
|
|
272
|
+
padding: 0;
|
|
273
|
+
white-space: normal;
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
.source_table pre, .source_table code {
|
|
277
|
+
color: #000;
|
|
278
|
+
font-family: "Monaco", "Inconsolata", "Consolas", monospace;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
.source_table pre {
|
|
282
|
+
background-color: #333;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
.source_table pre ol {
|
|
286
|
+
margin: 0px;
|
|
287
|
+
padding: 0px;
|
|
288
|
+
margin-left: 45px;
|
|
289
|
+
font-size: 12px;
|
|
290
|
+
color: white;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
.source_table pre li {
|
|
294
|
+
margin: 0px;
|
|
295
|
+
padding: 2px 6px;
|
|
296
|
+
border-left: 5px solid white;
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.source_table pre li code {
|
|
300
|
+
white-space: pre;
|
|
301
|
+
white-space: pre-wrap;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.source_table pre .hits {
|
|
305
|
+
float: right;
|
|
306
|
+
margin-left: 10px;
|
|
307
|
+
padding: 2px 4px;
|
|
308
|
+
|
|
309
|
+
background-color: #444;
|
|
310
|
+
background: -webkit-gradient(linear, 0 0, 0 bottom, from(#222), to(#666));
|
|
311
|
+
background: -moz-linear-gradient(#222, #666);
|
|
312
|
+
background: linear-gradient(#222, #666);
|
|
313
|
+
|
|
314
|
+
color: white;
|
|
315
|
+
font-family: Helvetica, "Helvetica Neue", Arial, sans-serif;
|
|
316
|
+
font-size: 10px;
|
|
317
|
+
font-weight: bold;
|
|
318
|
+
text-align: center;
|
|
319
|
+
border-radius: 6px;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
#footer {
|
|
323
|
+
color: #ddd;
|
|
324
|
+
font-size: 12px;
|
|
325
|
+
font-weight: bold;
|
|
326
|
+
margin-top: 12px;
|
|
327
|
+
text-align: right;
|
|
328
|
+
}
|
|
329
|
+
#footer a {
|
|
330
|
+
color: #eee;
|
|
331
|
+
text-decoration: underline;
|
|
332
|
+
}
|
|
333
|
+
#footer a:hover {
|
|
334
|
+
color: #fff;
|
|
335
|
+
text-decoration: none;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
.green {
|
|
339
|
+
color: #090;
|
|
340
|
+
}
|
|
341
|
+
.red {
|
|
342
|
+
color: #900;
|
|
343
|
+
}
|
|
344
|
+
.yellow {
|
|
345
|
+
color: #da0;
|
|
346
|
+
}
|
|
347
|
+
.source_table .covered {
|
|
348
|
+
border-color: #090;
|
|
349
|
+
}
|
|
350
|
+
.source_table .missed {
|
|
351
|
+
border-color: #900;
|
|
352
|
+
}
|
|
353
|
+
.source_table .never {
|
|
354
|
+
border-color: black;
|
|
355
|
+
}
|
|
356
|
+
.source_table .skipped {
|
|
357
|
+
border-color: #fc0;
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
.source_table .covered:nth-child(odd) {
|
|
361
|
+
background-color: #CDF2CD;
|
|
362
|
+
}
|
|
363
|
+
.source_table .covered:nth-child(even) {
|
|
364
|
+
background-color: #DBF2DB;
|
|
365
|
+
}
|
|
366
|
+
.source_table .missed:nth-child(odd) {
|
|
367
|
+
background-color: #F7C0C0;
|
|
368
|
+
}
|
|
369
|
+
.source_table .missed:nth-child(even) {
|
|
370
|
+
background-color: #F7CFCF;
|
|
371
|
+
}
|
|
372
|
+
.source_table .never:nth-child(odd) {
|
|
373
|
+
background-color: #efefef;
|
|
374
|
+
}
|
|
375
|
+
.source_table .never:nth-child(even) {
|
|
376
|
+
background-color: #f4f4f4;
|
|
377
|
+
}
|
|
378
|
+
.source_table .skipped:nth-child(odd) {
|
|
379
|
+
background-color: #FBF0C0;
|
|
380
|
+
}
|
|
381
|
+
.source_table .skipped:nth-child(even) {
|
|
382
|
+
background-color: #FBFfCf;
|
|
383
|
+
}
|
|
@@ -0,0 +1,3969 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html xmlns='http://www.w3.org/1999/xhtml'>
|
|
3
|
+
<head>
|
|
4
|
+
<title>Code coverage for Mattock</title>
|
|
5
|
+
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
|
6
|
+
<script src='./assets/0.5.3/jquery-1.6.2.min.js' type='text/javascript'></script>
|
|
7
|
+
<script src='./assets/0.5.3/jquery.dataTables.min.js' type='text/javascript'></script>
|
|
8
|
+
<script src='./assets/0.5.3/fancybox/jquery.fancybox-1.3.1.pack.js' type='text/javascript'></script>
|
|
9
|
+
<script src='./assets/0.5.3/jquery.timeago.js' type='text/javascript'></script>
|
|
10
|
+
<script src='./assets/0.5.3/jquery.url.js' type='text/javascript'></script>
|
|
11
|
+
<script src='./assets/0.5.3/highlight.pack.js' type='text/javascript'></script>
|
|
12
|
+
<script src='./assets/0.5.3/app.js' type='text/javascript'></script>
|
|
13
|
+
<link href='./assets/0.5.3/stylesheet.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
|
|
14
|
+
<link href='./assets/0.5.3/highlight.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
|
|
15
|
+
<link href='./assets/0.5.3/fancybox/jquery.fancybox-1.3.1.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
|
|
16
|
+
<link href='./assets/0.5.3/smoothness/jquery-ui-1.8.4.custom.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
|
|
17
|
+
<link rel="shortcut icon" type="image/png" href="./assets/0.5.3/favicon_green.png" />
|
|
18
|
+
<link rel="icon" type="image/png" href="./assets/0.5.3/favicon.png" />
|
|
19
|
+
</head>
|
|
20
|
+
|
|
21
|
+
<body>
|
|
22
|
+
<div id="loading">
|
|
23
|
+
<img src="./assets/0.5.3/loading.gif" alt="loading"/>
|
|
24
|
+
</div>
|
|
25
|
+
<div id="wrapper" style="display:none;">
|
|
26
|
+
<div class="timestamp">Generated <abbr class="timeago" title="2012-01-21T01:32:01-08:00">2012-01-21T01:32:01-08:00</abbr></div>
|
|
27
|
+
<ul class="group_tabs"></ul>
|
|
28
|
+
|
|
29
|
+
<div id="content">
|
|
30
|
+
<div class="file_list_container" id="AllFiles">
|
|
31
|
+
<h2>
|
|
32
|
+
<span class="group_name">All Files</span>
|
|
33
|
+
(<span class="covered_percent"><span class="green">93.0%</span></span>
|
|
34
|
+
covered at
|
|
35
|
+
<span class="covered_strength">
|
|
36
|
+
<span class="green">
|
|
37
|
+
2.98
|
|
38
|
+
</span>
|
|
39
|
+
</span> hits/line)
|
|
40
|
+
</h2>
|
|
41
|
+
<a name="AllFiles"></a>
|
|
42
|
+
<div>
|
|
43
|
+
<b>9</b> files in total.
|
|
44
|
+
<b>343</b> relevant lines.
|
|
45
|
+
<span class="green"><b>319</b> lines covered</span> and
|
|
46
|
+
<span class="red"><b>24</b> lines missed </span>
|
|
47
|
+
</div>
|
|
48
|
+
<table class="file_list">
|
|
49
|
+
<thead>
|
|
50
|
+
<tr>
|
|
51
|
+
<th>File</th>
|
|
52
|
+
<th>% covered</th>
|
|
53
|
+
<th>Lines</th>
|
|
54
|
+
<th>Relevant Lines</th>
|
|
55
|
+
<th>Lines covered</th>
|
|
56
|
+
<th>Lines missed</th>
|
|
57
|
+
<th>Avg. Hits / Line</th>
|
|
58
|
+
</tr>
|
|
59
|
+
</thead>
|
|
60
|
+
<tbody>
|
|
61
|
+
|
|
62
|
+
<tr>
|
|
63
|
+
<td class="strong"><a href="#ff1ec41bbd289dd44f158d42bb096896a51c94a4" class="src_link" title="lib/mattock.rb">lib/mattock.rb</a></td>
|
|
64
|
+
<td class="green strong">100.0 %</td>
|
|
65
|
+
<td>4</td>
|
|
66
|
+
<td>4</td>
|
|
67
|
+
<td>4</td>
|
|
68
|
+
<td>0</td>
|
|
69
|
+
<td>1.0</td>
|
|
70
|
+
</tr>
|
|
71
|
+
|
|
72
|
+
<tr>
|
|
73
|
+
<td class="strong"><a href="#19e9811ada5819ea8e2c6a644088d4ba8e773a5b" class="src_link" title="lib/mattock/command-line.rb">lib/mattock/command-line.rb</a></td>
|
|
74
|
+
<td class="green strong">93.1 %</td>
|
|
75
|
+
<td>157</td>
|
|
76
|
+
<td>87</td>
|
|
77
|
+
<td>81</td>
|
|
78
|
+
<td>6</td>
|
|
79
|
+
<td>2.9</td>
|
|
80
|
+
</tr>
|
|
81
|
+
|
|
82
|
+
<tr>
|
|
83
|
+
<td class="strong"><a href="#937bd4854d7605194eaf61c021175d6a0f31e6e8" class="src_link" title="lib/mattock/command-task.rb">lib/mattock/command-task.rb</a></td>
|
|
84
|
+
<td class="green strong">93.1 %</td>
|
|
85
|
+
<td>51</td>
|
|
86
|
+
<td>29</td>
|
|
87
|
+
<td>27</td>
|
|
88
|
+
<td>2</td>
|
|
89
|
+
<td>1.2</td>
|
|
90
|
+
</tr>
|
|
91
|
+
|
|
92
|
+
<tr>
|
|
93
|
+
<td class="strong"><a href="#151b5abc8f09f0fc2932ac98c07e3b516a518e3e" class="src_link" title="lib/mattock/configurable.rb">lib/mattock/configurable.rb</a></td>
|
|
94
|
+
<td class="green strong">98.7 %</td>
|
|
95
|
+
<td>129</td>
|
|
96
|
+
<td>77</td>
|
|
97
|
+
<td>76</td>
|
|
98
|
+
<td>1</td>
|
|
99
|
+
<td>8.8</td>
|
|
100
|
+
</tr>
|
|
101
|
+
|
|
102
|
+
<tr>
|
|
103
|
+
<td class="strong"><a href="#dbfbe3e96d32b3e7eea8b666117072d5da6e3e60" class="src_link" title="lib/mattock/remote-command-task.rb">lib/mattock/remote-command-task.rb</a></td>
|
|
104
|
+
<td class="yellow strong">88.89 %</td>
|
|
105
|
+
<td>30</td>
|
|
106
|
+
<td>18</td>
|
|
107
|
+
<td>16</td>
|
|
108
|
+
<td>2</td>
|
|
109
|
+
<td>1.4</td>
|
|
110
|
+
</tr>
|
|
111
|
+
|
|
112
|
+
<tr>
|
|
113
|
+
<td class="strong"><a href="#a2c73f0ba96e60116ee8696673802b6ebaddc38c" class="src_link" title="lib/mattock/tasklib.rb">lib/mattock/tasklib.rb</a></td>
|
|
114
|
+
<td class="green strong">97.5 %</td>
|
|
115
|
+
<td>76</td>
|
|
116
|
+
<td>40</td>
|
|
117
|
+
<td>39</td>
|
|
118
|
+
<td>1</td>
|
|
119
|
+
<td>3.8</td>
|
|
120
|
+
</tr>
|
|
121
|
+
|
|
122
|
+
<tr>
|
|
123
|
+
<td class="strong"><a href="#d473017bbd055a2863ae4f15284c3cc7d86dd38e" class="src_link" title="lib/mattock/template-host.rb">lib/mattock/template-host.rb</a></td>
|
|
124
|
+
<td class="red strong">63.33 %</td>
|
|
125
|
+
<td>54</td>
|
|
126
|
+
<td>30</td>
|
|
127
|
+
<td>19</td>
|
|
128
|
+
<td>11</td>
|
|
129
|
+
<td>0.6</td>
|
|
130
|
+
</tr>
|
|
131
|
+
|
|
132
|
+
<tr>
|
|
133
|
+
<td class="strong"><a href="#d05b479afa4321ddf827a6b5af14020183ee07b9" class="src_link" title="lib/mattock/testing/mock-command-line.rb">lib/mattock/testing/mock-command-line.rb</a></td>
|
|
134
|
+
<td class="green strong">92.86 %</td>
|
|
135
|
+
<td>26</td>
|
|
136
|
+
<td>14</td>
|
|
137
|
+
<td>13</td>
|
|
138
|
+
<td>1</td>
|
|
139
|
+
<td>1.4</td>
|
|
140
|
+
</tr>
|
|
141
|
+
|
|
142
|
+
<tr>
|
|
143
|
+
<td class="strong"><a href="#ba419266ded63c6767eeb8c594191949ebb1b061" class="src_link" title="lib/mattock/testing/rake-example-group.rb">lib/mattock/testing/rake-example-group.rb</a></td>
|
|
144
|
+
<td class="green strong">100.0 %</td>
|
|
145
|
+
<td>79</td>
|
|
146
|
+
<td>44</td>
|
|
147
|
+
<td>44</td>
|
|
148
|
+
<td>0</td>
|
|
149
|
+
<td>5.7</td>
|
|
150
|
+
</tr>
|
|
151
|
+
|
|
152
|
+
</tbody>
|
|
153
|
+
</table>
|
|
154
|
+
</div>
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
</div>
|
|
159
|
+
|
|
160
|
+
<div id="footer">
|
|
161
|
+
Generated by <a href="http://github.com/colszowka/simplecov">simplecov</a> v0.5.4
|
|
162
|
+
and simplecov-html v0.5.3<br/>
|
|
163
|
+
using RSpec
|
|
164
|
+
</div>
|
|
165
|
+
|
|
166
|
+
<div class="source_files">
|
|
167
|
+
|
|
168
|
+
<div class="source_table" id="ff1ec41bbd289dd44f158d42bb096896a51c94a4">
|
|
169
|
+
<div class="header">
|
|
170
|
+
<h3>lib/mattock.rb</h3>
|
|
171
|
+
<h4><span class="green">100.0 %</span> covered</h4>
|
|
172
|
+
<div>
|
|
173
|
+
<b>4</b> relevant lines.
|
|
174
|
+
<span class="green"><b>4</b> lines covered</span> and
|
|
175
|
+
<span class="red"><b>0</b> lines missed.</span>
|
|
176
|
+
</div>
|
|
177
|
+
</div>
|
|
178
|
+
|
|
179
|
+
<pre>
|
|
180
|
+
<ol>
|
|
181
|
+
|
|
182
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
183
|
+
<span class="hits">1</span>
|
|
184
|
+
|
|
185
|
+
<code class="ruby">require 'mattock/tasklib'</code>
|
|
186
|
+
</li>
|
|
187
|
+
|
|
188
|
+
<li class="covered" data-hits="1" data-linenumber="2">
|
|
189
|
+
<span class="hits">1</span>
|
|
190
|
+
|
|
191
|
+
<code class="ruby">require 'mattock/command-line'</code>
|
|
192
|
+
</li>
|
|
193
|
+
|
|
194
|
+
<li class="covered" data-hits="1" data-linenumber="3">
|
|
195
|
+
<span class="hits">1</span>
|
|
196
|
+
|
|
197
|
+
<code class="ruby">require 'mattock/remote-command-task'</code>
|
|
198
|
+
</li>
|
|
199
|
+
|
|
200
|
+
<li class="covered" data-hits="1" data-linenumber="4">
|
|
201
|
+
<span class="hits">1</span>
|
|
202
|
+
|
|
203
|
+
<code class="ruby">require 'mattock/template-host'</code>
|
|
204
|
+
</li>
|
|
205
|
+
|
|
206
|
+
</ol>
|
|
207
|
+
</pre>
|
|
208
|
+
</div>
|
|
209
|
+
|
|
210
|
+
<div class="source_table" id="19e9811ada5819ea8e2c6a644088d4ba8e773a5b">
|
|
211
|
+
<div class="header">
|
|
212
|
+
<h3>lib/mattock/command-line.rb</h3>
|
|
213
|
+
<h4><span class="green">93.1 %</span> covered</h4>
|
|
214
|
+
<div>
|
|
215
|
+
<b>87</b> relevant lines.
|
|
216
|
+
<span class="green"><b>81</b> lines covered</span> and
|
|
217
|
+
<span class="red"><b>6</b> lines missed.</span>
|
|
218
|
+
</div>
|
|
219
|
+
</div>
|
|
220
|
+
|
|
221
|
+
<pre>
|
|
222
|
+
<ol>
|
|
223
|
+
|
|
224
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
225
|
+
<span class="hits">1</span>
|
|
226
|
+
|
|
227
|
+
<code class="ruby">module Mattock</code>
|
|
228
|
+
</li>
|
|
229
|
+
|
|
230
|
+
<li class="covered" data-hits="1" data-linenumber="2">
|
|
231
|
+
<span class="hits">1</span>
|
|
232
|
+
|
|
233
|
+
<code class="ruby"> class CommandRunResult</code>
|
|
234
|
+
</li>
|
|
235
|
+
|
|
236
|
+
<li class="covered" data-hits="1" data-linenumber="3">
|
|
237
|
+
<span class="hits">1</span>
|
|
238
|
+
|
|
239
|
+
<code class="ruby"> def initialize(status, streams)</code>
|
|
240
|
+
</li>
|
|
241
|
+
|
|
242
|
+
<li class="covered" data-hits="5" data-linenumber="4">
|
|
243
|
+
<span class="hits">5</span>
|
|
244
|
+
|
|
245
|
+
<code class="ruby"> @process_status = status</code>
|
|
246
|
+
</li>
|
|
247
|
+
|
|
248
|
+
<li class="covered" data-hits="5" data-linenumber="5">
|
|
249
|
+
<span class="hits">5</span>
|
|
250
|
+
|
|
251
|
+
<code class="ruby"> @streams = streams</code>
|
|
252
|
+
</li>
|
|
253
|
+
|
|
254
|
+
<li class="never" data-hits="" data-linenumber="6">
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
<code class="ruby"> end</code>
|
|
258
|
+
</li>
|
|
259
|
+
|
|
260
|
+
<li class="covered" data-hits="1" data-linenumber="7">
|
|
261
|
+
<span class="hits">1</span>
|
|
262
|
+
|
|
263
|
+
<code class="ruby"> attr_reader :process_status, :streams</code>
|
|
264
|
+
</li>
|
|
265
|
+
|
|
266
|
+
<li class="never" data-hits="" data-linenumber="8">
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
<code class="ruby"></code>
|
|
270
|
+
</li>
|
|
271
|
+
|
|
272
|
+
<li class="covered" data-hits="1" data-linenumber="9">
|
|
273
|
+
<span class="hits">1</span>
|
|
274
|
+
|
|
275
|
+
<code class="ruby"> def stdout</code>
|
|
276
|
+
</li>
|
|
277
|
+
|
|
278
|
+
<li class="covered" data-hits="1" data-linenumber="10">
|
|
279
|
+
<span class="hits">1</span>
|
|
280
|
+
|
|
281
|
+
<code class="ruby"> @streams[1]</code>
|
|
282
|
+
</li>
|
|
283
|
+
|
|
284
|
+
<li class="never" data-hits="" data-linenumber="11">
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
<code class="ruby"> end</code>
|
|
288
|
+
</li>
|
|
289
|
+
|
|
290
|
+
<li class="never" data-hits="" data-linenumber="12">
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
<code class="ruby"></code>
|
|
294
|
+
</li>
|
|
295
|
+
|
|
296
|
+
<li class="covered" data-hits="1" data-linenumber="13">
|
|
297
|
+
<span class="hits">1</span>
|
|
298
|
+
|
|
299
|
+
<code class="ruby"> def stderr</code>
|
|
300
|
+
</li>
|
|
301
|
+
|
|
302
|
+
<li class="missed" data-hits="0" data-linenumber="14">
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
<code class="ruby"> @streams[2]</code>
|
|
306
|
+
</li>
|
|
307
|
+
|
|
308
|
+
<li class="never" data-hits="" data-linenumber="15">
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
<code class="ruby"> end</code>
|
|
312
|
+
</li>
|
|
313
|
+
|
|
314
|
+
<li class="never" data-hits="" data-linenumber="16">
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
<code class="ruby"></code>
|
|
318
|
+
</li>
|
|
319
|
+
|
|
320
|
+
<li class="covered" data-hits="1" data-linenumber="17">
|
|
321
|
+
<span class="hits">1</span>
|
|
322
|
+
|
|
323
|
+
<code class="ruby"> def exit_code</code>
|
|
324
|
+
</li>
|
|
325
|
+
|
|
326
|
+
<li class="covered" data-hits="6" data-linenumber="18">
|
|
327
|
+
<span class="hits">6</span>
|
|
328
|
+
|
|
329
|
+
<code class="ruby"> @process_status.exitstatus</code>
|
|
330
|
+
</li>
|
|
331
|
+
|
|
332
|
+
<li class="never" data-hits="" data-linenumber="19">
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
<code class="ruby"> end</code>
|
|
336
|
+
</li>
|
|
337
|
+
|
|
338
|
+
<li class="covered" data-hits="1" data-linenumber="20">
|
|
339
|
+
<span class="hits">1</span>
|
|
340
|
+
|
|
341
|
+
<code class="ruby"> alias exit_status exit_code</code>
|
|
342
|
+
</li>
|
|
343
|
+
|
|
344
|
+
<li class="never" data-hits="" data-linenumber="21">
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
<code class="ruby"></code>
|
|
348
|
+
</li>
|
|
349
|
+
|
|
350
|
+
<li class="covered" data-hits="1" data-linenumber="22">
|
|
351
|
+
<span class="hits">1</span>
|
|
352
|
+
|
|
353
|
+
<code class="ruby"> def succeeded?</code>
|
|
354
|
+
</li>
|
|
355
|
+
|
|
356
|
+
<li class="covered" data-hits="3" data-linenumber="23">
|
|
357
|
+
<span class="hits">3</span>
|
|
358
|
+
|
|
359
|
+
<code class="ruby"> must_succeed!</code>
|
|
360
|
+
</li>
|
|
361
|
+
|
|
362
|
+
<li class="covered" data-hits="1" data-linenumber="24">
|
|
363
|
+
<span class="hits">1</span>
|
|
364
|
+
|
|
365
|
+
<code class="ruby"> return true</code>
|
|
366
|
+
</li>
|
|
367
|
+
|
|
368
|
+
<li class="never" data-hits="" data-linenumber="25">
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
<code class="ruby"> rescue</code>
|
|
372
|
+
</li>
|
|
373
|
+
|
|
374
|
+
<li class="covered" data-hits="2" data-linenumber="26">
|
|
375
|
+
<span class="hits">2</span>
|
|
376
|
+
|
|
377
|
+
<code class="ruby"> return false</code>
|
|
378
|
+
</li>
|
|
379
|
+
|
|
380
|
+
<li class="never" data-hits="" data-linenumber="27">
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
<code class="ruby"> end</code>
|
|
384
|
+
</li>
|
|
385
|
+
|
|
386
|
+
<li class="never" data-hits="" data-linenumber="28">
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
<code class="ruby"></code>
|
|
390
|
+
</li>
|
|
391
|
+
|
|
392
|
+
<li class="covered" data-hits="1" data-linenumber="29">
|
|
393
|
+
<span class="hits">1</span>
|
|
394
|
+
|
|
395
|
+
<code class="ruby"> def must_succeed!</code>
|
|
396
|
+
</li>
|
|
397
|
+
|
|
398
|
+
<li class="covered" data-hits="5" data-linenumber="30">
|
|
399
|
+
<span class="hits">5</span>
|
|
400
|
+
|
|
401
|
+
<code class="ruby"> case exit_code</code>
|
|
402
|
+
</li>
|
|
403
|
+
|
|
404
|
+
<li class="never" data-hits="" data-linenumber="31">
|
|
405
|
+
|
|
406
|
+
|
|
407
|
+
<code class="ruby"> when 0</code>
|
|
408
|
+
</li>
|
|
409
|
+
|
|
410
|
+
<li class="covered" data-hits="3" data-linenumber="32">
|
|
411
|
+
<span class="hits">3</span>
|
|
412
|
+
|
|
413
|
+
<code class="ruby"> return exit_code</code>
|
|
414
|
+
</li>
|
|
415
|
+
|
|
416
|
+
<li class="never" data-hits="" data-linenumber="33">
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
<code class="ruby"> else</code>
|
|
420
|
+
</li>
|
|
421
|
+
|
|
422
|
+
<li class="covered" data-hits="2" data-linenumber="34">
|
|
423
|
+
<span class="hits">2</span>
|
|
424
|
+
|
|
425
|
+
<code class="ruby"> fail "Command '#{name}' failed with exit status #{$?.exitstatus}: \n"</code>
|
|
426
|
+
</li>
|
|
427
|
+
|
|
428
|
+
<li class="never" data-hits="" data-linenumber="35">
|
|
429
|
+
|
|
430
|
+
|
|
431
|
+
<code class="ruby"> end</code>
|
|
432
|
+
</li>
|
|
433
|
+
|
|
434
|
+
<li class="never" data-hits="" data-linenumber="36">
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
<code class="ruby"> end</code>
|
|
438
|
+
</li>
|
|
439
|
+
|
|
440
|
+
<li class="never" data-hits="" data-linenumber="37">
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
<code class="ruby"> end</code>
|
|
444
|
+
</li>
|
|
445
|
+
|
|
446
|
+
<li class="never" data-hits="" data-linenumber="38">
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
<code class="ruby"></code>
|
|
450
|
+
</li>
|
|
451
|
+
|
|
452
|
+
<li class="covered" data-hits="1" data-linenumber="39">
|
|
453
|
+
<span class="hits">1</span>
|
|
454
|
+
|
|
455
|
+
<code class="ruby"> class CommandLine</code>
|
|
456
|
+
</li>
|
|
457
|
+
|
|
458
|
+
<li class="covered" data-hits="1" data-linenumber="40">
|
|
459
|
+
<span class="hits">1</span>
|
|
460
|
+
|
|
461
|
+
<code class="ruby"> def initialize(executable, *options)</code>
|
|
462
|
+
</li>
|
|
463
|
+
|
|
464
|
+
<li class="covered" data-hits="14" data-linenumber="41">
|
|
465
|
+
<span class="hits">14</span>
|
|
466
|
+
|
|
467
|
+
<code class="ruby"> @executable = executable</code>
|
|
468
|
+
</li>
|
|
469
|
+
|
|
470
|
+
<li class="covered" data-hits="14" data-linenumber="42">
|
|
471
|
+
<span class="hits">14</span>
|
|
472
|
+
|
|
473
|
+
<code class="ruby"> @options = options</code>
|
|
474
|
+
</li>
|
|
475
|
+
|
|
476
|
+
<li class="covered" data-hits="14" data-linenumber="43">
|
|
477
|
+
<span class="hits">14</span>
|
|
478
|
+
|
|
479
|
+
<code class="ruby"> @redirections = []</code>
|
|
480
|
+
</li>
|
|
481
|
+
|
|
482
|
+
<li class="covered" data-hits="14" data-linenumber="44">
|
|
483
|
+
<span class="hits">14</span>
|
|
484
|
+
|
|
485
|
+
<code class="ruby"> yield self if block_given?</code>
|
|
486
|
+
</li>
|
|
487
|
+
|
|
488
|
+
<li class="never" data-hits="" data-linenumber="45">
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
<code class="ruby"> end</code>
|
|
492
|
+
</li>
|
|
493
|
+
|
|
494
|
+
<li class="never" data-hits="" data-linenumber="46">
|
|
495
|
+
|
|
496
|
+
|
|
497
|
+
<code class="ruby"></code>
|
|
498
|
+
</li>
|
|
499
|
+
|
|
500
|
+
<li class="covered" data-hits="1" data-linenumber="47">
|
|
501
|
+
<span class="hits">1</span>
|
|
502
|
+
|
|
503
|
+
<code class="ruby"> attr_accessor :name, :executable, :options</code>
|
|
504
|
+
</li>
|
|
505
|
+
|
|
506
|
+
<li class="never" data-hits="" data-linenumber="48">
|
|
507
|
+
|
|
508
|
+
|
|
509
|
+
<code class="ruby"></code>
|
|
510
|
+
</li>
|
|
511
|
+
|
|
512
|
+
<li class="covered" data-hits="1" data-linenumber="49">
|
|
513
|
+
<span class="hits">1</span>
|
|
514
|
+
|
|
515
|
+
<code class="ruby"> def name</code>
|
|
516
|
+
</li>
|
|
517
|
+
|
|
518
|
+
<li class="covered" data-hits="1" data-linenumber="50">
|
|
519
|
+
<span class="hits">1</span>
|
|
520
|
+
|
|
521
|
+
<code class="ruby"> @name || executable</code>
|
|
522
|
+
</li>
|
|
523
|
+
|
|
524
|
+
<li class="never" data-hits="" data-linenumber="51">
|
|
525
|
+
|
|
526
|
+
|
|
527
|
+
<code class="ruby"> end</code>
|
|
528
|
+
</li>
|
|
529
|
+
|
|
530
|
+
<li class="never" data-hits="" data-linenumber="52">
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
<code class="ruby"></code>
|
|
534
|
+
</li>
|
|
535
|
+
|
|
536
|
+
<li class="covered" data-hits="1" data-linenumber="53">
|
|
537
|
+
<span class="hits">1</span>
|
|
538
|
+
|
|
539
|
+
<code class="ruby"> def command</code>
|
|
540
|
+
</li>
|
|
541
|
+
|
|
542
|
+
<li class="covered" data-hits="12" data-linenumber="54">
|
|
543
|
+
<span class="hits">12</span>
|
|
544
|
+
|
|
545
|
+
<code class="ruby"> ([executable] + options + @redirections).join(" ")</code>
|
|
546
|
+
</li>
|
|
547
|
+
|
|
548
|
+
<li class="never" data-hits="" data-linenumber="55">
|
|
549
|
+
|
|
550
|
+
|
|
551
|
+
<code class="ruby"> end</code>
|
|
552
|
+
</li>
|
|
553
|
+
|
|
554
|
+
<li class="never" data-hits="" data-linenumber="56">
|
|
555
|
+
|
|
556
|
+
|
|
557
|
+
<code class="ruby"></code>
|
|
558
|
+
</li>
|
|
559
|
+
|
|
560
|
+
<li class="covered" data-hits="1" data-linenumber="57">
|
|
561
|
+
<span class="hits">1</span>
|
|
562
|
+
|
|
563
|
+
<code class="ruby"> def redirect_to(stream, path)</code>
|
|
564
|
+
</li>
|
|
565
|
+
|
|
566
|
+
<li class="covered" data-hits="2" data-linenumber="58">
|
|
567
|
+
<span class="hits">2</span>
|
|
568
|
+
|
|
569
|
+
<code class="ruby"> @redirections << "#{stream}>#{path}"</code>
|
|
570
|
+
</li>
|
|
571
|
+
|
|
572
|
+
<li class="never" data-hits="" data-linenumber="59">
|
|
573
|
+
|
|
574
|
+
|
|
575
|
+
<code class="ruby"> end</code>
|
|
576
|
+
</li>
|
|
577
|
+
|
|
578
|
+
<li class="never" data-hits="" data-linenumber="60">
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
<code class="ruby"></code>
|
|
582
|
+
</li>
|
|
583
|
+
|
|
584
|
+
<li class="covered" data-hits="1" data-linenumber="61">
|
|
585
|
+
<span class="hits">1</span>
|
|
586
|
+
|
|
587
|
+
<code class="ruby"> def redirect_from(path, stream)</code>
|
|
588
|
+
</li>
|
|
589
|
+
|
|
590
|
+
<li class="missed" data-hits="0" data-linenumber="62">
|
|
591
|
+
|
|
592
|
+
|
|
593
|
+
<code class="ruby"> @redirections << "#{stream}<#{path}"</code>
|
|
594
|
+
</li>
|
|
595
|
+
|
|
596
|
+
<li class="never" data-hits="" data-linenumber="63">
|
|
597
|
+
|
|
598
|
+
|
|
599
|
+
<code class="ruby"> end</code>
|
|
600
|
+
</li>
|
|
601
|
+
|
|
602
|
+
<li class="never" data-hits="" data-linenumber="64">
|
|
603
|
+
|
|
604
|
+
|
|
605
|
+
<code class="ruby"></code>
|
|
606
|
+
</li>
|
|
607
|
+
|
|
608
|
+
<li class="covered" data-hits="1" data-linenumber="65">
|
|
609
|
+
<span class="hits">1</span>
|
|
610
|
+
|
|
611
|
+
<code class="ruby"> def copy_stream_to(from, to)</code>
|
|
612
|
+
</li>
|
|
613
|
+
|
|
614
|
+
<li class="missed" data-hits="0" data-linenumber="66">
|
|
615
|
+
|
|
616
|
+
|
|
617
|
+
<code class="ruby"> @redirections << "#{from}>&#{to}"</code>
|
|
618
|
+
</li>
|
|
619
|
+
|
|
620
|
+
<li class="never" data-hits="" data-linenumber="67">
|
|
621
|
+
|
|
622
|
+
|
|
623
|
+
<code class="ruby"> end</code>
|
|
624
|
+
</li>
|
|
625
|
+
|
|
626
|
+
<li class="never" data-hits="" data-linenumber="68">
|
|
627
|
+
|
|
628
|
+
|
|
629
|
+
<code class="ruby"></code>
|
|
630
|
+
</li>
|
|
631
|
+
|
|
632
|
+
<li class="covered" data-hits="1" data-linenumber="69">
|
|
633
|
+
<span class="hits">1</span>
|
|
634
|
+
|
|
635
|
+
<code class="ruby"> def redirect_stdout(path)</code>
|
|
636
|
+
</li>
|
|
637
|
+
|
|
638
|
+
<li class="covered" data-hits="1" data-linenumber="70">
|
|
639
|
+
<span class="hits">1</span>
|
|
640
|
+
|
|
641
|
+
<code class="ruby"> redirect_to(1, path)</code>
|
|
642
|
+
</li>
|
|
643
|
+
|
|
644
|
+
<li class="never" data-hits="" data-linenumber="71">
|
|
645
|
+
|
|
646
|
+
|
|
647
|
+
<code class="ruby"> end</code>
|
|
648
|
+
</li>
|
|
649
|
+
|
|
650
|
+
<li class="never" data-hits="" data-linenumber="72">
|
|
651
|
+
|
|
652
|
+
|
|
653
|
+
<code class="ruby"></code>
|
|
654
|
+
</li>
|
|
655
|
+
|
|
656
|
+
<li class="covered" data-hits="1" data-linenumber="73">
|
|
657
|
+
<span class="hits">1</span>
|
|
658
|
+
|
|
659
|
+
<code class="ruby"> def redirect_stderr(path)</code>
|
|
660
|
+
</li>
|
|
661
|
+
|
|
662
|
+
<li class="covered" data-hits="1" data-linenumber="74">
|
|
663
|
+
<span class="hits">1</span>
|
|
664
|
+
|
|
665
|
+
<code class="ruby"> redirect_to(2, path)</code>
|
|
666
|
+
</li>
|
|
667
|
+
|
|
668
|
+
<li class="never" data-hits="" data-linenumber="75">
|
|
669
|
+
|
|
670
|
+
|
|
671
|
+
<code class="ruby"> end</code>
|
|
672
|
+
</li>
|
|
673
|
+
|
|
674
|
+
<li class="never" data-hits="" data-linenumber="76">
|
|
675
|
+
|
|
676
|
+
|
|
677
|
+
<code class="ruby"></code>
|
|
678
|
+
</li>
|
|
679
|
+
|
|
680
|
+
<li class="covered" data-hits="1" data-linenumber="77">
|
|
681
|
+
<span class="hits">1</span>
|
|
682
|
+
|
|
683
|
+
<code class="ruby"> def redirect_stdin(path)</code>
|
|
684
|
+
</li>
|
|
685
|
+
|
|
686
|
+
<li class="missed" data-hits="0" data-linenumber="78">
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
<code class="ruby"> redirect_from(path, 0)</code>
|
|
690
|
+
</li>
|
|
691
|
+
|
|
692
|
+
<li class="never" data-hits="" data-linenumber="79">
|
|
693
|
+
|
|
694
|
+
|
|
695
|
+
<code class="ruby"> end</code>
|
|
696
|
+
</li>
|
|
697
|
+
|
|
698
|
+
<li class="never" data-hits="" data-linenumber="80">
|
|
699
|
+
|
|
700
|
+
|
|
701
|
+
<code class="ruby"></code>
|
|
702
|
+
</li>
|
|
703
|
+
|
|
704
|
+
<li class="covered" data-hits="1" data-linenumber="81">
|
|
705
|
+
<span class="hits">1</span>
|
|
706
|
+
|
|
707
|
+
<code class="ruby"> def self.execute(command)</code>
|
|
708
|
+
</li>
|
|
709
|
+
|
|
710
|
+
<li class="covered" data-hits="5" data-linenumber="82">
|
|
711
|
+
<span class="hits">5</span>
|
|
712
|
+
|
|
713
|
+
<code class="ruby"> pipe = IO.popen(command)</code>
|
|
714
|
+
</li>
|
|
715
|
+
|
|
716
|
+
<li class="covered" data-hits="5" data-linenumber="83">
|
|
717
|
+
<span class="hits">5</span>
|
|
718
|
+
|
|
719
|
+
<code class="ruby"> pid = pipe.pid</code>
|
|
720
|
+
</li>
|
|
721
|
+
|
|
722
|
+
<li class="covered" data-hits="5" data-linenumber="84">
|
|
723
|
+
<span class="hits">5</span>
|
|
724
|
+
|
|
725
|
+
<code class="ruby"> pid, status = Process.wait2(pid)</code>
|
|
726
|
+
</li>
|
|
727
|
+
|
|
728
|
+
<li class="covered" data-hits="5" data-linenumber="85">
|
|
729
|
+
<span class="hits">5</span>
|
|
730
|
+
|
|
731
|
+
<code class="ruby"> result = CommandRunResult.new(status, {1 => pipe.read})</code>
|
|
732
|
+
</li>
|
|
733
|
+
|
|
734
|
+
<li class="covered" data-hits="5" data-linenumber="86">
|
|
735
|
+
<span class="hits">5</span>
|
|
736
|
+
|
|
737
|
+
<code class="ruby"> pipe.close</code>
|
|
738
|
+
</li>
|
|
739
|
+
|
|
740
|
+
<li class="covered" data-hits="5" data-linenumber="87">
|
|
741
|
+
<span class="hits">5</span>
|
|
742
|
+
|
|
743
|
+
<code class="ruby"> return result</code>
|
|
744
|
+
</li>
|
|
745
|
+
|
|
746
|
+
<li class="never" data-hits="" data-linenumber="88">
|
|
747
|
+
|
|
748
|
+
|
|
749
|
+
<code class="ruby"> end</code>
|
|
750
|
+
</li>
|
|
751
|
+
|
|
752
|
+
<li class="never" data-hits="" data-linenumber="89">
|
|
753
|
+
|
|
754
|
+
|
|
755
|
+
<code class="ruby"></code>
|
|
756
|
+
</li>
|
|
757
|
+
|
|
758
|
+
<li class="covered" data-hits="1" data-linenumber="90">
|
|
759
|
+
<span class="hits">1</span>
|
|
760
|
+
|
|
761
|
+
<code class="ruby"> def run</code>
|
|
762
|
+
</li>
|
|
763
|
+
|
|
764
|
+
<li class="covered" data-hits="7" data-linenumber="91">
|
|
765
|
+
<span class="hits">7</span>
|
|
766
|
+
|
|
767
|
+
<code class="ruby"> print command + " " if $verbose</code>
|
|
768
|
+
</li>
|
|
769
|
+
|
|
770
|
+
<li class="covered" data-hits="7" data-linenumber="92">
|
|
771
|
+
<span class="hits">7</span>
|
|
772
|
+
|
|
773
|
+
<code class="ruby"> result = self.class.execute(command)</code>
|
|
774
|
+
</li>
|
|
775
|
+
|
|
776
|
+
<li class="covered" data-hits="7" data-linenumber="93">
|
|
777
|
+
<span class="hits">7</span>
|
|
778
|
+
|
|
779
|
+
<code class="ruby"> print "=> #{result.exit_code}" if $verbose</code>
|
|
780
|
+
</li>
|
|
781
|
+
|
|
782
|
+
<li class="covered" data-hits="7" data-linenumber="94">
|
|
783
|
+
<span class="hits">7</span>
|
|
784
|
+
|
|
785
|
+
<code class="ruby"> return result</code>
|
|
786
|
+
</li>
|
|
787
|
+
|
|
788
|
+
<li class="never" data-hits="" data-linenumber="95">
|
|
789
|
+
|
|
790
|
+
|
|
791
|
+
<code class="ruby"> ensure</code>
|
|
792
|
+
</li>
|
|
793
|
+
|
|
794
|
+
<li class="covered" data-hits="7" data-linenumber="96">
|
|
795
|
+
<span class="hits">7</span>
|
|
796
|
+
|
|
797
|
+
<code class="ruby"> puts if $verbose</code>
|
|
798
|
+
</li>
|
|
799
|
+
|
|
800
|
+
<li class="never" data-hits="" data-linenumber="97">
|
|
801
|
+
|
|
802
|
+
|
|
803
|
+
<code class="ruby"> end</code>
|
|
804
|
+
</li>
|
|
805
|
+
|
|
806
|
+
<li class="never" data-hits="" data-linenumber="98">
|
|
807
|
+
|
|
808
|
+
|
|
809
|
+
<code class="ruby"></code>
|
|
810
|
+
</li>
|
|
811
|
+
|
|
812
|
+
<li class="covered" data-hits="1" data-linenumber="99">
|
|
813
|
+
<span class="hits">1</span>
|
|
814
|
+
|
|
815
|
+
<code class="ruby"> def succeeds?</code>
|
|
816
|
+
</li>
|
|
817
|
+
|
|
818
|
+
<li class="covered" data-hits="3" data-linenumber="100">
|
|
819
|
+
<span class="hits">3</span>
|
|
820
|
+
|
|
821
|
+
<code class="ruby"> run.succeeded?</code>
|
|
822
|
+
</li>
|
|
823
|
+
|
|
824
|
+
<li class="never" data-hits="" data-linenumber="101">
|
|
825
|
+
|
|
826
|
+
|
|
827
|
+
<code class="ruby"> end</code>
|
|
828
|
+
</li>
|
|
829
|
+
|
|
830
|
+
<li class="never" data-hits="" data-linenumber="102">
|
|
831
|
+
|
|
832
|
+
|
|
833
|
+
<code class="ruby"></code>
|
|
834
|
+
</li>
|
|
835
|
+
|
|
836
|
+
<li class="covered" data-hits="1" data-linenumber="103">
|
|
837
|
+
<span class="hits">1</span>
|
|
838
|
+
|
|
839
|
+
<code class="ruby"> def must_succeed!</code>
|
|
840
|
+
</li>
|
|
841
|
+
|
|
842
|
+
<li class="covered" data-hits="2" data-linenumber="104">
|
|
843
|
+
<span class="hits">2</span>
|
|
844
|
+
|
|
845
|
+
<code class="ruby"> run.must_succeed!</code>
|
|
846
|
+
</li>
|
|
847
|
+
|
|
848
|
+
<li class="never" data-hits="" data-linenumber="105">
|
|
849
|
+
|
|
850
|
+
|
|
851
|
+
<code class="ruby"> end</code>
|
|
852
|
+
</li>
|
|
853
|
+
|
|
854
|
+
<li class="never" data-hits="" data-linenumber="106">
|
|
855
|
+
|
|
856
|
+
|
|
857
|
+
<code class="ruby"> end</code>
|
|
858
|
+
</li>
|
|
859
|
+
|
|
860
|
+
<li class="never" data-hits="" data-linenumber="107">
|
|
861
|
+
|
|
862
|
+
|
|
863
|
+
<code class="ruby"></code>
|
|
864
|
+
</li>
|
|
865
|
+
|
|
866
|
+
<li class="covered" data-hits="1" data-linenumber="108">
|
|
867
|
+
<span class="hits">1</span>
|
|
868
|
+
|
|
869
|
+
<code class="ruby"> class ShellEscaped < CommandLine</code>
|
|
870
|
+
</li>
|
|
871
|
+
|
|
872
|
+
<li class="covered" data-hits="1" data-linenumber="109">
|
|
873
|
+
<span class="hits">1</span>
|
|
874
|
+
|
|
875
|
+
<code class="ruby"> def initialize(cmd)</code>
|
|
876
|
+
</li>
|
|
877
|
+
|
|
878
|
+
<li class="covered" data-hits="2" data-linenumber="110">
|
|
879
|
+
<span class="hits">2</span>
|
|
880
|
+
|
|
881
|
+
<code class="ruby"> @escaped = cmd</code>
|
|
882
|
+
</li>
|
|
883
|
+
|
|
884
|
+
<li class="never" data-hits="" data-linenumber="111">
|
|
885
|
+
|
|
886
|
+
|
|
887
|
+
<code class="ruby"> end</code>
|
|
888
|
+
</li>
|
|
889
|
+
|
|
890
|
+
<li class="never" data-hits="" data-linenumber="112">
|
|
891
|
+
|
|
892
|
+
|
|
893
|
+
<code class="ruby"></code>
|
|
894
|
+
</li>
|
|
895
|
+
|
|
896
|
+
<li class="covered" data-hits="1" data-linenumber="113">
|
|
897
|
+
<span class="hits">1</span>
|
|
898
|
+
|
|
899
|
+
<code class="ruby"> def command</code>
|
|
900
|
+
</li>
|
|
901
|
+
|
|
902
|
+
<li class="covered" data-hits="2" data-linenumber="114">
|
|
903
|
+
<span class="hits">2</span>
|
|
904
|
+
|
|
905
|
+
<code class="ruby"> "'" + @escaped.command.gsub(/'/,"\'") + "'"</code>
|
|
906
|
+
</li>
|
|
907
|
+
|
|
908
|
+
<li class="never" data-hits="" data-linenumber="115">
|
|
909
|
+
|
|
910
|
+
|
|
911
|
+
<code class="ruby"> end</code>
|
|
912
|
+
</li>
|
|
913
|
+
|
|
914
|
+
<li class="never" data-hits="" data-linenumber="116">
|
|
915
|
+
|
|
916
|
+
|
|
917
|
+
<code class="ruby"></code>
|
|
918
|
+
</li>
|
|
919
|
+
|
|
920
|
+
<li class="covered" data-hits="1" data-linenumber="117">
|
|
921
|
+
<span class="hits">1</span>
|
|
922
|
+
|
|
923
|
+
<code class="ruby"> def name</code>
|
|
924
|
+
</li>
|
|
925
|
+
|
|
926
|
+
<li class="missed" data-hits="0" data-linenumber="118">
|
|
927
|
+
|
|
928
|
+
|
|
929
|
+
<code class="ruby"> @name || @escaped.name</code>
|
|
930
|
+
</li>
|
|
931
|
+
|
|
932
|
+
<li class="never" data-hits="" data-linenumber="119">
|
|
933
|
+
|
|
934
|
+
|
|
935
|
+
<code class="ruby"> end</code>
|
|
936
|
+
</li>
|
|
937
|
+
|
|
938
|
+
<li class="never" data-hits="" data-linenumber="120">
|
|
939
|
+
|
|
940
|
+
|
|
941
|
+
<code class="ruby"> end</code>
|
|
942
|
+
</li>
|
|
943
|
+
|
|
944
|
+
<li class="never" data-hits="" data-linenumber="121">
|
|
945
|
+
|
|
946
|
+
|
|
947
|
+
<code class="ruby"></code>
|
|
948
|
+
</li>
|
|
949
|
+
|
|
950
|
+
<li class="covered" data-hits="1" data-linenumber="122">
|
|
951
|
+
<span class="hits">1</span>
|
|
952
|
+
|
|
953
|
+
<code class="ruby"> class CommandChain < CommandLine</code>
|
|
954
|
+
</li>
|
|
955
|
+
|
|
956
|
+
<li class="covered" data-hits="1" data-linenumber="123">
|
|
957
|
+
<span class="hits">1</span>
|
|
958
|
+
|
|
959
|
+
<code class="ruby"> def initialize</code>
|
|
960
|
+
</li>
|
|
961
|
+
|
|
962
|
+
<li class="covered" data-hits="4" data-linenumber="124">
|
|
963
|
+
<span class="hits">4</span>
|
|
964
|
+
|
|
965
|
+
<code class="ruby"> @commands = []</code>
|
|
966
|
+
</li>
|
|
967
|
+
|
|
968
|
+
<li class="covered" data-hits="4" data-linenumber="125">
|
|
969
|
+
<span class="hits">4</span>
|
|
970
|
+
|
|
971
|
+
<code class="ruby"> yield self if block_given?</code>
|
|
972
|
+
</li>
|
|
973
|
+
|
|
974
|
+
<li class="never" data-hits="" data-linenumber="126">
|
|
975
|
+
|
|
976
|
+
|
|
977
|
+
<code class="ruby"> end</code>
|
|
978
|
+
</li>
|
|
979
|
+
|
|
980
|
+
<li class="never" data-hits="" data-linenumber="127">
|
|
981
|
+
|
|
982
|
+
|
|
983
|
+
<code class="ruby"></code>
|
|
984
|
+
</li>
|
|
985
|
+
|
|
986
|
+
<li class="covered" data-hits="1" data-linenumber="128">
|
|
987
|
+
<span class="hits">1</span>
|
|
988
|
+
|
|
989
|
+
<code class="ruby"> attr_reader :commands</code>
|
|
990
|
+
</li>
|
|
991
|
+
|
|
992
|
+
<li class="never" data-hits="" data-linenumber="129">
|
|
993
|
+
|
|
994
|
+
|
|
995
|
+
<code class="ruby"></code>
|
|
996
|
+
</li>
|
|
997
|
+
|
|
998
|
+
<li class="covered" data-hits="1" data-linenumber="130">
|
|
999
|
+
<span class="hits">1</span>
|
|
1000
|
+
|
|
1001
|
+
<code class="ruby"> def add(cmd)</code>
|
|
1002
|
+
</li>
|
|
1003
|
+
|
|
1004
|
+
<li class="covered" data-hits="8" data-linenumber="131">
|
|
1005
|
+
<span class="hits">8</span>
|
|
1006
|
+
|
|
1007
|
+
<code class="ruby"> yield cmd if block_given?</code>
|
|
1008
|
+
</li>
|
|
1009
|
+
|
|
1010
|
+
<li class="covered" data-hits="8" data-linenumber="132">
|
|
1011
|
+
<span class="hits">8</span>
|
|
1012
|
+
|
|
1013
|
+
<code class="ruby"> @commands << cmd</code>
|
|
1014
|
+
</li>
|
|
1015
|
+
|
|
1016
|
+
<li class="never" data-hits="" data-linenumber="133">
|
|
1017
|
+
|
|
1018
|
+
|
|
1019
|
+
<code class="ruby"> end</code>
|
|
1020
|
+
</li>
|
|
1021
|
+
|
|
1022
|
+
<li class="never" data-hits="" data-linenumber="134">
|
|
1023
|
+
|
|
1024
|
+
|
|
1025
|
+
<code class="ruby"></code>
|
|
1026
|
+
</li>
|
|
1027
|
+
|
|
1028
|
+
<li class="covered" data-hits="1" data-linenumber="135">
|
|
1029
|
+
<span class="hits">1</span>
|
|
1030
|
+
|
|
1031
|
+
<code class="ruby"> def name</code>
|
|
1032
|
+
</li>
|
|
1033
|
+
|
|
1034
|
+
<li class="missed" data-hits="0" data-linenumber="136">
|
|
1035
|
+
|
|
1036
|
+
|
|
1037
|
+
<code class="ruby"> @name || @commands.last.name</code>
|
|
1038
|
+
</li>
|
|
1039
|
+
|
|
1040
|
+
<li class="never" data-hits="" data-linenumber="137">
|
|
1041
|
+
|
|
1042
|
+
|
|
1043
|
+
<code class="ruby"> end</code>
|
|
1044
|
+
</li>
|
|
1045
|
+
|
|
1046
|
+
<li class="never" data-hits="" data-linenumber="138">
|
|
1047
|
+
|
|
1048
|
+
|
|
1049
|
+
<code class="ruby"> end</code>
|
|
1050
|
+
</li>
|
|
1051
|
+
|
|
1052
|
+
<li class="never" data-hits="" data-linenumber="139">
|
|
1053
|
+
|
|
1054
|
+
|
|
1055
|
+
<code class="ruby"></code>
|
|
1056
|
+
</li>
|
|
1057
|
+
|
|
1058
|
+
<li class="covered" data-hits="1" data-linenumber="140">
|
|
1059
|
+
<span class="hits">1</span>
|
|
1060
|
+
|
|
1061
|
+
<code class="ruby"> class WrappingChain < CommandChain</code>
|
|
1062
|
+
</li>
|
|
1063
|
+
|
|
1064
|
+
<li class="covered" data-hits="1" data-linenumber="141">
|
|
1065
|
+
<span class="hits">1</span>
|
|
1066
|
+
|
|
1067
|
+
<code class="ruby"> def command</code>
|
|
1068
|
+
</li>
|
|
1069
|
+
|
|
1070
|
+
<li class="covered" data-hits="6" data-linenumber="142">
|
|
1071
|
+
<span class="hits">6</span>
|
|
1072
|
+
|
|
1073
|
+
<code class="ruby"> @commands.map{|cmd| cmd.command}.join(" -- ")</code>
|
|
1074
|
+
</li>
|
|
1075
|
+
|
|
1076
|
+
<li class="never" data-hits="" data-linenumber="143">
|
|
1077
|
+
|
|
1078
|
+
|
|
1079
|
+
<code class="ruby"> end</code>
|
|
1080
|
+
</li>
|
|
1081
|
+
|
|
1082
|
+
<li class="never" data-hits="" data-linenumber="144">
|
|
1083
|
+
|
|
1084
|
+
|
|
1085
|
+
<code class="ruby"> end</code>
|
|
1086
|
+
</li>
|
|
1087
|
+
|
|
1088
|
+
<li class="never" data-hits="" data-linenumber="145">
|
|
1089
|
+
|
|
1090
|
+
|
|
1091
|
+
<code class="ruby"></code>
|
|
1092
|
+
</li>
|
|
1093
|
+
|
|
1094
|
+
<li class="covered" data-hits="1" data-linenumber="146">
|
|
1095
|
+
<span class="hits">1</span>
|
|
1096
|
+
|
|
1097
|
+
<code class="ruby"> class PrereqChain < CommandChain</code>
|
|
1098
|
+
</li>
|
|
1099
|
+
|
|
1100
|
+
<li class="covered" data-hits="1" data-linenumber="147">
|
|
1101
|
+
<span class="hits">1</span>
|
|
1102
|
+
|
|
1103
|
+
<code class="ruby"> def command</code>
|
|
1104
|
+
</li>
|
|
1105
|
+
|
|
1106
|
+
<li class="covered" data-hits="3" data-linenumber="148">
|
|
1107
|
+
<span class="hits">3</span>
|
|
1108
|
+
|
|
1109
|
+
<code class="ruby"> @commands.map{|cmd| cmd.command}.join(" && ")</code>
|
|
1110
|
+
</li>
|
|
1111
|
+
|
|
1112
|
+
<li class="never" data-hits="" data-linenumber="149">
|
|
1113
|
+
|
|
1114
|
+
|
|
1115
|
+
<code class="ruby"> end</code>
|
|
1116
|
+
</li>
|
|
1117
|
+
|
|
1118
|
+
<li class="never" data-hits="" data-linenumber="150">
|
|
1119
|
+
|
|
1120
|
+
|
|
1121
|
+
<code class="ruby"> end</code>
|
|
1122
|
+
</li>
|
|
1123
|
+
|
|
1124
|
+
<li class="never" data-hits="" data-linenumber="151">
|
|
1125
|
+
|
|
1126
|
+
|
|
1127
|
+
<code class="ruby"></code>
|
|
1128
|
+
</li>
|
|
1129
|
+
|
|
1130
|
+
<li class="covered" data-hits="1" data-linenumber="152">
|
|
1131
|
+
<span class="hits">1</span>
|
|
1132
|
+
|
|
1133
|
+
<code class="ruby"> class PipelineChain < CommandChain</code>
|
|
1134
|
+
</li>
|
|
1135
|
+
|
|
1136
|
+
<li class="covered" data-hits="1" data-linenumber="153">
|
|
1137
|
+
<span class="hits">1</span>
|
|
1138
|
+
|
|
1139
|
+
<code class="ruby"> def command</code>
|
|
1140
|
+
</li>
|
|
1141
|
+
|
|
1142
|
+
<li class="covered" data-hits="3" data-linenumber="154">
|
|
1143
|
+
<span class="hits">3</span>
|
|
1144
|
+
|
|
1145
|
+
<code class="ruby"> @commands.map{|cmd| cmd.command}.join(" | ")</code>
|
|
1146
|
+
</li>
|
|
1147
|
+
|
|
1148
|
+
<li class="never" data-hits="" data-linenumber="155">
|
|
1149
|
+
|
|
1150
|
+
|
|
1151
|
+
<code class="ruby"> end</code>
|
|
1152
|
+
</li>
|
|
1153
|
+
|
|
1154
|
+
<li class="never" data-hits="" data-linenumber="156">
|
|
1155
|
+
|
|
1156
|
+
|
|
1157
|
+
<code class="ruby"> end</code>
|
|
1158
|
+
</li>
|
|
1159
|
+
|
|
1160
|
+
<li class="never" data-hits="" data-linenumber="157">
|
|
1161
|
+
|
|
1162
|
+
|
|
1163
|
+
<code class="ruby">end</code>
|
|
1164
|
+
</li>
|
|
1165
|
+
|
|
1166
|
+
</ol>
|
|
1167
|
+
</pre>
|
|
1168
|
+
</div>
|
|
1169
|
+
|
|
1170
|
+
<div class="source_table" id="937bd4854d7605194eaf61c021175d6a0f31e6e8">
|
|
1171
|
+
<div class="header">
|
|
1172
|
+
<h3>lib/mattock/command-task.rb</h3>
|
|
1173
|
+
<h4><span class="green">93.1 %</span> covered</h4>
|
|
1174
|
+
<div>
|
|
1175
|
+
<b>29</b> relevant lines.
|
|
1176
|
+
<span class="green"><b>27</b> lines covered</span> and
|
|
1177
|
+
<span class="red"><b>2</b> lines missed.</span>
|
|
1178
|
+
</div>
|
|
1179
|
+
</div>
|
|
1180
|
+
|
|
1181
|
+
<pre>
|
|
1182
|
+
<ol>
|
|
1183
|
+
|
|
1184
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
1185
|
+
<span class="hits">1</span>
|
|
1186
|
+
|
|
1187
|
+
<code class="ruby">require 'mattock/tasklib'</code>
|
|
1188
|
+
</li>
|
|
1189
|
+
|
|
1190
|
+
<li class="covered" data-hits="1" data-linenumber="2">
|
|
1191
|
+
<span class="hits">1</span>
|
|
1192
|
+
|
|
1193
|
+
<code class="ruby">require 'mattock/command-line'</code>
|
|
1194
|
+
</li>
|
|
1195
|
+
|
|
1196
|
+
<li class="never" data-hits="" data-linenumber="3">
|
|
1197
|
+
|
|
1198
|
+
|
|
1199
|
+
<code class="ruby"></code>
|
|
1200
|
+
</li>
|
|
1201
|
+
|
|
1202
|
+
<li class="covered" data-hits="1" data-linenumber="4">
|
|
1203
|
+
<span class="hits">1</span>
|
|
1204
|
+
|
|
1205
|
+
<code class="ruby">module Mattock</code>
|
|
1206
|
+
</li>
|
|
1207
|
+
|
|
1208
|
+
<li class="covered" data-hits="1" data-linenumber="5">
|
|
1209
|
+
<span class="hits">1</span>
|
|
1210
|
+
|
|
1211
|
+
<code class="ruby"> module NeededPredicate</code>
|
|
1212
|
+
</li>
|
|
1213
|
+
|
|
1214
|
+
<li class="covered" data-hits="1" data-linenumber="6">
|
|
1215
|
+
<span class="hits">1</span>
|
|
1216
|
+
|
|
1217
|
+
<code class="ruby"> def needed_predicate(&block)</code>
|
|
1218
|
+
</li>
|
|
1219
|
+
|
|
1220
|
+
<li class="covered" data-hits="2" data-linenumber="7">
|
|
1221
|
+
<span class="hits">2</span>
|
|
1222
|
+
|
|
1223
|
+
<code class="ruby"> (class << self; self; end).instance_eval do</code>
|
|
1224
|
+
</li>
|
|
1225
|
+
|
|
1226
|
+
<li class="covered" data-hits="1" data-linenumber="8">
|
|
1227
|
+
<span class="hits">1</span>
|
|
1228
|
+
|
|
1229
|
+
<code class="ruby"> define_method(:needed?, &block)</code>
|
|
1230
|
+
</li>
|
|
1231
|
+
|
|
1232
|
+
<li class="never" data-hits="" data-linenumber="9">
|
|
1233
|
+
|
|
1234
|
+
|
|
1235
|
+
<code class="ruby"> end</code>
|
|
1236
|
+
</li>
|
|
1237
|
+
|
|
1238
|
+
<li class="never" data-hits="" data-linenumber="10">
|
|
1239
|
+
|
|
1240
|
+
|
|
1241
|
+
<code class="ruby"> end</code>
|
|
1242
|
+
</li>
|
|
1243
|
+
|
|
1244
|
+
<li class="never" data-hits="" data-linenumber="11">
|
|
1245
|
+
|
|
1246
|
+
|
|
1247
|
+
<code class="ruby"> end</code>
|
|
1248
|
+
</li>
|
|
1249
|
+
|
|
1250
|
+
<li class="never" data-hits="" data-linenumber="12">
|
|
1251
|
+
|
|
1252
|
+
|
|
1253
|
+
<code class="ruby"></code>
|
|
1254
|
+
</li>
|
|
1255
|
+
|
|
1256
|
+
<li class="covered" data-hits="1" data-linenumber="13">
|
|
1257
|
+
<span class="hits">1</span>
|
|
1258
|
+
|
|
1259
|
+
<code class="ruby"> class CommandTask < TaskLib</code>
|
|
1260
|
+
</li>
|
|
1261
|
+
|
|
1262
|
+
<li class="covered" data-hits="1" data-linenumber="14">
|
|
1263
|
+
<span class="hits">1</span>
|
|
1264
|
+
|
|
1265
|
+
<code class="ruby"> setting(:task_name, :run)</code>
|
|
1266
|
+
</li>
|
|
1267
|
+
|
|
1268
|
+
<li class="covered" data-hits="1" data-linenumber="15">
|
|
1269
|
+
<span class="hits">1</span>
|
|
1270
|
+
|
|
1271
|
+
<code class="ruby"> setting(:command)</code>
|
|
1272
|
+
</li>
|
|
1273
|
+
|
|
1274
|
+
<li class="covered" data-hits="1" data-linenumber="16">
|
|
1275
|
+
<span class="hits">1</span>
|
|
1276
|
+
|
|
1277
|
+
<code class="ruby"> setting(:verify_command, nil)</code>
|
|
1278
|
+
</li>
|
|
1279
|
+
|
|
1280
|
+
<li class="never" data-hits="" data-linenumber="17">
|
|
1281
|
+
|
|
1282
|
+
|
|
1283
|
+
<code class="ruby"></code>
|
|
1284
|
+
</li>
|
|
1285
|
+
|
|
1286
|
+
<li class="covered" data-hits="1" data-linenumber="18">
|
|
1287
|
+
<span class="hits">1</span>
|
|
1288
|
+
|
|
1289
|
+
<code class="ruby"> def verify_command</code>
|
|
1290
|
+
</li>
|
|
1291
|
+
|
|
1292
|
+
<li class="covered" data-hits="3" data-linenumber="19">
|
|
1293
|
+
<span class="hits">3</span>
|
|
1294
|
+
|
|
1295
|
+
<code class="ruby"> if @verify_command.respond_to?(:call)</code>
|
|
1296
|
+
</li>
|
|
1297
|
+
|
|
1298
|
+
<li class="missed" data-hits="0" data-linenumber="20">
|
|
1299
|
+
|
|
1300
|
+
|
|
1301
|
+
<code class="ruby"> @verify_command = @verify_command.call</code>
|
|
1302
|
+
</li>
|
|
1303
|
+
|
|
1304
|
+
<li class="never" data-hits="" data-linenumber="21">
|
|
1305
|
+
|
|
1306
|
+
|
|
1307
|
+
<code class="ruby"> end</code>
|
|
1308
|
+
</li>
|
|
1309
|
+
|
|
1310
|
+
<li class="covered" data-hits="3" data-linenumber="22">
|
|
1311
|
+
<span class="hits">3</span>
|
|
1312
|
+
|
|
1313
|
+
<code class="ruby"> @verify_command</code>
|
|
1314
|
+
</li>
|
|
1315
|
+
|
|
1316
|
+
<li class="never" data-hits="" data-linenumber="23">
|
|
1317
|
+
|
|
1318
|
+
|
|
1319
|
+
<code class="ruby"> end</code>
|
|
1320
|
+
</li>
|
|
1321
|
+
|
|
1322
|
+
<li class="never" data-hits="" data-linenumber="24">
|
|
1323
|
+
|
|
1324
|
+
|
|
1325
|
+
<code class="ruby"></code>
|
|
1326
|
+
</li>
|
|
1327
|
+
|
|
1328
|
+
<li class="covered" data-hits="1" data-linenumber="25">
|
|
1329
|
+
<span class="hits">1</span>
|
|
1330
|
+
|
|
1331
|
+
<code class="ruby"> def decorated(cmd)</code>
|
|
1332
|
+
</li>
|
|
1333
|
+
|
|
1334
|
+
<li class="missed" data-hits="0" data-linenumber="26">
|
|
1335
|
+
|
|
1336
|
+
|
|
1337
|
+
<code class="ruby"> cmd</code>
|
|
1338
|
+
</li>
|
|
1339
|
+
|
|
1340
|
+
<li class="never" data-hits="" data-linenumber="27">
|
|
1341
|
+
|
|
1342
|
+
|
|
1343
|
+
<code class="ruby"> end</code>
|
|
1344
|
+
</li>
|
|
1345
|
+
|
|
1346
|
+
<li class="never" data-hits="" data-linenumber="28">
|
|
1347
|
+
|
|
1348
|
+
|
|
1349
|
+
<code class="ruby"></code>
|
|
1350
|
+
</li>
|
|
1351
|
+
|
|
1352
|
+
<li class="covered" data-hits="1" data-linenumber="29">
|
|
1353
|
+
<span class="hits">1</span>
|
|
1354
|
+
|
|
1355
|
+
<code class="ruby"> def command_task</code>
|
|
1356
|
+
</li>
|
|
1357
|
+
|
|
1358
|
+
<li class="never" data-hits="" data-linenumber="30">
|
|
1359
|
+
|
|
1360
|
+
|
|
1361
|
+
<code class="ruby"> @command_task ||=</code>
|
|
1362
|
+
</li>
|
|
1363
|
+
|
|
1364
|
+
<li class="never" data-hits="" data-linenumber="31">
|
|
1365
|
+
|
|
1366
|
+
|
|
1367
|
+
<code class="ruby"> begin</code>
|
|
1368
|
+
</li>
|
|
1369
|
+
|
|
1370
|
+
<li class="covered" data-hits="1" data-linenumber="32">
|
|
1371
|
+
<span class="hits">1</span>
|
|
1372
|
+
|
|
1373
|
+
<code class="ruby"> task task_name do</code>
|
|
1374
|
+
</li>
|
|
1375
|
+
|
|
1376
|
+
<li class="covered" data-hits="1" data-linenumber="33">
|
|
1377
|
+
<span class="hits">1</span>
|
|
1378
|
+
|
|
1379
|
+
<code class="ruby"> decorated(command).must_succeed!</code>
|
|
1380
|
+
</li>
|
|
1381
|
+
|
|
1382
|
+
<li class="never" data-hits="" data-linenumber="34">
|
|
1383
|
+
|
|
1384
|
+
|
|
1385
|
+
<code class="ruby"> end</code>
|
|
1386
|
+
</li>
|
|
1387
|
+
|
|
1388
|
+
<li class="covered" data-hits="3" data-linenumber="35">
|
|
1389
|
+
<span class="hits">3</span>
|
|
1390
|
+
|
|
1391
|
+
<code class="ruby"> end</code>
|
|
1392
|
+
</li>
|
|
1393
|
+
|
|
1394
|
+
<li class="never" data-hits="" data-linenumber="36">
|
|
1395
|
+
|
|
1396
|
+
|
|
1397
|
+
<code class="ruby"> end</code>
|
|
1398
|
+
</li>
|
|
1399
|
+
|
|
1400
|
+
<li class="never" data-hits="" data-linenumber="37">
|
|
1401
|
+
|
|
1402
|
+
|
|
1403
|
+
<code class="ruby"></code>
|
|
1404
|
+
</li>
|
|
1405
|
+
|
|
1406
|
+
<li class="covered" data-hits="1" data-linenumber="38">
|
|
1407
|
+
<span class="hits">1</span>
|
|
1408
|
+
|
|
1409
|
+
<code class="ruby"> def define</code>
|
|
1410
|
+
</li>
|
|
1411
|
+
|
|
1412
|
+
<li class="covered" data-hits="1" data-linenumber="39">
|
|
1413
|
+
<span class="hits">1</span>
|
|
1414
|
+
|
|
1415
|
+
<code class="ruby"> in_namespace do</code>
|
|
1416
|
+
</li>
|
|
1417
|
+
|
|
1418
|
+
<li class="covered" data-hits="1" data-linenumber="40">
|
|
1419
|
+
<span class="hits">1</span>
|
|
1420
|
+
|
|
1421
|
+
<code class="ruby"> command_task</code>
|
|
1422
|
+
</li>
|
|
1423
|
+
|
|
1424
|
+
<li class="covered" data-hits="1" data-linenumber="41">
|
|
1425
|
+
<span class="hits">1</span>
|
|
1426
|
+
|
|
1427
|
+
<code class="ruby"> unless verify_command.nil?</code>
|
|
1428
|
+
</li>
|
|
1429
|
+
|
|
1430
|
+
<li class="covered" data-hits="1" data-linenumber="42">
|
|
1431
|
+
<span class="hits">1</span>
|
|
1432
|
+
|
|
1433
|
+
<code class="ruby"> needed = decorated(verify_command)</code>
|
|
1434
|
+
</li>
|
|
1435
|
+
|
|
1436
|
+
<li class="covered" data-hits="1" data-linenumber="43">
|
|
1437
|
+
<span class="hits">1</span>
|
|
1438
|
+
|
|
1439
|
+
<code class="ruby"> command_task.extend NeededPredicate</code>
|
|
1440
|
+
</li>
|
|
1441
|
+
|
|
1442
|
+
<li class="covered" data-hits="1" data-linenumber="44">
|
|
1443
|
+
<span class="hits">1</span>
|
|
1444
|
+
|
|
1445
|
+
<code class="ruby"> command_task.needed_predicate do</code>
|
|
1446
|
+
</li>
|
|
1447
|
+
|
|
1448
|
+
<li class="covered" data-hits="1" data-linenumber="45">
|
|
1449
|
+
<span class="hits">1</span>
|
|
1450
|
+
|
|
1451
|
+
<code class="ruby"> !needed.succeeds?</code>
|
|
1452
|
+
</li>
|
|
1453
|
+
|
|
1454
|
+
<li class="never" data-hits="" data-linenumber="46">
|
|
1455
|
+
|
|
1456
|
+
|
|
1457
|
+
<code class="ruby"> end</code>
|
|
1458
|
+
</li>
|
|
1459
|
+
|
|
1460
|
+
<li class="never" data-hits="" data-linenumber="47">
|
|
1461
|
+
|
|
1462
|
+
|
|
1463
|
+
<code class="ruby"> end</code>
|
|
1464
|
+
</li>
|
|
1465
|
+
|
|
1466
|
+
<li class="never" data-hits="" data-linenumber="48">
|
|
1467
|
+
|
|
1468
|
+
|
|
1469
|
+
<code class="ruby"> end</code>
|
|
1470
|
+
</li>
|
|
1471
|
+
|
|
1472
|
+
<li class="never" data-hits="" data-linenumber="49">
|
|
1473
|
+
|
|
1474
|
+
|
|
1475
|
+
<code class="ruby"> end</code>
|
|
1476
|
+
</li>
|
|
1477
|
+
|
|
1478
|
+
<li class="never" data-hits="" data-linenumber="50">
|
|
1479
|
+
|
|
1480
|
+
|
|
1481
|
+
<code class="ruby"> end</code>
|
|
1482
|
+
</li>
|
|
1483
|
+
|
|
1484
|
+
<li class="never" data-hits="" data-linenumber="51">
|
|
1485
|
+
|
|
1486
|
+
|
|
1487
|
+
<code class="ruby">end</code>
|
|
1488
|
+
</li>
|
|
1489
|
+
|
|
1490
|
+
</ol>
|
|
1491
|
+
</pre>
|
|
1492
|
+
</div>
|
|
1493
|
+
|
|
1494
|
+
<div class="source_table" id="151b5abc8f09f0fc2932ac98c07e3b516a518e3e">
|
|
1495
|
+
<div class="header">
|
|
1496
|
+
<h3>lib/mattock/configurable.rb</h3>
|
|
1497
|
+
<h4><span class="green">98.7 %</span> covered</h4>
|
|
1498
|
+
<div>
|
|
1499
|
+
<b>77</b> relevant lines.
|
|
1500
|
+
<span class="green"><b>76</b> lines covered</span> and
|
|
1501
|
+
<span class="red"><b>1</b> lines missed.</span>
|
|
1502
|
+
</div>
|
|
1503
|
+
</div>
|
|
1504
|
+
|
|
1505
|
+
<pre>
|
|
1506
|
+
<ol>
|
|
1507
|
+
|
|
1508
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
1509
|
+
<span class="hits">1</span>
|
|
1510
|
+
|
|
1511
|
+
<code class="ruby">module Mattock</code>
|
|
1512
|
+
</li>
|
|
1513
|
+
|
|
1514
|
+
<li class="covered" data-hits="1" data-linenumber="2">
|
|
1515
|
+
<span class="hits">1</span>
|
|
1516
|
+
|
|
1517
|
+
<code class="ruby"> module Configurable</code>
|
|
1518
|
+
</li>
|
|
1519
|
+
|
|
1520
|
+
<li class="covered" data-hits="1" data-linenumber="3">
|
|
1521
|
+
<span class="hits">1</span>
|
|
1522
|
+
|
|
1523
|
+
<code class="ruby"> RequiredField = Object.new</code>
|
|
1524
|
+
</li>
|
|
1525
|
+
|
|
1526
|
+
<li class="covered" data-hits="1" data-linenumber="4">
|
|
1527
|
+
<span class="hits">1</span>
|
|
1528
|
+
|
|
1529
|
+
<code class="ruby"> class << RequiredField</code>
|
|
1530
|
+
</li>
|
|
1531
|
+
|
|
1532
|
+
<li class="covered" data-hits="1" data-linenumber="5">
|
|
1533
|
+
<span class="hits">1</span>
|
|
1534
|
+
|
|
1535
|
+
<code class="ruby"> def to_s</code>
|
|
1536
|
+
</li>
|
|
1537
|
+
|
|
1538
|
+
<li class="covered" data-hits="3" data-linenumber="6">
|
|
1539
|
+
<span class="hits">3</span>
|
|
1540
|
+
|
|
1541
|
+
<code class="ruby"> "<unset>"</code>
|
|
1542
|
+
</li>
|
|
1543
|
+
|
|
1544
|
+
<li class="never" data-hits="" data-linenumber="7">
|
|
1545
|
+
|
|
1546
|
+
|
|
1547
|
+
<code class="ruby"> end</code>
|
|
1548
|
+
</li>
|
|
1549
|
+
|
|
1550
|
+
<li class="never" data-hits="" data-linenumber="8">
|
|
1551
|
+
|
|
1552
|
+
|
|
1553
|
+
<code class="ruby"></code>
|
|
1554
|
+
</li>
|
|
1555
|
+
|
|
1556
|
+
<li class="covered" data-hits="1" data-linenumber="9">
|
|
1557
|
+
<span class="hits">1</span>
|
|
1558
|
+
|
|
1559
|
+
<code class="ruby"> def inspect</code>
|
|
1560
|
+
</li>
|
|
1561
|
+
|
|
1562
|
+
<li class="covered" data-hits="3" data-linenumber="10">
|
|
1563
|
+
<span class="hits">3</span>
|
|
1564
|
+
|
|
1565
|
+
<code class="ruby"> to_s</code>
|
|
1566
|
+
</li>
|
|
1567
|
+
|
|
1568
|
+
<li class="never" data-hits="" data-linenumber="11">
|
|
1569
|
+
|
|
1570
|
+
|
|
1571
|
+
<code class="ruby"> end</code>
|
|
1572
|
+
</li>
|
|
1573
|
+
|
|
1574
|
+
<li class="never" data-hits="" data-linenumber="12">
|
|
1575
|
+
|
|
1576
|
+
|
|
1577
|
+
<code class="ruby"> end</code>
|
|
1578
|
+
</li>
|
|
1579
|
+
|
|
1580
|
+
<li class="covered" data-hits="1" data-linenumber="13">
|
|
1581
|
+
<span class="hits">1</span>
|
|
1582
|
+
|
|
1583
|
+
<code class="ruby"> RequiredField.freeze</code>
|
|
1584
|
+
</li>
|
|
1585
|
+
|
|
1586
|
+
<li class="never" data-hits="" data-linenumber="14">
|
|
1587
|
+
|
|
1588
|
+
|
|
1589
|
+
<code class="ruby"></code>
|
|
1590
|
+
</li>
|
|
1591
|
+
|
|
1592
|
+
<li class="covered" data-hits="1" data-linenumber="15">
|
|
1593
|
+
<span class="hits">1</span>
|
|
1594
|
+
|
|
1595
|
+
<code class="ruby"> module ClassMethods</code>
|
|
1596
|
+
</li>
|
|
1597
|
+
|
|
1598
|
+
<li class="never" data-hits="" data-linenumber="16">
|
|
1599
|
+
|
|
1600
|
+
|
|
1601
|
+
<code class="ruby"></code>
|
|
1602
|
+
</li>
|
|
1603
|
+
|
|
1604
|
+
<li class="covered" data-hits="1" data-linenumber="17">
|
|
1605
|
+
<span class="hits">1</span>
|
|
1606
|
+
|
|
1607
|
+
<code class="ruby"> def default_values</code>
|
|
1608
|
+
</li>
|
|
1609
|
+
|
|
1610
|
+
<li class="covered" data-hits="92" data-linenumber="18">
|
|
1611
|
+
<span class="hits">92</span>
|
|
1612
|
+
|
|
1613
|
+
<code class="ruby"> @default_values ||= {}</code>
|
|
1614
|
+
</li>
|
|
1615
|
+
|
|
1616
|
+
<li class="never" data-hits="" data-linenumber="19">
|
|
1617
|
+
|
|
1618
|
+
|
|
1619
|
+
<code class="ruby"> end</code>
|
|
1620
|
+
</li>
|
|
1621
|
+
|
|
1622
|
+
<li class="never" data-hits="" data-linenumber="20">
|
|
1623
|
+
|
|
1624
|
+
|
|
1625
|
+
<code class="ruby"></code>
|
|
1626
|
+
</li>
|
|
1627
|
+
|
|
1628
|
+
<li class="covered" data-hits="1" data-linenumber="21">
|
|
1629
|
+
<span class="hits">1</span>
|
|
1630
|
+
|
|
1631
|
+
<code class="ruby"> def set_defaults_on(instance)</code>
|
|
1632
|
+
</li>
|
|
1633
|
+
|
|
1634
|
+
<li class="covered" data-hits="31" data-linenumber="22">
|
|
1635
|
+
<span class="hits">31</span>
|
|
1636
|
+
|
|
1637
|
+
<code class="ruby"> if Configurable > superclass</code>
|
|
1638
|
+
</li>
|
|
1639
|
+
|
|
1640
|
+
<li class="covered" data-hits="16" data-linenumber="23">
|
|
1641
|
+
<span class="hits">16</span>
|
|
1642
|
+
|
|
1643
|
+
<code class="ruby"> superclass.set_defaults_on(instance)</code>
|
|
1644
|
+
</li>
|
|
1645
|
+
|
|
1646
|
+
<li class="never" data-hits="" data-linenumber="24">
|
|
1647
|
+
|
|
1648
|
+
|
|
1649
|
+
<code class="ruby"> end</code>
|
|
1650
|
+
</li>
|
|
1651
|
+
|
|
1652
|
+
<li class="covered" data-hits="31" data-linenumber="25">
|
|
1653
|
+
<span class="hits">31</span>
|
|
1654
|
+
|
|
1655
|
+
<code class="ruby"> default_values.each_pair do |name,value|</code>
|
|
1656
|
+
</li>
|
|
1657
|
+
|
|
1658
|
+
<li class="covered" data-hits="42" data-linenumber="26">
|
|
1659
|
+
<span class="hits">42</span>
|
|
1660
|
+
|
|
1661
|
+
<code class="ruby"> instance.__send__("#{name}=", value)</code>
|
|
1662
|
+
</li>
|
|
1663
|
+
|
|
1664
|
+
<li class="covered" data-hits="42" data-linenumber="27">
|
|
1665
|
+
<span class="hits">42</span>
|
|
1666
|
+
|
|
1667
|
+
<code class="ruby"> if Configurable === value</code>
|
|
1668
|
+
</li>
|
|
1669
|
+
|
|
1670
|
+
<li class="covered" data-hits="5" data-linenumber="28">
|
|
1671
|
+
<span class="hits">5</span>
|
|
1672
|
+
|
|
1673
|
+
<code class="ruby"> value.class.set_defaults_on(value)</code>
|
|
1674
|
+
</li>
|
|
1675
|
+
|
|
1676
|
+
<li class="never" data-hits="" data-linenumber="29">
|
|
1677
|
+
|
|
1678
|
+
|
|
1679
|
+
<code class="ruby"> end</code>
|
|
1680
|
+
</li>
|
|
1681
|
+
|
|
1682
|
+
<li class="never" data-hits="" data-linenumber="30">
|
|
1683
|
+
|
|
1684
|
+
|
|
1685
|
+
<code class="ruby"> end</code>
|
|
1686
|
+
</li>
|
|
1687
|
+
|
|
1688
|
+
<li class="never" data-hits="" data-linenumber="31">
|
|
1689
|
+
|
|
1690
|
+
|
|
1691
|
+
<code class="ruby"> end</code>
|
|
1692
|
+
</li>
|
|
1693
|
+
|
|
1694
|
+
<li class="never" data-hits="" data-linenumber="32">
|
|
1695
|
+
|
|
1696
|
+
|
|
1697
|
+
<code class="ruby"></code>
|
|
1698
|
+
</li>
|
|
1699
|
+
|
|
1700
|
+
<li class="covered" data-hits="1" data-linenumber="33">
|
|
1701
|
+
<span class="hits">1</span>
|
|
1702
|
+
|
|
1703
|
+
<code class="ruby"> def missing_required_fields_on(instance)</code>
|
|
1704
|
+
</li>
|
|
1705
|
+
|
|
1706
|
+
<li class="covered" data-hits="27" data-linenumber="34">
|
|
1707
|
+
<span class="hits">27</span>
|
|
1708
|
+
|
|
1709
|
+
<code class="ruby"> missing = []</code>
|
|
1710
|
+
</li>
|
|
1711
|
+
|
|
1712
|
+
<li class="covered" data-hits="27" data-linenumber="35">
|
|
1713
|
+
<span class="hits">27</span>
|
|
1714
|
+
|
|
1715
|
+
<code class="ruby"> if Configurable > superclass</code>
|
|
1716
|
+
</li>
|
|
1717
|
+
|
|
1718
|
+
<li class="covered" data-hits="14" data-linenumber="36">
|
|
1719
|
+
<span class="hits">14</span>
|
|
1720
|
+
|
|
1721
|
+
<code class="ruby"> missing = superclass.missing_required_fields_on(instance)</code>
|
|
1722
|
+
</li>
|
|
1723
|
+
|
|
1724
|
+
<li class="never" data-hits="" data-linenumber="37">
|
|
1725
|
+
|
|
1726
|
+
|
|
1727
|
+
<code class="ruby"> end</code>
|
|
1728
|
+
</li>
|
|
1729
|
+
|
|
1730
|
+
<li class="covered" data-hits="27" data-linenumber="38">
|
|
1731
|
+
<span class="hits">27</span>
|
|
1732
|
+
|
|
1733
|
+
<code class="ruby"> default_values.each_pair do |name,value|</code>
|
|
1734
|
+
</li>
|
|
1735
|
+
|
|
1736
|
+
<li class="covered" data-hits="35" data-linenumber="39">
|
|
1737
|
+
<span class="hits">35</span>
|
|
1738
|
+
|
|
1739
|
+
<code class="ruby"> set_value = instance.__send__(name)</code>
|
|
1740
|
+
</li>
|
|
1741
|
+
|
|
1742
|
+
<li class="covered" data-hits="35" data-linenumber="40">
|
|
1743
|
+
<span class="hits">35</span>
|
|
1744
|
+
|
|
1745
|
+
<code class="ruby"> if value == RequiredField and set_value == RequiredField</code>
|
|
1746
|
+
</li>
|
|
1747
|
+
|
|
1748
|
+
<li class="covered" data-hits="3" data-linenumber="41">
|
|
1749
|
+
<span class="hits">3</span>
|
|
1750
|
+
|
|
1751
|
+
<code class="ruby"> missing << name</code>
|
|
1752
|
+
</li>
|
|
1753
|
+
|
|
1754
|
+
<li class="covered" data-hits="3" data-linenumber="42">
|
|
1755
|
+
<span class="hits">3</span>
|
|
1756
|
+
|
|
1757
|
+
<code class="ruby"> next</code>
|
|
1758
|
+
</li>
|
|
1759
|
+
|
|
1760
|
+
<li class="never" data-hits="" data-linenumber="43">
|
|
1761
|
+
|
|
1762
|
+
|
|
1763
|
+
<code class="ruby"> end</code>
|
|
1764
|
+
</li>
|
|
1765
|
+
|
|
1766
|
+
<li class="covered" data-hits="32" data-linenumber="44">
|
|
1767
|
+
<span class="hits">32</span>
|
|
1768
|
+
|
|
1769
|
+
<code class="ruby"> if Configurable === set_value</code>
|
|
1770
|
+
</li>
|
|
1771
|
+
|
|
1772
|
+
<li class="covered" data-hits="4" data-linenumber="45">
|
|
1773
|
+
<span class="hits">4</span>
|
|
1774
|
+
|
|
1775
|
+
<code class="ruby"> missing += set_value.class.missing_required_fields_on(set_value).map do |field|</code>
|
|
1776
|
+
</li>
|
|
1777
|
+
|
|
1778
|
+
<li class="covered" data-hits="2" data-linenumber="46">
|
|
1779
|
+
<span class="hits">2</span>
|
|
1780
|
+
|
|
1781
|
+
<code class="ruby"> [name, field].join(".")</code>
|
|
1782
|
+
</li>
|
|
1783
|
+
|
|
1784
|
+
<li class="never" data-hits="" data-linenumber="47">
|
|
1785
|
+
|
|
1786
|
+
|
|
1787
|
+
<code class="ruby"> end</code>
|
|
1788
|
+
</li>
|
|
1789
|
+
|
|
1790
|
+
<li class="never" data-hits="" data-linenumber="48">
|
|
1791
|
+
|
|
1792
|
+
|
|
1793
|
+
<code class="ruby"> end</code>
|
|
1794
|
+
</li>
|
|
1795
|
+
|
|
1796
|
+
<li class="never" data-hits="" data-linenumber="49">
|
|
1797
|
+
|
|
1798
|
+
|
|
1799
|
+
<code class="ruby"> end</code>
|
|
1800
|
+
</li>
|
|
1801
|
+
|
|
1802
|
+
<li class="covered" data-hits="27" data-linenumber="50">
|
|
1803
|
+
<span class="hits">27</span>
|
|
1804
|
+
|
|
1805
|
+
<code class="ruby"> return missing</code>
|
|
1806
|
+
</li>
|
|
1807
|
+
|
|
1808
|
+
<li class="never" data-hits="" data-linenumber="51">
|
|
1809
|
+
|
|
1810
|
+
|
|
1811
|
+
<code class="ruby"> end</code>
|
|
1812
|
+
</li>
|
|
1813
|
+
|
|
1814
|
+
<li class="never" data-hits="" data-linenumber="52">
|
|
1815
|
+
|
|
1816
|
+
|
|
1817
|
+
<code class="ruby"></code>
|
|
1818
|
+
</li>
|
|
1819
|
+
|
|
1820
|
+
<li class="covered" data-hits="1" data-linenumber="53">
|
|
1821
|
+
<span class="hits">1</span>
|
|
1822
|
+
|
|
1823
|
+
<code class="ruby"> def nested(hash=nil)</code>
|
|
1824
|
+
</li>
|
|
1825
|
+
|
|
1826
|
+
<li class="covered" data-hits="2" data-linenumber="54">
|
|
1827
|
+
<span class="hits">2</span>
|
|
1828
|
+
|
|
1829
|
+
<code class="ruby"> obj = Class.new(Struct).new</code>
|
|
1830
|
+
</li>
|
|
1831
|
+
|
|
1832
|
+
<li class="covered" data-hits="2" data-linenumber="55">
|
|
1833
|
+
<span class="hits">2</span>
|
|
1834
|
+
|
|
1835
|
+
<code class="ruby"> obj.settings(hash || {})</code>
|
|
1836
|
+
</li>
|
|
1837
|
+
|
|
1838
|
+
<li class="covered" data-hits="2" data-linenumber="56">
|
|
1839
|
+
<span class="hits">2</span>
|
|
1840
|
+
|
|
1841
|
+
<code class="ruby"> return obj</code>
|
|
1842
|
+
</li>
|
|
1843
|
+
|
|
1844
|
+
<li class="never" data-hits="" data-linenumber="57">
|
|
1845
|
+
|
|
1846
|
+
|
|
1847
|
+
<code class="ruby"> end</code>
|
|
1848
|
+
</li>
|
|
1849
|
+
|
|
1850
|
+
<li class="never" data-hits="" data-linenumber="58">
|
|
1851
|
+
|
|
1852
|
+
|
|
1853
|
+
<code class="ruby"></code>
|
|
1854
|
+
</li>
|
|
1855
|
+
|
|
1856
|
+
<li class="covered" data-hits="1" data-linenumber="59">
|
|
1857
|
+
<span class="hits">1</span>
|
|
1858
|
+
|
|
1859
|
+
<code class="ruby"> def nil_fields(*names)</code>
|
|
1860
|
+
</li>
|
|
1861
|
+
|
|
1862
|
+
<li class="covered" data-hits="2" data-linenumber="60">
|
|
1863
|
+
<span class="hits">2</span>
|
|
1864
|
+
|
|
1865
|
+
<code class="ruby"> names.each do |name|</code>
|
|
1866
|
+
</li>
|
|
1867
|
+
|
|
1868
|
+
<li class="covered" data-hits="3" data-linenumber="61">
|
|
1869
|
+
<span class="hits">3</span>
|
|
1870
|
+
|
|
1871
|
+
<code class="ruby"> setting(name, nil)</code>
|
|
1872
|
+
</li>
|
|
1873
|
+
|
|
1874
|
+
<li class="never" data-hits="" data-linenumber="62">
|
|
1875
|
+
|
|
1876
|
+
|
|
1877
|
+
<code class="ruby"> end</code>
|
|
1878
|
+
</li>
|
|
1879
|
+
|
|
1880
|
+
<li class="never" data-hits="" data-linenumber="63">
|
|
1881
|
+
|
|
1882
|
+
|
|
1883
|
+
<code class="ruby"> end</code>
|
|
1884
|
+
</li>
|
|
1885
|
+
|
|
1886
|
+
<li class="covered" data-hits="1" data-linenumber="64">
|
|
1887
|
+
<span class="hits">1</span>
|
|
1888
|
+
|
|
1889
|
+
<code class="ruby"> alias nil_field nil_fields</code>
|
|
1890
|
+
</li>
|
|
1891
|
+
|
|
1892
|
+
<li class="never" data-hits="" data-linenumber="65">
|
|
1893
|
+
|
|
1894
|
+
|
|
1895
|
+
<code class="ruby"></code>
|
|
1896
|
+
</li>
|
|
1897
|
+
|
|
1898
|
+
<li class="covered" data-hits="1" data-linenumber="66">
|
|
1899
|
+
<span class="hits">1</span>
|
|
1900
|
+
|
|
1901
|
+
<code class="ruby"> def required_fields(*names)</code>
|
|
1902
|
+
</li>
|
|
1903
|
+
|
|
1904
|
+
<li class="covered" data-hits="2" data-linenumber="67">
|
|
1905
|
+
<span class="hits">2</span>
|
|
1906
|
+
|
|
1907
|
+
<code class="ruby"> names.each do |name|</code>
|
|
1908
|
+
</li>
|
|
1909
|
+
|
|
1910
|
+
<li class="covered" data-hits="2" data-linenumber="68">
|
|
1911
|
+
<span class="hits">2</span>
|
|
1912
|
+
|
|
1913
|
+
<code class="ruby"> setting(name)</code>
|
|
1914
|
+
</li>
|
|
1915
|
+
|
|
1916
|
+
<li class="never" data-hits="" data-linenumber="69">
|
|
1917
|
+
|
|
1918
|
+
|
|
1919
|
+
<code class="ruby"> end</code>
|
|
1920
|
+
</li>
|
|
1921
|
+
|
|
1922
|
+
<li class="never" data-hits="" data-linenumber="70">
|
|
1923
|
+
|
|
1924
|
+
|
|
1925
|
+
<code class="ruby"> end</code>
|
|
1926
|
+
</li>
|
|
1927
|
+
|
|
1928
|
+
<li class="covered" data-hits="1" data-linenumber="71">
|
|
1929
|
+
<span class="hits">1</span>
|
|
1930
|
+
|
|
1931
|
+
<code class="ruby"> alias required_field required_fields</code>
|
|
1932
|
+
</li>
|
|
1933
|
+
|
|
1934
|
+
<li class="never" data-hits="" data-linenumber="72">
|
|
1935
|
+
|
|
1936
|
+
|
|
1937
|
+
<code class="ruby"></code>
|
|
1938
|
+
</li>
|
|
1939
|
+
|
|
1940
|
+
<li class="covered" data-hits="1" data-linenumber="73">
|
|
1941
|
+
<span class="hits">1</span>
|
|
1942
|
+
|
|
1943
|
+
<code class="ruby"> def setting(name, default_value = RequiredField)</code>
|
|
1944
|
+
</li>
|
|
1945
|
+
|
|
1946
|
+
<li class="covered" data-hits="17" data-linenumber="74">
|
|
1947
|
+
<span class="hits">17</span>
|
|
1948
|
+
|
|
1949
|
+
<code class="ruby"> name = name.to_sym</code>
|
|
1950
|
+
</li>
|
|
1951
|
+
|
|
1952
|
+
<li class="covered" data-hits="17" data-linenumber="75">
|
|
1953
|
+
<span class="hits">17</span>
|
|
1954
|
+
|
|
1955
|
+
<code class="ruby"> attr_accessor(name)</code>
|
|
1956
|
+
</li>
|
|
1957
|
+
|
|
1958
|
+
<li class="covered" data-hits="17" data-linenumber="76">
|
|
1959
|
+
<span class="hits">17</span>
|
|
1960
|
+
|
|
1961
|
+
<code class="ruby"> if default_values.has_key?(name) and default_values[name] != default_value</code>
|
|
1962
|
+
</li>
|
|
1963
|
+
|
|
1964
|
+
<li class="missed" data-hits="0" data-linenumber="77">
|
|
1965
|
+
|
|
1966
|
+
|
|
1967
|
+
<code class="ruby"> warn "Changing default value of #{self.name}##{name} from #{default_values[name].inspect} to #{default_value.inspect}"</code>
|
|
1968
|
+
</li>
|
|
1969
|
+
|
|
1970
|
+
<li class="never" data-hits="" data-linenumber="78">
|
|
1971
|
+
|
|
1972
|
+
|
|
1973
|
+
<code class="ruby"> end</code>
|
|
1974
|
+
</li>
|
|
1975
|
+
|
|
1976
|
+
<li class="covered" data-hits="17" data-linenumber="79">
|
|
1977
|
+
<span class="hits">17</span>
|
|
1978
|
+
|
|
1979
|
+
<code class="ruby"> default_values[name] = default_value</code>
|
|
1980
|
+
</li>
|
|
1981
|
+
|
|
1982
|
+
<li class="never" data-hits="" data-linenumber="80">
|
|
1983
|
+
|
|
1984
|
+
|
|
1985
|
+
<code class="ruby"> end</code>
|
|
1986
|
+
</li>
|
|
1987
|
+
|
|
1988
|
+
<li class="never" data-hits="" data-linenumber="81">
|
|
1989
|
+
|
|
1990
|
+
|
|
1991
|
+
<code class="ruby"></code>
|
|
1992
|
+
</li>
|
|
1993
|
+
|
|
1994
|
+
<li class="covered" data-hits="1" data-linenumber="82">
|
|
1995
|
+
<span class="hits">1</span>
|
|
1996
|
+
|
|
1997
|
+
<code class="ruby"> def settings(hash)</code>
|
|
1998
|
+
</li>
|
|
1999
|
+
|
|
2000
|
+
<li class="covered" data-hits="1" data-linenumber="83">
|
|
2001
|
+
<span class="hits">1</span>
|
|
2002
|
+
|
|
2003
|
+
<code class="ruby"> hash.each_pair do |name, value|</code>
|
|
2004
|
+
</li>
|
|
2005
|
+
|
|
2006
|
+
<li class="covered" data-hits="2" data-linenumber="84">
|
|
2007
|
+
<span class="hits">2</span>
|
|
2008
|
+
|
|
2009
|
+
<code class="ruby"> setting(name, value)</code>
|
|
2010
|
+
</li>
|
|
2011
|
+
|
|
2012
|
+
<li class="never" data-hits="" data-linenumber="85">
|
|
2013
|
+
|
|
2014
|
+
|
|
2015
|
+
<code class="ruby"> end</code>
|
|
2016
|
+
</li>
|
|
2017
|
+
|
|
2018
|
+
<li class="covered" data-hits="1" data-linenumber="86">
|
|
2019
|
+
<span class="hits">1</span>
|
|
2020
|
+
|
|
2021
|
+
<code class="ruby"> return self</code>
|
|
2022
|
+
</li>
|
|
2023
|
+
|
|
2024
|
+
<li class="never" data-hits="" data-linenumber="87">
|
|
2025
|
+
|
|
2026
|
+
|
|
2027
|
+
<code class="ruby"> end</code>
|
|
2028
|
+
</li>
|
|
2029
|
+
|
|
2030
|
+
<li class="never" data-hits="" data-linenumber="88">
|
|
2031
|
+
|
|
2032
|
+
|
|
2033
|
+
<code class="ruby"> end</code>
|
|
2034
|
+
</li>
|
|
2035
|
+
|
|
2036
|
+
<li class="never" data-hits="" data-linenumber="89">
|
|
2037
|
+
|
|
2038
|
+
|
|
2039
|
+
<code class="ruby"></code>
|
|
2040
|
+
</li>
|
|
2041
|
+
|
|
2042
|
+
<li class="covered" data-hits="1" data-linenumber="90">
|
|
2043
|
+
<span class="hits">1</span>
|
|
2044
|
+
|
|
2045
|
+
<code class="ruby"> def self.included(mod)</code>
|
|
2046
|
+
</li>
|
|
2047
|
+
|
|
2048
|
+
<li class="covered" data-hits="3" data-linenumber="91">
|
|
2049
|
+
<span class="hits">3</span>
|
|
2050
|
+
|
|
2051
|
+
<code class="ruby"> mod.extend ClassMethods</code>
|
|
2052
|
+
</li>
|
|
2053
|
+
|
|
2054
|
+
<li class="never" data-hits="" data-linenumber="92">
|
|
2055
|
+
|
|
2056
|
+
|
|
2057
|
+
<code class="ruby"> end</code>
|
|
2058
|
+
</li>
|
|
2059
|
+
|
|
2060
|
+
<li class="never" data-hits="" data-linenumber="93">
|
|
2061
|
+
|
|
2062
|
+
|
|
2063
|
+
<code class="ruby"></code>
|
|
2064
|
+
</li>
|
|
2065
|
+
|
|
2066
|
+
<li class="covered" data-hits="1" data-linenumber="94">
|
|
2067
|
+
<span class="hits">1</span>
|
|
2068
|
+
|
|
2069
|
+
<code class="ruby"> def setup_defaults</code>
|
|
2070
|
+
</li>
|
|
2071
|
+
|
|
2072
|
+
<li class="covered" data-hits="10" data-linenumber="95">
|
|
2073
|
+
<span class="hits">10</span>
|
|
2074
|
+
|
|
2075
|
+
<code class="ruby"> self.class.set_defaults_on(self)</code>
|
|
2076
|
+
</li>
|
|
2077
|
+
|
|
2078
|
+
<li class="covered" data-hits="10" data-linenumber="96">
|
|
2079
|
+
<span class="hits">10</span>
|
|
2080
|
+
|
|
2081
|
+
<code class="ruby"> self</code>
|
|
2082
|
+
</li>
|
|
2083
|
+
|
|
2084
|
+
<li class="never" data-hits="" data-linenumber="97">
|
|
2085
|
+
|
|
2086
|
+
|
|
2087
|
+
<code class="ruby"> end</code>
|
|
2088
|
+
</li>
|
|
2089
|
+
|
|
2090
|
+
<li class="never" data-hits="" data-linenumber="98">
|
|
2091
|
+
|
|
2092
|
+
|
|
2093
|
+
<code class="ruby"></code>
|
|
2094
|
+
</li>
|
|
2095
|
+
|
|
2096
|
+
<li class="covered" data-hits="1" data-linenumber="99">
|
|
2097
|
+
<span class="hits">1</span>
|
|
2098
|
+
|
|
2099
|
+
<code class="ruby"> def check_required</code>
|
|
2100
|
+
</li>
|
|
2101
|
+
|
|
2102
|
+
<li class="covered" data-hits="9" data-linenumber="100">
|
|
2103
|
+
<span class="hits">9</span>
|
|
2104
|
+
|
|
2105
|
+
<code class="ruby"> missing = self.class.missing_required_fields_on(self)</code>
|
|
2106
|
+
</li>
|
|
2107
|
+
|
|
2108
|
+
<li class="covered" data-hits="9" data-linenumber="101">
|
|
2109
|
+
<span class="hits">9</span>
|
|
2110
|
+
|
|
2111
|
+
<code class="ruby"> unless missing.empty?</code>
|
|
2112
|
+
</li>
|
|
2113
|
+
|
|
2114
|
+
<li class="covered" data-hits="2" data-linenumber="102">
|
|
2115
|
+
<span class="hits">2</span>
|
|
2116
|
+
|
|
2117
|
+
<code class="ruby"> raise "Required field#{missing.length > 1 ? "s" : ""} #{missing.join(", ")} unset on #{self.inspect}"</code>
|
|
2118
|
+
</li>
|
|
2119
|
+
|
|
2120
|
+
<li class="never" data-hits="" data-linenumber="103">
|
|
2121
|
+
|
|
2122
|
+
|
|
2123
|
+
<code class="ruby"> end</code>
|
|
2124
|
+
</li>
|
|
2125
|
+
|
|
2126
|
+
<li class="covered" data-hits="7" data-linenumber="104">
|
|
2127
|
+
<span class="hits">7</span>
|
|
2128
|
+
|
|
2129
|
+
<code class="ruby"> self</code>
|
|
2130
|
+
</li>
|
|
2131
|
+
|
|
2132
|
+
<li class="never" data-hits="" data-linenumber="105">
|
|
2133
|
+
|
|
2134
|
+
|
|
2135
|
+
<code class="ruby"> end</code>
|
|
2136
|
+
</li>
|
|
2137
|
+
|
|
2138
|
+
<li class="never" data-hits="" data-linenumber="106">
|
|
2139
|
+
|
|
2140
|
+
|
|
2141
|
+
<code class="ruby"></code>
|
|
2142
|
+
</li>
|
|
2143
|
+
|
|
2144
|
+
<li class="covered" data-hits="1" data-linenumber="107">
|
|
2145
|
+
<span class="hits">1</span>
|
|
2146
|
+
|
|
2147
|
+
<code class="ruby"> def setting(name, default_value = nil)</code>
|
|
2148
|
+
</li>
|
|
2149
|
+
|
|
2150
|
+
<li class="covered" data-hits="3" data-linenumber="108">
|
|
2151
|
+
<span class="hits">3</span>
|
|
2152
|
+
|
|
2153
|
+
<code class="ruby"> self.class.setting(name, default_value)</code>
|
|
2154
|
+
</li>
|
|
2155
|
+
|
|
2156
|
+
<li class="covered" data-hits="3" data-linenumber="109">
|
|
2157
|
+
<span class="hits">3</span>
|
|
2158
|
+
|
|
2159
|
+
<code class="ruby"> instance_variable_set("@#{name}", default_value)</code>
|
|
2160
|
+
</li>
|
|
2161
|
+
|
|
2162
|
+
<li class="never" data-hits="" data-linenumber="110">
|
|
2163
|
+
|
|
2164
|
+
|
|
2165
|
+
<code class="ruby"> end</code>
|
|
2166
|
+
</li>
|
|
2167
|
+
|
|
2168
|
+
<li class="never" data-hits="" data-linenumber="111">
|
|
2169
|
+
|
|
2170
|
+
|
|
2171
|
+
<code class="ruby"></code>
|
|
2172
|
+
</li>
|
|
2173
|
+
|
|
2174
|
+
<li class="covered" data-hits="1" data-linenumber="112">
|
|
2175
|
+
<span class="hits">1</span>
|
|
2176
|
+
|
|
2177
|
+
<code class="ruby"> def settings(hash)</code>
|
|
2178
|
+
</li>
|
|
2179
|
+
|
|
2180
|
+
<li class="covered" data-hits="2" data-linenumber="113">
|
|
2181
|
+
<span class="hits">2</span>
|
|
2182
|
+
|
|
2183
|
+
<code class="ruby"> hash.each_pair do |name, value|</code>
|
|
2184
|
+
</li>
|
|
2185
|
+
|
|
2186
|
+
<li class="covered" data-hits="3" data-linenumber="114">
|
|
2187
|
+
<span class="hits">3</span>
|
|
2188
|
+
|
|
2189
|
+
<code class="ruby"> setting(name, value)</code>
|
|
2190
|
+
</li>
|
|
2191
|
+
|
|
2192
|
+
<li class="never" data-hits="" data-linenumber="115">
|
|
2193
|
+
|
|
2194
|
+
|
|
2195
|
+
<code class="ruby"> end</code>
|
|
2196
|
+
</li>
|
|
2197
|
+
|
|
2198
|
+
<li class="covered" data-hits="2" data-linenumber="116">
|
|
2199
|
+
<span class="hits">2</span>
|
|
2200
|
+
|
|
2201
|
+
<code class="ruby"> return self</code>
|
|
2202
|
+
</li>
|
|
2203
|
+
|
|
2204
|
+
<li class="never" data-hits="" data-linenumber="117">
|
|
2205
|
+
|
|
2206
|
+
|
|
2207
|
+
<code class="ruby"> end</code>
|
|
2208
|
+
</li>
|
|
2209
|
+
|
|
2210
|
+
<li class="never" data-hits="" data-linenumber="118">
|
|
2211
|
+
|
|
2212
|
+
|
|
2213
|
+
<code class="ruby"></code>
|
|
2214
|
+
</li>
|
|
2215
|
+
|
|
2216
|
+
<li class="covered" data-hits="1" data-linenumber="119">
|
|
2217
|
+
<span class="hits">1</span>
|
|
2218
|
+
|
|
2219
|
+
<code class="ruby"> def required_fields(*names)</code>
|
|
2220
|
+
</li>
|
|
2221
|
+
|
|
2222
|
+
<li class="covered" data-hits="1" data-linenumber="120">
|
|
2223
|
+
<span class="hits">1</span>
|
|
2224
|
+
|
|
2225
|
+
<code class="ruby"> self.class.required_fields(*names)</code>
|
|
2226
|
+
</li>
|
|
2227
|
+
|
|
2228
|
+
<li class="covered" data-hits="1" data-linenumber="121">
|
|
2229
|
+
<span class="hits">1</span>
|
|
2230
|
+
|
|
2231
|
+
<code class="ruby"> self</code>
|
|
2232
|
+
</li>
|
|
2233
|
+
|
|
2234
|
+
<li class="never" data-hits="" data-linenumber="122">
|
|
2235
|
+
|
|
2236
|
+
|
|
2237
|
+
<code class="ruby"> end</code>
|
|
2238
|
+
</li>
|
|
2239
|
+
|
|
2240
|
+
<li class="covered" data-hits="1" data-linenumber="123">
|
|
2241
|
+
<span class="hits">1</span>
|
|
2242
|
+
|
|
2243
|
+
<code class="ruby"> alias required_field required_fields</code>
|
|
2244
|
+
</li>
|
|
2245
|
+
|
|
2246
|
+
<li class="never" data-hits="" data-linenumber="124">
|
|
2247
|
+
|
|
2248
|
+
|
|
2249
|
+
<code class="ruby"></code>
|
|
2250
|
+
</li>
|
|
2251
|
+
|
|
2252
|
+
<li class="covered" data-hits="1" data-linenumber="125">
|
|
2253
|
+
<span class="hits">1</span>
|
|
2254
|
+
|
|
2255
|
+
<code class="ruby"> class Struct</code>
|
|
2256
|
+
</li>
|
|
2257
|
+
|
|
2258
|
+
<li class="covered" data-hits="1" data-linenumber="126">
|
|
2259
|
+
<span class="hits">1</span>
|
|
2260
|
+
|
|
2261
|
+
<code class="ruby"> include Configurable</code>
|
|
2262
|
+
</li>
|
|
2263
|
+
|
|
2264
|
+
<li class="never" data-hits="" data-linenumber="127">
|
|
2265
|
+
|
|
2266
|
+
|
|
2267
|
+
<code class="ruby"> end</code>
|
|
2268
|
+
</li>
|
|
2269
|
+
|
|
2270
|
+
<li class="never" data-hits="" data-linenumber="128">
|
|
2271
|
+
|
|
2272
|
+
|
|
2273
|
+
<code class="ruby"> end</code>
|
|
2274
|
+
</li>
|
|
2275
|
+
|
|
2276
|
+
<li class="never" data-hits="" data-linenumber="129">
|
|
2277
|
+
|
|
2278
|
+
|
|
2279
|
+
<code class="ruby">end</code>
|
|
2280
|
+
</li>
|
|
2281
|
+
|
|
2282
|
+
</ol>
|
|
2283
|
+
</pre>
|
|
2284
|
+
</div>
|
|
2285
|
+
|
|
2286
|
+
<div class="source_table" id="dbfbe3e96d32b3e7eea8b666117072d5da6e3e60">
|
|
2287
|
+
<div class="header">
|
|
2288
|
+
<h3>lib/mattock/remote-command-task.rb</h3>
|
|
2289
|
+
<h4><span class="yellow">88.89 %</span> covered</h4>
|
|
2290
|
+
<div>
|
|
2291
|
+
<b>18</b> relevant lines.
|
|
2292
|
+
<span class="green"><b>16</b> lines covered</span> and
|
|
2293
|
+
<span class="red"><b>2</b> lines missed.</span>
|
|
2294
|
+
</div>
|
|
2295
|
+
</div>
|
|
2296
|
+
|
|
2297
|
+
<pre>
|
|
2298
|
+
<ol>
|
|
2299
|
+
|
|
2300
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
2301
|
+
<span class="hits">1</span>
|
|
2302
|
+
|
|
2303
|
+
<code class="ruby">require 'mattock/command-task'</code>
|
|
2304
|
+
</li>
|
|
2305
|
+
|
|
2306
|
+
<li class="covered" data-hits="1" data-linenumber="2">
|
|
2307
|
+
<span class="hits">1</span>
|
|
2308
|
+
|
|
2309
|
+
<code class="ruby">module Mattock</code>
|
|
2310
|
+
</li>
|
|
2311
|
+
|
|
2312
|
+
<li class="covered" data-hits="1" data-linenumber="3">
|
|
2313
|
+
<span class="hits">1</span>
|
|
2314
|
+
|
|
2315
|
+
<code class="ruby"> class RemoteCommandTask < CommandTask</code>
|
|
2316
|
+
</li>
|
|
2317
|
+
|
|
2318
|
+
<li class="covered" data-hits="1" data-linenumber="4">
|
|
2319
|
+
<span class="hits">1</span>
|
|
2320
|
+
|
|
2321
|
+
<code class="ruby"> setting(:remote_server, nested(</code>
|
|
2322
|
+
</li>
|
|
2323
|
+
|
|
2324
|
+
<li class="never" data-hits="" data-linenumber="5">
|
|
2325
|
+
|
|
2326
|
+
|
|
2327
|
+
<code class="ruby"> :address => nil,</code>
|
|
2328
|
+
</li>
|
|
2329
|
+
|
|
2330
|
+
<li class="never" data-hits="" data-linenumber="6">
|
|
2331
|
+
|
|
2332
|
+
|
|
2333
|
+
<code class="ruby"> :user => nil</code>
|
|
2334
|
+
</li>
|
|
2335
|
+
|
|
2336
|
+
<li class="never" data-hits="" data-linenumber="7">
|
|
2337
|
+
|
|
2338
|
+
|
|
2339
|
+
<code class="ruby"> ))</code>
|
|
2340
|
+
</li>
|
|
2341
|
+
|
|
2342
|
+
<li class="covered" data-hits="1" data-linenumber="8">
|
|
2343
|
+
<span class="hits">1</span>
|
|
2344
|
+
|
|
2345
|
+
<code class="ruby"> setting(:ssh_options, [])</code>
|
|
2346
|
+
</li>
|
|
2347
|
+
|
|
2348
|
+
<li class="covered" data-hits="1" data-linenumber="9">
|
|
2349
|
+
<span class="hits">1</span>
|
|
2350
|
+
|
|
2351
|
+
<code class="ruby"> nil_fields(:id_file, :free_arguments)</code>
|
|
2352
|
+
</li>
|
|
2353
|
+
|
|
2354
|
+
<li class="never" data-hits="" data-linenumber="10">
|
|
2355
|
+
|
|
2356
|
+
|
|
2357
|
+
<code class="ruby"></code>
|
|
2358
|
+
</li>
|
|
2359
|
+
|
|
2360
|
+
<li class="covered" data-hits="1" data-linenumber="11">
|
|
2361
|
+
<span class="hits">1</span>
|
|
2362
|
+
|
|
2363
|
+
<code class="ruby"> def decorated(command_on_remote)</code>
|
|
2364
|
+
</li>
|
|
2365
|
+
|
|
2366
|
+
<li class="covered" data-hits="2" data-linenumber="12">
|
|
2367
|
+
<span class="hits">2</span>
|
|
2368
|
+
|
|
2369
|
+
<code class="ruby"> fail "Need remote server for #{self.class.name}" unless remote_server.address</code>
|
|
2370
|
+
</li>
|
|
2371
|
+
|
|
2372
|
+
<li class="never" data-hits="" data-linenumber="13">
|
|
2373
|
+
|
|
2374
|
+
|
|
2375
|
+
<code class="ruby"></code>
|
|
2376
|
+
</li>
|
|
2377
|
+
|
|
2378
|
+
<li class="covered" data-hits="2" data-linenumber="14">
|
|
2379
|
+
<span class="hits">2</span>
|
|
2380
|
+
|
|
2381
|
+
<code class="ruby"> raise "Empty remote command" if command_on_remote.nil?</code>
|
|
2382
|
+
</li>
|
|
2383
|
+
|
|
2384
|
+
<li class="covered" data-hits="2" data-linenumber="15">
|
|
2385
|
+
<span class="hits">2</span>
|
|
2386
|
+
|
|
2387
|
+
<code class="ruby"> Mattock::WrappingChain.new do |cmd|</code>
|
|
2388
|
+
</li>
|
|
2389
|
+
|
|
2390
|
+
<li class="covered" data-hits="2" data-linenumber="16">
|
|
2391
|
+
<span class="hits">2</span>
|
|
2392
|
+
|
|
2393
|
+
<code class="ruby"> cmd.add Mattock::CommandLine.new("ssh") do |cmd|</code>
|
|
2394
|
+
</li>
|
|
2395
|
+
|
|
2396
|
+
<li class="covered" data-hits="2" data-linenumber="17">
|
|
2397
|
+
<span class="hits">2</span>
|
|
2398
|
+
|
|
2399
|
+
<code class="ruby"> cmd.options << "-u #{remote_server.user}" if remote_server.user</code>
|
|
2400
|
+
</li>
|
|
2401
|
+
|
|
2402
|
+
<li class="covered" data-hits="2" data-linenumber="18">
|
|
2403
|
+
<span class="hits">2</span>
|
|
2404
|
+
|
|
2405
|
+
<code class="ruby"> cmd.options << "-i #{id_file}" if id_file</code>
|
|
2406
|
+
</li>
|
|
2407
|
+
|
|
2408
|
+
<li class="covered" data-hits="2" data-linenumber="19">
|
|
2409
|
+
<span class="hits">2</span>
|
|
2410
|
+
|
|
2411
|
+
<code class="ruby"> unless ssh_options.empty?</code>
|
|
2412
|
+
</li>
|
|
2413
|
+
|
|
2414
|
+
<li class="missed" data-hits="0" data-linenumber="20">
|
|
2415
|
+
|
|
2416
|
+
|
|
2417
|
+
<code class="ruby"> ssh_options.each do |opt|</code>
|
|
2418
|
+
</li>
|
|
2419
|
+
|
|
2420
|
+
<li class="missed" data-hits="0" data-linenumber="21">
|
|
2421
|
+
|
|
2422
|
+
|
|
2423
|
+
<code class="ruby"> cmd.options "-o #{opt}"</code>
|
|
2424
|
+
</li>
|
|
2425
|
+
|
|
2426
|
+
<li class="never" data-hits="" data-linenumber="22">
|
|
2427
|
+
|
|
2428
|
+
|
|
2429
|
+
<code class="ruby"> end</code>
|
|
2430
|
+
</li>
|
|
2431
|
+
|
|
2432
|
+
<li class="never" data-hits="" data-linenumber="23">
|
|
2433
|
+
|
|
2434
|
+
|
|
2435
|
+
<code class="ruby"> end</code>
|
|
2436
|
+
</li>
|
|
2437
|
+
|
|
2438
|
+
<li class="covered" data-hits="2" data-linenumber="24">
|
|
2439
|
+
<span class="hits">2</span>
|
|
2440
|
+
|
|
2441
|
+
<code class="ruby"> cmd.options << remote_server.address</code>
|
|
2442
|
+
</li>
|
|
2443
|
+
|
|
2444
|
+
<li class="never" data-hits="" data-linenumber="25">
|
|
2445
|
+
|
|
2446
|
+
|
|
2447
|
+
<code class="ruby"> end</code>
|
|
2448
|
+
</li>
|
|
2449
|
+
|
|
2450
|
+
<li class="covered" data-hits="2" data-linenumber="26">
|
|
2451
|
+
<span class="hits">2</span>
|
|
2452
|
+
|
|
2453
|
+
<code class="ruby"> cmd.add Mattock::ShellEscaped.new(command_on_remote)</code>
|
|
2454
|
+
</li>
|
|
2455
|
+
|
|
2456
|
+
<li class="never" data-hits="" data-linenumber="27">
|
|
2457
|
+
|
|
2458
|
+
|
|
2459
|
+
<code class="ruby"> end</code>
|
|
2460
|
+
</li>
|
|
2461
|
+
|
|
2462
|
+
<li class="never" data-hits="" data-linenumber="28">
|
|
2463
|
+
|
|
2464
|
+
|
|
2465
|
+
<code class="ruby"> end</code>
|
|
2466
|
+
</li>
|
|
2467
|
+
|
|
2468
|
+
<li class="never" data-hits="" data-linenumber="29">
|
|
2469
|
+
|
|
2470
|
+
|
|
2471
|
+
<code class="ruby"> end</code>
|
|
2472
|
+
</li>
|
|
2473
|
+
|
|
2474
|
+
<li class="never" data-hits="" data-linenumber="30">
|
|
2475
|
+
|
|
2476
|
+
|
|
2477
|
+
<code class="ruby">end</code>
|
|
2478
|
+
</li>
|
|
2479
|
+
|
|
2480
|
+
</ol>
|
|
2481
|
+
</pre>
|
|
2482
|
+
</div>
|
|
2483
|
+
|
|
2484
|
+
<div class="source_table" id="a2c73f0ba96e60116ee8696673802b6ebaddc38c">
|
|
2485
|
+
<div class="header">
|
|
2486
|
+
<h3>lib/mattock/tasklib.rb</h3>
|
|
2487
|
+
<h4><span class="green">97.5 %</span> covered</h4>
|
|
2488
|
+
<div>
|
|
2489
|
+
<b>40</b> relevant lines.
|
|
2490
|
+
<span class="green"><b>39</b> lines covered</span> and
|
|
2491
|
+
<span class="red"><b>1</b> lines missed.</span>
|
|
2492
|
+
</div>
|
|
2493
|
+
</div>
|
|
2494
|
+
|
|
2495
|
+
<pre>
|
|
2496
|
+
<ol>
|
|
2497
|
+
|
|
2498
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
2499
|
+
<span class="hits">1</span>
|
|
2500
|
+
|
|
2501
|
+
<code class="ruby">require 'ostruct'</code>
|
|
2502
|
+
</li>
|
|
2503
|
+
|
|
2504
|
+
<li class="covered" data-hits="1" data-linenumber="2">
|
|
2505
|
+
<span class="hits">1</span>
|
|
2506
|
+
|
|
2507
|
+
<code class="ruby">require 'rake/tasklib'</code>
|
|
2508
|
+
</li>
|
|
2509
|
+
|
|
2510
|
+
<li class="covered" data-hits="1" data-linenumber="3">
|
|
2511
|
+
<span class="hits">1</span>
|
|
2512
|
+
|
|
2513
|
+
<code class="ruby">require 'mattock/configurable'</code>
|
|
2514
|
+
</li>
|
|
2515
|
+
|
|
2516
|
+
<li class="never" data-hits="" data-linenumber="4">
|
|
2517
|
+
|
|
2518
|
+
|
|
2519
|
+
<code class="ruby"></code>
|
|
2520
|
+
</li>
|
|
2521
|
+
|
|
2522
|
+
<li class="covered" data-hits="1" data-linenumber="5">
|
|
2523
|
+
<span class="hits">1</span>
|
|
2524
|
+
|
|
2525
|
+
<code class="ruby">module Mattock</code>
|
|
2526
|
+
</li>
|
|
2527
|
+
|
|
2528
|
+
<li class="covered" data-hits="1" data-linenumber="6">
|
|
2529
|
+
<span class="hits">1</span>
|
|
2530
|
+
|
|
2531
|
+
<code class="ruby"> class TaskLib < Rake::TaskLib</code>
|
|
2532
|
+
</li>
|
|
2533
|
+
|
|
2534
|
+
<li class="covered" data-hits="1" data-linenumber="7">
|
|
2535
|
+
<span class="hits">1</span>
|
|
2536
|
+
|
|
2537
|
+
<code class="ruby"> include Configurable</code>
|
|
2538
|
+
</li>
|
|
2539
|
+
|
|
2540
|
+
<li class="never" data-hits="" data-linenumber="8">
|
|
2541
|
+
|
|
2542
|
+
|
|
2543
|
+
<code class="ruby"></code>
|
|
2544
|
+
</li>
|
|
2545
|
+
|
|
2546
|
+
<li class="covered" data-hits="1" data-linenumber="9">
|
|
2547
|
+
<span class="hits">1</span>
|
|
2548
|
+
|
|
2549
|
+
<code class="ruby"> attr_writer :namespace_name</code>
|
|
2550
|
+
</li>
|
|
2551
|
+
|
|
2552
|
+
<li class="covered" data-hits="1" data-linenumber="10">
|
|
2553
|
+
<span class="hits">1</span>
|
|
2554
|
+
|
|
2555
|
+
<code class="ruby"> def self.default_namespace(name)</code>
|
|
2556
|
+
</li>
|
|
2557
|
+
|
|
2558
|
+
<li class="covered" data-hits="1" data-linenumber="11">
|
|
2559
|
+
<span class="hits">1</span>
|
|
2560
|
+
|
|
2561
|
+
<code class="ruby"> setting(:namespace_name, name)</code>
|
|
2562
|
+
</li>
|
|
2563
|
+
|
|
2564
|
+
<li class="never" data-hits="" data-linenumber="12">
|
|
2565
|
+
|
|
2566
|
+
|
|
2567
|
+
<code class="ruby"> end</code>
|
|
2568
|
+
</li>
|
|
2569
|
+
|
|
2570
|
+
<li class="never" data-hits="" data-linenumber="13">
|
|
2571
|
+
|
|
2572
|
+
|
|
2573
|
+
<code class="ruby"></code>
|
|
2574
|
+
</li>
|
|
2575
|
+
|
|
2576
|
+
<li class="covered" data-hits="1" data-linenumber="14">
|
|
2577
|
+
<span class="hits">1</span>
|
|
2578
|
+
|
|
2579
|
+
<code class="ruby"> def initialize(*tasklibs)</code>
|
|
2580
|
+
</li>
|
|
2581
|
+
|
|
2582
|
+
<li class="covered" data-hits="6" data-linenumber="15">
|
|
2583
|
+
<span class="hits">6</span>
|
|
2584
|
+
|
|
2585
|
+
<code class="ruby"> @tasks = []</code>
|
|
2586
|
+
</li>
|
|
2587
|
+
|
|
2588
|
+
<li class="never" data-hits="" data-linenumber="16">
|
|
2589
|
+
|
|
2590
|
+
|
|
2591
|
+
<code class="ruby"></code>
|
|
2592
|
+
</li>
|
|
2593
|
+
|
|
2594
|
+
<li class="covered" data-hits="6" data-linenumber="17">
|
|
2595
|
+
<span class="hits">6</span>
|
|
2596
|
+
|
|
2597
|
+
<code class="ruby"> default_configuration(*tasklibs)</code>
|
|
2598
|
+
</li>
|
|
2599
|
+
|
|
2600
|
+
<li class="never" data-hits="" data-linenumber="18">
|
|
2601
|
+
|
|
2602
|
+
|
|
2603
|
+
<code class="ruby"></code>
|
|
2604
|
+
</li>
|
|
2605
|
+
|
|
2606
|
+
<li class="covered" data-hits="6" data-linenumber="19">
|
|
2607
|
+
<span class="hits">6</span>
|
|
2608
|
+
|
|
2609
|
+
<code class="ruby"> yield self if block_given?</code>
|
|
2610
|
+
</li>
|
|
2611
|
+
|
|
2612
|
+
<li class="never" data-hits="" data-linenumber="20">
|
|
2613
|
+
|
|
2614
|
+
|
|
2615
|
+
<code class="ruby"></code>
|
|
2616
|
+
</li>
|
|
2617
|
+
|
|
2618
|
+
<li class="covered" data-hits="6" data-linenumber="21">
|
|
2619
|
+
<span class="hits">6</span>
|
|
2620
|
+
|
|
2621
|
+
<code class="ruby"> resolve_configuration</code>
|
|
2622
|
+
</li>
|
|
2623
|
+
|
|
2624
|
+
<li class="never" data-hits="" data-linenumber="22">
|
|
2625
|
+
|
|
2626
|
+
|
|
2627
|
+
<code class="ruby"></code>
|
|
2628
|
+
</li>
|
|
2629
|
+
|
|
2630
|
+
<li class="covered" data-hits="6" data-linenumber="23">
|
|
2631
|
+
<span class="hits">6</span>
|
|
2632
|
+
|
|
2633
|
+
<code class="ruby"> define</code>
|
|
2634
|
+
</li>
|
|
2635
|
+
|
|
2636
|
+
<li class="never" data-hits="" data-linenumber="24">
|
|
2637
|
+
|
|
2638
|
+
|
|
2639
|
+
<code class="ruby"> end</code>
|
|
2640
|
+
</li>
|
|
2641
|
+
|
|
2642
|
+
<li class="never" data-hits="" data-linenumber="25">
|
|
2643
|
+
|
|
2644
|
+
|
|
2645
|
+
<code class="ruby"></code>
|
|
2646
|
+
</li>
|
|
2647
|
+
|
|
2648
|
+
<li class="covered" data-hits="1" data-linenumber="26">
|
|
2649
|
+
<span class="hits">1</span>
|
|
2650
|
+
|
|
2651
|
+
<code class="ruby"> attr_reader :tasks</code>
|
|
2652
|
+
</li>
|
|
2653
|
+
|
|
2654
|
+
<li class="never" data-hits="" data-linenumber="27">
|
|
2655
|
+
|
|
2656
|
+
|
|
2657
|
+
<code class="ruby"></code>
|
|
2658
|
+
</li>
|
|
2659
|
+
|
|
2660
|
+
<li class="covered" data-hits="1" data-linenumber="28">
|
|
2661
|
+
<span class="hits">1</span>
|
|
2662
|
+
|
|
2663
|
+
<code class="ruby"> def task(*args)</code>
|
|
2664
|
+
</li>
|
|
2665
|
+
|
|
2666
|
+
<li class="covered" data-hits="11" data-linenumber="29">
|
|
2667
|
+
<span class="hits">11</span>
|
|
2668
|
+
|
|
2669
|
+
<code class="ruby"> a_task = super</code>
|
|
2670
|
+
</li>
|
|
2671
|
+
|
|
2672
|
+
<li class="covered" data-hits="11" data-linenumber="30">
|
|
2673
|
+
<span class="hits">11</span>
|
|
2674
|
+
|
|
2675
|
+
<code class="ruby"> @tasks << a_task</code>
|
|
2676
|
+
</li>
|
|
2677
|
+
|
|
2678
|
+
<li class="covered" data-hits="11" data-linenumber="31">
|
|
2679
|
+
<span class="hits">11</span>
|
|
2680
|
+
|
|
2681
|
+
<code class="ruby"> return a_task</code>
|
|
2682
|
+
</li>
|
|
2683
|
+
|
|
2684
|
+
<li class="never" data-hits="" data-linenumber="32">
|
|
2685
|
+
|
|
2686
|
+
|
|
2687
|
+
<code class="ruby"> end</code>
|
|
2688
|
+
</li>
|
|
2689
|
+
|
|
2690
|
+
<li class="never" data-hits="" data-linenumber="33">
|
|
2691
|
+
|
|
2692
|
+
|
|
2693
|
+
<code class="ruby"></code>
|
|
2694
|
+
</li>
|
|
2695
|
+
|
|
2696
|
+
<li class="covered" data-hits="1" data-linenumber="34">
|
|
2697
|
+
<span class="hits">1</span>
|
|
2698
|
+
|
|
2699
|
+
<code class="ruby"> def default_configuration(*tasklibs)</code>
|
|
2700
|
+
</li>
|
|
2701
|
+
|
|
2702
|
+
<li class="covered" data-hits="6" data-linenumber="35">
|
|
2703
|
+
<span class="hits">6</span>
|
|
2704
|
+
|
|
2705
|
+
<code class="ruby"> setup_defaults</code>
|
|
2706
|
+
</li>
|
|
2707
|
+
|
|
2708
|
+
<li class="never" data-hits="" data-linenumber="36">
|
|
2709
|
+
|
|
2710
|
+
|
|
2711
|
+
<code class="ruby"> end</code>
|
|
2712
|
+
</li>
|
|
2713
|
+
|
|
2714
|
+
<li class="never" data-hits="" data-linenumber="37">
|
|
2715
|
+
|
|
2716
|
+
|
|
2717
|
+
<code class="ruby"></code>
|
|
2718
|
+
</li>
|
|
2719
|
+
|
|
2720
|
+
<li class="covered" data-hits="1" data-linenumber="38">
|
|
2721
|
+
<span class="hits">1</span>
|
|
2722
|
+
|
|
2723
|
+
<code class="ruby"> def resolve_configuration</code>
|
|
2724
|
+
</li>
|
|
2725
|
+
|
|
2726
|
+
<li class="covered" data-hits="6" data-linenumber="39">
|
|
2727
|
+
<span class="hits">6</span>
|
|
2728
|
+
|
|
2729
|
+
<code class="ruby"> check_required</code>
|
|
2730
|
+
</li>
|
|
2731
|
+
|
|
2732
|
+
<li class="never" data-hits="" data-linenumber="40">
|
|
2733
|
+
|
|
2734
|
+
|
|
2735
|
+
<code class="ruby"> end</code>
|
|
2736
|
+
</li>
|
|
2737
|
+
|
|
2738
|
+
<li class="never" data-hits="" data-linenumber="41">
|
|
2739
|
+
|
|
2740
|
+
|
|
2741
|
+
<code class="ruby"></code>
|
|
2742
|
+
</li>
|
|
2743
|
+
|
|
2744
|
+
<li class="covered" data-hits="1" data-linenumber="42">
|
|
2745
|
+
<span class="hits">1</span>
|
|
2746
|
+
|
|
2747
|
+
<code class="ruby"> def define</code>
|
|
2748
|
+
</li>
|
|
2749
|
+
|
|
2750
|
+
<li class="never" data-hits="" data-linenumber="43">
|
|
2751
|
+
|
|
2752
|
+
|
|
2753
|
+
<code class="ruby"> end</code>
|
|
2754
|
+
</li>
|
|
2755
|
+
|
|
2756
|
+
<li class="never" data-hits="" data-linenumber="44">
|
|
2757
|
+
|
|
2758
|
+
|
|
2759
|
+
<code class="ruby"></code>
|
|
2760
|
+
</li>
|
|
2761
|
+
|
|
2762
|
+
<li class="covered" data-hits="1" data-linenumber="45">
|
|
2763
|
+
<span class="hits">1</span>
|
|
2764
|
+
|
|
2765
|
+
<code class="ruby"> def in_namespace(*tasknames)</code>
|
|
2766
|
+
</li>
|
|
2767
|
+
|
|
2768
|
+
<li class="covered" data-hits="11" data-linenumber="46">
|
|
2769
|
+
<span class="hits">11</span>
|
|
2770
|
+
|
|
2771
|
+
<code class="ruby"> if tasknames.empty?</code>
|
|
2772
|
+
</li>
|
|
2773
|
+
|
|
2774
|
+
<li class="covered" data-hits="6" data-linenumber="47">
|
|
2775
|
+
<span class="hits">6</span>
|
|
2776
|
+
|
|
2777
|
+
<code class="ruby"> if block_given?</code>
|
|
2778
|
+
</li>
|
|
2779
|
+
|
|
2780
|
+
<li class="covered" data-hits="6" data-linenumber="48">
|
|
2781
|
+
<span class="hits">6</span>
|
|
2782
|
+
|
|
2783
|
+
<code class="ruby"> if @namespace_name.nil?</code>
|
|
2784
|
+
</li>
|
|
2785
|
+
|
|
2786
|
+
<li class="missed" data-hits="0" data-linenumber="49">
|
|
2787
|
+
|
|
2788
|
+
|
|
2789
|
+
<code class="ruby"> yield</code>
|
|
2790
|
+
</li>
|
|
2791
|
+
|
|
2792
|
+
<li class="never" data-hits="" data-linenumber="50">
|
|
2793
|
+
|
|
2794
|
+
|
|
2795
|
+
<code class="ruby"> else</code>
|
|
2796
|
+
</li>
|
|
2797
|
+
|
|
2798
|
+
<li class="covered" data-hits="6" data-linenumber="51">
|
|
2799
|
+
<span class="hits">6</span>
|
|
2800
|
+
|
|
2801
|
+
<code class="ruby"> namespace @namespace_name do</code>
|
|
2802
|
+
</li>
|
|
2803
|
+
|
|
2804
|
+
<li class="covered" data-hits="6" data-linenumber="52">
|
|
2805
|
+
<span class="hits">6</span>
|
|
2806
|
+
|
|
2807
|
+
<code class="ruby"> yield</code>
|
|
2808
|
+
</li>
|
|
2809
|
+
|
|
2810
|
+
<li class="never" data-hits="" data-linenumber="53">
|
|
2811
|
+
|
|
2812
|
+
|
|
2813
|
+
<code class="ruby"> end</code>
|
|
2814
|
+
</li>
|
|
2815
|
+
|
|
2816
|
+
<li class="never" data-hits="" data-linenumber="54">
|
|
2817
|
+
|
|
2818
|
+
|
|
2819
|
+
<code class="ruby"> end</code>
|
|
2820
|
+
</li>
|
|
2821
|
+
|
|
2822
|
+
<li class="never" data-hits="" data-linenumber="55">
|
|
2823
|
+
|
|
2824
|
+
|
|
2825
|
+
<code class="ruby"> end</code>
|
|
2826
|
+
</li>
|
|
2827
|
+
|
|
2828
|
+
<li class="never" data-hits="" data-linenumber="56">
|
|
2829
|
+
|
|
2830
|
+
|
|
2831
|
+
<code class="ruby"> else</code>
|
|
2832
|
+
</li>
|
|
2833
|
+
|
|
2834
|
+
<li class="covered" data-hits="5" data-linenumber="57">
|
|
2835
|
+
<span class="hits">5</span>
|
|
2836
|
+
|
|
2837
|
+
<code class="ruby"> tasknames.map do |taskname|</code>
|
|
2838
|
+
</li>
|
|
2839
|
+
|
|
2840
|
+
<li class="covered" data-hits="5" data-linenumber="58">
|
|
2841
|
+
<span class="hits">5</span>
|
|
2842
|
+
|
|
2843
|
+
<code class="ruby"> [@namespace_name, taskname].compact.join(":")</code>
|
|
2844
|
+
</li>
|
|
2845
|
+
|
|
2846
|
+
<li class="never" data-hits="" data-linenumber="59">
|
|
2847
|
+
|
|
2848
|
+
|
|
2849
|
+
<code class="ruby"> end</code>
|
|
2850
|
+
</li>
|
|
2851
|
+
|
|
2852
|
+
<li class="never" data-hits="" data-linenumber="60">
|
|
2853
|
+
|
|
2854
|
+
|
|
2855
|
+
<code class="ruby"> end</code>
|
|
2856
|
+
</li>
|
|
2857
|
+
|
|
2858
|
+
<li class="never" data-hits="" data-linenumber="61">
|
|
2859
|
+
|
|
2860
|
+
|
|
2861
|
+
<code class="ruby"> end</code>
|
|
2862
|
+
</li>
|
|
2863
|
+
|
|
2864
|
+
<li class="never" data-hits="" data-linenumber="62">
|
|
2865
|
+
|
|
2866
|
+
|
|
2867
|
+
<code class="ruby"></code>
|
|
2868
|
+
</li>
|
|
2869
|
+
|
|
2870
|
+
<li class="covered" data-hits="1" data-linenumber="63">
|
|
2871
|
+
<span class="hits">1</span>
|
|
2872
|
+
|
|
2873
|
+
<code class="ruby"> def root_task</code>
|
|
2874
|
+
</li>
|
|
2875
|
+
|
|
2876
|
+
<li class="covered" data-hits="5" data-linenumber="64">
|
|
2877
|
+
<span class="hits">5</span>
|
|
2878
|
+
|
|
2879
|
+
<code class="ruby"> @namespace_name || :default</code>
|
|
2880
|
+
</li>
|
|
2881
|
+
|
|
2882
|
+
<li class="never" data-hits="" data-linenumber="65">
|
|
2883
|
+
|
|
2884
|
+
|
|
2885
|
+
<code class="ruby"> end</code>
|
|
2886
|
+
</li>
|
|
2887
|
+
|
|
2888
|
+
<li class="never" data-hits="" data-linenumber="66">
|
|
2889
|
+
|
|
2890
|
+
|
|
2891
|
+
<code class="ruby"></code>
|
|
2892
|
+
</li>
|
|
2893
|
+
|
|
2894
|
+
<li class="covered" data-hits="1" data-linenumber="67">
|
|
2895
|
+
<span class="hits">1</span>
|
|
2896
|
+
|
|
2897
|
+
<code class="ruby"> def default_namespace</code>
|
|
2898
|
+
</li>
|
|
2899
|
+
|
|
2900
|
+
<li class="never" data-hits="" data-linenumber="68">
|
|
2901
|
+
|
|
2902
|
+
|
|
2903
|
+
<code class="ruby"> nil</code>
|
|
2904
|
+
</li>
|
|
2905
|
+
|
|
2906
|
+
<li class="never" data-hits="" data-linenumber="69">
|
|
2907
|
+
|
|
2908
|
+
|
|
2909
|
+
<code class="ruby"> end</code>
|
|
2910
|
+
</li>
|
|
2911
|
+
|
|
2912
|
+
<li class="never" data-hits="" data-linenumber="70">
|
|
2913
|
+
|
|
2914
|
+
|
|
2915
|
+
<code class="ruby"></code>
|
|
2916
|
+
</li>
|
|
2917
|
+
|
|
2918
|
+
<li class="covered" data-hits="1" data-linenumber="71">
|
|
2919
|
+
<span class="hits">1</span>
|
|
2920
|
+
|
|
2921
|
+
<code class="ruby"> def [](taskname)</code>
|
|
2922
|
+
</li>
|
|
2923
|
+
|
|
2924
|
+
<li class="covered" data-hits="5" data-linenumber="72">
|
|
2925
|
+
<span class="hits">5</span>
|
|
2926
|
+
|
|
2927
|
+
<code class="ruby"> in_namespace(taskname).first</code>
|
|
2928
|
+
</li>
|
|
2929
|
+
|
|
2930
|
+
<li class="never" data-hits="" data-linenumber="73">
|
|
2931
|
+
|
|
2932
|
+
|
|
2933
|
+
<code class="ruby"> end</code>
|
|
2934
|
+
</li>
|
|
2935
|
+
|
|
2936
|
+
<li class="never" data-hits="" data-linenumber="74">
|
|
2937
|
+
|
|
2938
|
+
|
|
2939
|
+
<code class="ruby"> end</code>
|
|
2940
|
+
</li>
|
|
2941
|
+
|
|
2942
|
+
<li class="covered" data-hits="1" data-linenumber="75">
|
|
2943
|
+
<span class="hits">1</span>
|
|
2944
|
+
|
|
2945
|
+
<code class="ruby"> Tasklib = TaskLib #Because I can never remember</code>
|
|
2946
|
+
</li>
|
|
2947
|
+
|
|
2948
|
+
<li class="never" data-hits="" data-linenumber="76">
|
|
2949
|
+
|
|
2950
|
+
|
|
2951
|
+
<code class="ruby">end</code>
|
|
2952
|
+
</li>
|
|
2953
|
+
|
|
2954
|
+
</ol>
|
|
2955
|
+
</pre>
|
|
2956
|
+
</div>
|
|
2957
|
+
|
|
2958
|
+
<div class="source_table" id="d473017bbd055a2863ae4f15284c3cc7d86dd38e">
|
|
2959
|
+
<div class="header">
|
|
2960
|
+
<h3>lib/mattock/template-host.rb</h3>
|
|
2961
|
+
<h4><span class="red">63.33 %</span> covered</h4>
|
|
2962
|
+
<div>
|
|
2963
|
+
<b>30</b> relevant lines.
|
|
2964
|
+
<span class="green"><b>19</b> lines covered</span> and
|
|
2965
|
+
<span class="red"><b>11</b> lines missed.</span>
|
|
2966
|
+
</div>
|
|
2967
|
+
</div>
|
|
2968
|
+
|
|
2969
|
+
<pre>
|
|
2970
|
+
<ol>
|
|
2971
|
+
|
|
2972
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
2973
|
+
<span class="hits">1</span>
|
|
2974
|
+
|
|
2975
|
+
<code class="ruby">require 'tilt'</code>
|
|
2976
|
+
</li>
|
|
2977
|
+
|
|
2978
|
+
<li class="covered" data-hits="1" data-linenumber="2">
|
|
2979
|
+
<span class="hits">1</span>
|
|
2980
|
+
|
|
2981
|
+
<code class="ruby">require 'valise'</code>
|
|
2982
|
+
</li>
|
|
2983
|
+
|
|
2984
|
+
<li class="never" data-hits="" data-linenumber="3">
|
|
2985
|
+
|
|
2986
|
+
|
|
2987
|
+
<code class="ruby"></code>
|
|
2988
|
+
</li>
|
|
2989
|
+
|
|
2990
|
+
<li class="covered" data-hits="1" data-linenumber="4">
|
|
2991
|
+
<span class="hits">1</span>
|
|
2992
|
+
|
|
2993
|
+
<code class="ruby">module Mattock</code>
|
|
2994
|
+
</li>
|
|
2995
|
+
|
|
2996
|
+
<li class="covered" data-hits="1" data-linenumber="5">
|
|
2997
|
+
<span class="hits">1</span>
|
|
2998
|
+
|
|
2999
|
+
<code class="ruby"> module ValiseManager</code>
|
|
3000
|
+
</li>
|
|
3001
|
+
|
|
3002
|
+
<li class="covered" data-hits="1" data-linenumber="6">
|
|
3003
|
+
<span class="hits">1</span>
|
|
3004
|
+
|
|
3005
|
+
<code class="ruby"> def default_valise(*dirs)</code>
|
|
3006
|
+
</li>
|
|
3007
|
+
|
|
3008
|
+
<li class="covered" data-hits="1" data-linenumber="7">
|
|
3009
|
+
<span class="hits">1</span>
|
|
3010
|
+
|
|
3011
|
+
<code class="ruby"> Valise::Set.define do</code>
|
|
3012
|
+
</li>
|
|
3013
|
+
|
|
3014
|
+
<li class="covered" data-hits="1" data-linenumber="8">
|
|
3015
|
+
<span class="hits">1</span>
|
|
3016
|
+
|
|
3017
|
+
<code class="ruby"> dirs.each do |dir|</code>
|
|
3018
|
+
</li>
|
|
3019
|
+
|
|
3020
|
+
<li class="covered" data-hits="1" data-linenumber="9">
|
|
3021
|
+
<span class="hits">1</span>
|
|
3022
|
+
|
|
3023
|
+
<code class="ruby"> ro dir</code>
|
|
3024
|
+
</li>
|
|
3025
|
+
|
|
3026
|
+
<li class="never" data-hits="" data-linenumber="10">
|
|
3027
|
+
|
|
3028
|
+
|
|
3029
|
+
<code class="ruby"> end</code>
|
|
3030
|
+
</li>
|
|
3031
|
+
|
|
3032
|
+
<li class="never" data-hits="" data-linenumber="11">
|
|
3033
|
+
|
|
3034
|
+
|
|
3035
|
+
<code class="ruby"> end</code>
|
|
3036
|
+
</li>
|
|
3037
|
+
|
|
3038
|
+
<li class="never" data-hits="" data-linenumber="12">
|
|
3039
|
+
|
|
3040
|
+
|
|
3041
|
+
<code class="ruby"> end</code>
|
|
3042
|
+
</li>
|
|
3043
|
+
|
|
3044
|
+
<li class="never" data-hits="" data-linenumber="13">
|
|
3045
|
+
|
|
3046
|
+
|
|
3047
|
+
<code class="ruby"></code>
|
|
3048
|
+
</li>
|
|
3049
|
+
|
|
3050
|
+
<li class="covered" data-hits="1" data-linenumber="14">
|
|
3051
|
+
<span class="hits">1</span>
|
|
3052
|
+
|
|
3053
|
+
<code class="ruby"> def rel_dir(base_path = nil, up_to = nil)</code>
|
|
3054
|
+
</li>
|
|
3055
|
+
|
|
3056
|
+
<li class="missed" data-hits="0" data-linenumber="15">
|
|
3057
|
+
|
|
3058
|
+
|
|
3059
|
+
<code class="ruby"> base_path ||= /(.*):\d+/.match(caller[0])[1]</code>
|
|
3060
|
+
</li>
|
|
3061
|
+
|
|
3062
|
+
<li class="missed" data-hits="0" data-linenumber="16">
|
|
3063
|
+
|
|
3064
|
+
|
|
3065
|
+
<code class="ruby"> up_to ||= "lib"</code>
|
|
3066
|
+
</li>
|
|
3067
|
+
|
|
3068
|
+
<li class="never" data-hits="" data-linenumber="17">
|
|
3069
|
+
|
|
3070
|
+
|
|
3071
|
+
<code class="ruby"></code>
|
|
3072
|
+
</li>
|
|
3073
|
+
|
|
3074
|
+
<li class="missed" data-hits="0" data-linenumber="18">
|
|
3075
|
+
|
|
3076
|
+
|
|
3077
|
+
<code class="ruby"> abs_path = File::expand_path(base_path)</code>
|
|
3078
|
+
</li>
|
|
3079
|
+
|
|
3080
|
+
<li class="missed" data-hits="0" data-linenumber="19">
|
|
3081
|
+
|
|
3082
|
+
|
|
3083
|
+
<code class="ruby"> base_path = abs_path.split(File::Separator)</code>
|
|
3084
|
+
</li>
|
|
3085
|
+
|
|
3086
|
+
<li class="missed" data-hits="0" data-linenumber="20">
|
|
3087
|
+
|
|
3088
|
+
|
|
3089
|
+
<code class="ruby"> until base_path.empty?</code>
|
|
3090
|
+
</li>
|
|
3091
|
+
|
|
3092
|
+
<li class="missed" data-hits="0" data-linenumber="21">
|
|
3093
|
+
|
|
3094
|
+
|
|
3095
|
+
<code class="ruby"> unless base_path.last == up_to</code>
|
|
3096
|
+
</li>
|
|
3097
|
+
|
|
3098
|
+
<li class="missed" data-hits="0" data-linenumber="22">
|
|
3099
|
+
|
|
3100
|
+
|
|
3101
|
+
<code class="ruby"> base_path.pop</code>
|
|
3102
|
+
</li>
|
|
3103
|
+
|
|
3104
|
+
<li class="never" data-hits="" data-linenumber="23">
|
|
3105
|
+
|
|
3106
|
+
|
|
3107
|
+
<code class="ruby"> else</code>
|
|
3108
|
+
</li>
|
|
3109
|
+
|
|
3110
|
+
<li class="missed" data-hits="0" data-linenumber="24">
|
|
3111
|
+
|
|
3112
|
+
|
|
3113
|
+
<code class="ruby"> break</code>
|
|
3114
|
+
</li>
|
|
3115
|
+
|
|
3116
|
+
<li class="never" data-hits="" data-linenumber="25">
|
|
3117
|
+
|
|
3118
|
+
|
|
3119
|
+
<code class="ruby"> end</code>
|
|
3120
|
+
</li>
|
|
3121
|
+
|
|
3122
|
+
<li class="never" data-hits="" data-linenumber="26">
|
|
3123
|
+
|
|
3124
|
+
|
|
3125
|
+
<code class="ruby"> end</code>
|
|
3126
|
+
</li>
|
|
3127
|
+
|
|
3128
|
+
<li class="never" data-hits="" data-linenumber="27">
|
|
3129
|
+
|
|
3130
|
+
|
|
3131
|
+
<code class="ruby"></code>
|
|
3132
|
+
</li>
|
|
3133
|
+
|
|
3134
|
+
<li class="missed" data-hits="0" data-linenumber="28">
|
|
3135
|
+
|
|
3136
|
+
|
|
3137
|
+
<code class="ruby"> if base_path.empty?</code>
|
|
3138
|
+
</li>
|
|
3139
|
+
|
|
3140
|
+
<li class="missed" data-hits="0" data-linenumber="29">
|
|
3141
|
+
|
|
3142
|
+
|
|
3143
|
+
<code class="ruby"> raise "Relative root #{up_to} not found in #{abs_path}"</code>
|
|
3144
|
+
</li>
|
|
3145
|
+
|
|
3146
|
+
<li class="never" data-hits="" data-linenumber="30">
|
|
3147
|
+
|
|
3148
|
+
|
|
3149
|
+
<code class="ruby"> end</code>
|
|
3150
|
+
</li>
|
|
3151
|
+
|
|
3152
|
+
<li class="never" data-hits="" data-linenumber="31">
|
|
3153
|
+
|
|
3154
|
+
|
|
3155
|
+
<code class="ruby"></code>
|
|
3156
|
+
</li>
|
|
3157
|
+
|
|
3158
|
+
<li class="missed" data-hits="0" data-linenumber="32">
|
|
3159
|
+
|
|
3160
|
+
|
|
3161
|
+
<code class="ruby"> return base_path</code>
|
|
3162
|
+
</li>
|
|
3163
|
+
|
|
3164
|
+
<li class="never" data-hits="" data-linenumber="33">
|
|
3165
|
+
|
|
3166
|
+
|
|
3167
|
+
<code class="ruby"> end</code>
|
|
3168
|
+
</li>
|
|
3169
|
+
|
|
3170
|
+
<li class="covered" data-hits="1" data-linenumber="34">
|
|
3171
|
+
<span class="hits">1</span>
|
|
3172
|
+
|
|
3173
|
+
<code class="ruby"> module_function :rel_dir, :default_valise</code>
|
|
3174
|
+
</li>
|
|
3175
|
+
|
|
3176
|
+
<li class="never" data-hits="" data-linenumber="35">
|
|
3177
|
+
|
|
3178
|
+
|
|
3179
|
+
<code class="ruby"> end</code>
|
|
3180
|
+
</li>
|
|
3181
|
+
|
|
3182
|
+
<li class="never" data-hits="" data-linenumber="36">
|
|
3183
|
+
|
|
3184
|
+
|
|
3185
|
+
<code class="ruby"></code>
|
|
3186
|
+
</li>
|
|
3187
|
+
|
|
3188
|
+
<li class="covered" data-hits="1" data-linenumber="37">
|
|
3189
|
+
<span class="hits">1</span>
|
|
3190
|
+
|
|
3191
|
+
<code class="ruby"> module TemplateHost</code>
|
|
3192
|
+
</li>
|
|
3193
|
+
|
|
3194
|
+
<li class="covered" data-hits="1" data-linenumber="38">
|
|
3195
|
+
<span class="hits">1</span>
|
|
3196
|
+
|
|
3197
|
+
<code class="ruby"> def self.template_cache</code>
|
|
3198
|
+
</li>
|
|
3199
|
+
|
|
3200
|
+
<li class="covered" data-hits="1" data-linenumber="39">
|
|
3201
|
+
<span class="hits">1</span>
|
|
3202
|
+
|
|
3203
|
+
<code class="ruby"> @template_cache ||= Tilt::Cache.new</code>
|
|
3204
|
+
</li>
|
|
3205
|
+
|
|
3206
|
+
<li class="never" data-hits="" data-linenumber="40">
|
|
3207
|
+
|
|
3208
|
+
|
|
3209
|
+
<code class="ruby"> end</code>
|
|
3210
|
+
</li>
|
|
3211
|
+
|
|
3212
|
+
<li class="never" data-hits="" data-linenumber="41">
|
|
3213
|
+
|
|
3214
|
+
|
|
3215
|
+
<code class="ruby"></code>
|
|
3216
|
+
</li>
|
|
3217
|
+
|
|
3218
|
+
<li class="covered" data-hits="1" data-linenumber="42">
|
|
3219
|
+
<span class="hits">1</span>
|
|
3220
|
+
|
|
3221
|
+
<code class="ruby"> attr_accessor :valise</code>
|
|
3222
|
+
</li>
|
|
3223
|
+
|
|
3224
|
+
<li class="never" data-hits="" data-linenumber="43">
|
|
3225
|
+
|
|
3226
|
+
|
|
3227
|
+
<code class="ruby"></code>
|
|
3228
|
+
</li>
|
|
3229
|
+
|
|
3230
|
+
<li class="covered" data-hits="1" data-linenumber="44">
|
|
3231
|
+
<span class="hits">1</span>
|
|
3232
|
+
|
|
3233
|
+
<code class="ruby"> def render(path, locals=nil)</code>
|
|
3234
|
+
</li>
|
|
3235
|
+
|
|
3236
|
+
<li class="covered" data-hits="1" data-linenumber="45">
|
|
3237
|
+
<span class="hits">1</span>
|
|
3238
|
+
|
|
3239
|
+
<code class="ruby"> template = TemplateHost::template_cache.fetch(path) do</code>
|
|
3240
|
+
</li>
|
|
3241
|
+
|
|
3242
|
+
<li class="covered" data-hits="1" data-linenumber="46">
|
|
3243
|
+
<span class="hits">1</span>
|
|
3244
|
+
|
|
3245
|
+
<code class="ruby"> Tilt.new(path) do |tmpl|</code>
|
|
3246
|
+
</li>
|
|
3247
|
+
|
|
3248
|
+
<li class="covered" data-hits="1" data-linenumber="47">
|
|
3249
|
+
<span class="hits">1</span>
|
|
3250
|
+
|
|
3251
|
+
<code class="ruby"> valise.find(["templates"] + valise.unpath(tmpl.file)).contents</code>
|
|
3252
|
+
</li>
|
|
3253
|
+
|
|
3254
|
+
<li class="never" data-hits="" data-linenumber="48">
|
|
3255
|
+
|
|
3256
|
+
|
|
3257
|
+
<code class="ruby"> end</code>
|
|
3258
|
+
</li>
|
|
3259
|
+
|
|
3260
|
+
<li class="never" data-hits="" data-linenumber="49">
|
|
3261
|
+
|
|
3262
|
+
|
|
3263
|
+
<code class="ruby"> end</code>
|
|
3264
|
+
</li>
|
|
3265
|
+
|
|
3266
|
+
<li class="never" data-hits="" data-linenumber="50">
|
|
3267
|
+
|
|
3268
|
+
|
|
3269
|
+
<code class="ruby"></code>
|
|
3270
|
+
</li>
|
|
3271
|
+
|
|
3272
|
+
<li class="covered" data-hits="1" data-linenumber="51">
|
|
3273
|
+
<span class="hits">1</span>
|
|
3274
|
+
|
|
3275
|
+
<code class="ruby"> template.render(self, locals)</code>
|
|
3276
|
+
</li>
|
|
3277
|
+
|
|
3278
|
+
<li class="never" data-hits="" data-linenumber="52">
|
|
3279
|
+
|
|
3280
|
+
|
|
3281
|
+
<code class="ruby"> end</code>
|
|
3282
|
+
</li>
|
|
3283
|
+
|
|
3284
|
+
<li class="never" data-hits="" data-linenumber="53">
|
|
3285
|
+
|
|
3286
|
+
|
|
3287
|
+
<code class="ruby"> end</code>
|
|
3288
|
+
</li>
|
|
3289
|
+
|
|
3290
|
+
<li class="never" data-hits="" data-linenumber="54">
|
|
3291
|
+
|
|
3292
|
+
|
|
3293
|
+
<code class="ruby">end</code>
|
|
3294
|
+
</li>
|
|
3295
|
+
|
|
3296
|
+
</ol>
|
|
3297
|
+
</pre>
|
|
3298
|
+
</div>
|
|
3299
|
+
|
|
3300
|
+
<div class="source_table" id="d05b479afa4321ddf827a6b5af14020183ee07b9">
|
|
3301
|
+
<div class="header">
|
|
3302
|
+
<h3>lib/mattock/testing/mock-command-line.rb</h3>
|
|
3303
|
+
<h4><span class="green">92.86 %</span> covered</h4>
|
|
3304
|
+
<div>
|
|
3305
|
+
<b>14</b> relevant lines.
|
|
3306
|
+
<span class="green"><b>13</b> lines covered</span> and
|
|
3307
|
+
<span class="red"><b>1</b> lines missed.</span>
|
|
3308
|
+
</div>
|
|
3309
|
+
</div>
|
|
3310
|
+
|
|
3311
|
+
<pre>
|
|
3312
|
+
<ol>
|
|
3313
|
+
|
|
3314
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
3315
|
+
<span class="hits">1</span>
|
|
3316
|
+
|
|
3317
|
+
<code class="ruby">require 'mattock/command-line'</code>
|
|
3318
|
+
</li>
|
|
3319
|
+
|
|
3320
|
+
<li class="never" data-hits="" data-linenumber="2">
|
|
3321
|
+
|
|
3322
|
+
|
|
3323
|
+
<code class="ruby"></code>
|
|
3324
|
+
</li>
|
|
3325
|
+
|
|
3326
|
+
<li class="covered" data-hits="1" data-linenumber="3">
|
|
3327
|
+
<span class="hits">1</span>
|
|
3328
|
+
|
|
3329
|
+
<code class="ruby">module Mattock</code>
|
|
3330
|
+
</li>
|
|
3331
|
+
|
|
3332
|
+
<li class="covered" data-hits="1" data-linenumber="4">
|
|
3333
|
+
<span class="hits">1</span>
|
|
3334
|
+
|
|
3335
|
+
<code class="ruby"> class MockCommandResult < CommandRunResult</code>
|
|
3336
|
+
</li>
|
|
3337
|
+
|
|
3338
|
+
<li class="covered" data-hits="1" data-linenumber="5">
|
|
3339
|
+
<span class="hits">1</span>
|
|
3340
|
+
|
|
3341
|
+
<code class="ruby"> def self.create(*args)</code>
|
|
3342
|
+
</li>
|
|
3343
|
+
|
|
3344
|
+
<li class="covered" data-hits="2" data-linenumber="6">
|
|
3345
|
+
<span class="hits">2</span>
|
|
3346
|
+
|
|
3347
|
+
<code class="ruby"> if args.length == 1</code>
|
|
3348
|
+
</li>
|
|
3349
|
+
|
|
3350
|
+
<li class="covered" data-hits="2" data-linenumber="7">
|
|
3351
|
+
<span class="hits">2</span>
|
|
3352
|
+
|
|
3353
|
+
<code class="ruby"> args = [args[0], {1 => ""}]</code>
|
|
3354
|
+
</li>
|
|
3355
|
+
|
|
3356
|
+
<li class="never" data-hits="" data-linenumber="8">
|
|
3357
|
+
|
|
3358
|
+
|
|
3359
|
+
<code class="ruby"> end</code>
|
|
3360
|
+
</li>
|
|
3361
|
+
|
|
3362
|
+
<li class="never" data-hits="" data-linenumber="9">
|
|
3363
|
+
|
|
3364
|
+
|
|
3365
|
+
<code class="ruby"></code>
|
|
3366
|
+
</li>
|
|
3367
|
+
|
|
3368
|
+
<li class="covered" data-hits="2" data-linenumber="10">
|
|
3369
|
+
<span class="hits">2</span>
|
|
3370
|
+
|
|
3371
|
+
<code class="ruby"> if String == args[1]</code>
|
|
3372
|
+
</li>
|
|
3373
|
+
|
|
3374
|
+
<li class="missed" data-hits="0" data-linenumber="11">
|
|
3375
|
+
|
|
3376
|
+
|
|
3377
|
+
<code class="ruby"> args[1] = {1 => args[1]}</code>
|
|
3378
|
+
</li>
|
|
3379
|
+
|
|
3380
|
+
<li class="never" data-hits="" data-linenumber="12">
|
|
3381
|
+
|
|
3382
|
+
|
|
3383
|
+
<code class="ruby"> end</code>
|
|
3384
|
+
</li>
|
|
3385
|
+
|
|
3386
|
+
<li class="never" data-hits="" data-linenumber="13">
|
|
3387
|
+
|
|
3388
|
+
|
|
3389
|
+
<code class="ruby"></code>
|
|
3390
|
+
</li>
|
|
3391
|
+
|
|
3392
|
+
<li class="covered" data-hits="2" data-linenumber="14">
|
|
3393
|
+
<span class="hits">2</span>
|
|
3394
|
+
|
|
3395
|
+
<code class="ruby"> return self.new(*args)</code>
|
|
3396
|
+
</li>
|
|
3397
|
+
|
|
3398
|
+
<li class="never" data-hits="" data-linenumber="15">
|
|
3399
|
+
|
|
3400
|
+
|
|
3401
|
+
<code class="ruby"> end</code>
|
|
3402
|
+
</li>
|
|
3403
|
+
|
|
3404
|
+
<li class="never" data-hits="" data-linenumber="16">
|
|
3405
|
+
|
|
3406
|
+
|
|
3407
|
+
<code class="ruby"></code>
|
|
3408
|
+
</li>
|
|
3409
|
+
|
|
3410
|
+
<li class="covered" data-hits="1" data-linenumber="17">
|
|
3411
|
+
<span class="hits">1</span>
|
|
3412
|
+
|
|
3413
|
+
<code class="ruby"> def initialize(code, streams)</code>
|
|
3414
|
+
</li>
|
|
3415
|
+
|
|
3416
|
+
<li class="covered" data-hits="2" data-linenumber="18">
|
|
3417
|
+
<span class="hits">2</span>
|
|
3418
|
+
|
|
3419
|
+
<code class="ruby"> @streams = streams</code>
|
|
3420
|
+
</li>
|
|
3421
|
+
|
|
3422
|
+
<li class="covered" data-hits="2" data-linenumber="19">
|
|
3423
|
+
<span class="hits">2</span>
|
|
3424
|
+
|
|
3425
|
+
<code class="ruby"> @exit_code = code</code>
|
|
3426
|
+
</li>
|
|
3427
|
+
|
|
3428
|
+
<li class="never" data-hits="" data-linenumber="20">
|
|
3429
|
+
|
|
3430
|
+
|
|
3431
|
+
<code class="ruby"> end</code>
|
|
3432
|
+
</li>
|
|
3433
|
+
|
|
3434
|
+
<li class="never" data-hits="" data-linenumber="21">
|
|
3435
|
+
|
|
3436
|
+
|
|
3437
|
+
<code class="ruby"></code>
|
|
3438
|
+
</li>
|
|
3439
|
+
|
|
3440
|
+
<li class="covered" data-hits="1" data-linenumber="22">
|
|
3441
|
+
<span class="hits">1</span>
|
|
3442
|
+
|
|
3443
|
+
<code class="ruby"> attr_reader :exit_code, :streams</code>
|
|
3444
|
+
</li>
|
|
3445
|
+
|
|
3446
|
+
<li class="never" data-hits="" data-linenumber="23">
|
|
3447
|
+
|
|
3448
|
+
|
|
3449
|
+
<code class="ruby"></code>
|
|
3450
|
+
</li>
|
|
3451
|
+
|
|
3452
|
+
<li class="covered" data-hits="1" data-linenumber="24">
|
|
3453
|
+
<span class="hits">1</span>
|
|
3454
|
+
|
|
3455
|
+
<code class="ruby"> alias exit_status exit_code</code>
|
|
3456
|
+
</li>
|
|
3457
|
+
|
|
3458
|
+
<li class="never" data-hits="" data-linenumber="25">
|
|
3459
|
+
|
|
3460
|
+
|
|
3461
|
+
<code class="ruby"> end</code>
|
|
3462
|
+
</li>
|
|
3463
|
+
|
|
3464
|
+
<li class="never" data-hits="" data-linenumber="26">
|
|
3465
|
+
|
|
3466
|
+
|
|
3467
|
+
<code class="ruby">end</code>
|
|
3468
|
+
</li>
|
|
3469
|
+
|
|
3470
|
+
</ol>
|
|
3471
|
+
</pre>
|
|
3472
|
+
</div>
|
|
3473
|
+
|
|
3474
|
+
<div class="source_table" id="ba419266ded63c6767eeb8c594191949ebb1b061">
|
|
3475
|
+
<div class="header">
|
|
3476
|
+
<h3>lib/mattock/testing/rake-example-group.rb</h3>
|
|
3477
|
+
<h4><span class="green">100.0 %</span> covered</h4>
|
|
3478
|
+
<div>
|
|
3479
|
+
<b>44</b> relevant lines.
|
|
3480
|
+
<span class="green"><b>44</b> lines covered</span> and
|
|
3481
|
+
<span class="red"><b>0</b> lines missed.</span>
|
|
3482
|
+
</div>
|
|
3483
|
+
</div>
|
|
3484
|
+
|
|
3485
|
+
<pre>
|
|
3486
|
+
<ol>
|
|
3487
|
+
|
|
3488
|
+
<li class="covered" data-hits="1" data-linenumber="1">
|
|
3489
|
+
<span class="hits">1</span>
|
|
3490
|
+
|
|
3491
|
+
<code class="ruby">require 'rake'</code>
|
|
3492
|
+
</li>
|
|
3493
|
+
|
|
3494
|
+
<li class="never" data-hits="" data-linenumber="2">
|
|
3495
|
+
|
|
3496
|
+
|
|
3497
|
+
<code class="ruby"></code>
|
|
3498
|
+
</li>
|
|
3499
|
+
|
|
3500
|
+
<li class="covered" data-hits="1" data-linenumber="3">
|
|
3501
|
+
<span class="hits">1</span>
|
|
3502
|
+
|
|
3503
|
+
<code class="ruby">module Mattock</code>
|
|
3504
|
+
</li>
|
|
3505
|
+
|
|
3506
|
+
<li class="covered" data-hits="1" data-linenumber="4">
|
|
3507
|
+
<span class="hits">1</span>
|
|
3508
|
+
|
|
3509
|
+
<code class="ruby"> module RakeExampleGroup</code>
|
|
3510
|
+
</li>
|
|
3511
|
+
|
|
3512
|
+
<li class="covered" data-hits="1" data-linenumber="5">
|
|
3513
|
+
<span class="hits">1</span>
|
|
3514
|
+
|
|
3515
|
+
<code class="ruby"> SavedEnvironmentVariables = %w{APPDATA HOME HOMEDRIVE HOMEPATH RAKE_COLUMNS RAKE_SYSTEM RAKEOPT USERPROFILE}</code>
|
|
3516
|
+
</li>
|
|
3517
|
+
|
|
3518
|
+
<li class="covered" data-hits="1" data-linenumber="6">
|
|
3519
|
+
<span class="hits">1</span>
|
|
3520
|
+
|
|
3521
|
+
<code class="ruby"> DeletedEnvironmentVariables = %w{RAKE_COLUMNS RAKE_SYSTEM RAKEOPT}</code>
|
|
3522
|
+
</li>
|
|
3523
|
+
|
|
3524
|
+
<li class="covered" data-hits="1" data-linenumber="7">
|
|
3525
|
+
<span class="hits">1</span>
|
|
3526
|
+
|
|
3527
|
+
<code class="ruby"> include Rake::DSL</code>
|
|
3528
|
+
</li>
|
|
3529
|
+
|
|
3530
|
+
<li class="never" data-hits="" data-linenumber="8">
|
|
3531
|
+
|
|
3532
|
+
|
|
3533
|
+
<code class="ruby"> #include FileUtils</code>
|
|
3534
|
+
</li>
|
|
3535
|
+
|
|
3536
|
+
<li class="never" data-hits="" data-linenumber="9">
|
|
3537
|
+
|
|
3538
|
+
|
|
3539
|
+
<code class="ruby"></code>
|
|
3540
|
+
</li>
|
|
3541
|
+
|
|
3542
|
+
<li class="covered" data-hits="1" data-linenumber="10">
|
|
3543
|
+
<span class="hits">1</span>
|
|
3544
|
+
|
|
3545
|
+
<code class="ruby"> class TaskManager</code>
|
|
3546
|
+
</li>
|
|
3547
|
+
|
|
3548
|
+
<li class="covered" data-hits="1" data-linenumber="11">
|
|
3549
|
+
<span class="hits">1</span>
|
|
3550
|
+
|
|
3551
|
+
<code class="ruby"> include Rake::TaskManager</code>
|
|
3552
|
+
</li>
|
|
3553
|
+
|
|
3554
|
+
<li class="never" data-hits="" data-linenumber="12">
|
|
3555
|
+
|
|
3556
|
+
|
|
3557
|
+
<code class="ruby"> end</code>
|
|
3558
|
+
</li>
|
|
3559
|
+
|
|
3560
|
+
<li class="never" data-hits="" data-linenumber="13">
|
|
3561
|
+
|
|
3562
|
+
|
|
3563
|
+
<code class="ruby"></code>
|
|
3564
|
+
</li>
|
|
3565
|
+
|
|
3566
|
+
<li class="covered" data-hits="1" data-linenumber="14">
|
|
3567
|
+
<span class="hits">1</span>
|
|
3568
|
+
|
|
3569
|
+
<code class="ruby"> def self.included(mod)</code>
|
|
3570
|
+
</li>
|
|
3571
|
+
|
|
3572
|
+
<li class="covered" data-hits="2" data-linenumber="15">
|
|
3573
|
+
<span class="hits">2</span>
|
|
3574
|
+
|
|
3575
|
+
<code class="ruby"> mod.class_eval do</code>
|
|
3576
|
+
</li>
|
|
3577
|
+
|
|
3578
|
+
<li class="covered" data-hits="2" data-linenumber="16">
|
|
3579
|
+
<span class="hits">2</span>
|
|
3580
|
+
|
|
3581
|
+
<code class="ruby"> let! :rake do</code>
|
|
3582
|
+
</li>
|
|
3583
|
+
|
|
3584
|
+
<li class="covered" data-hits="6" data-linenumber="17">
|
|
3585
|
+
<span class="hits">6</span>
|
|
3586
|
+
|
|
3587
|
+
<code class="ruby"> Rake.application = Rake::Application.new</code>
|
|
3588
|
+
</li>
|
|
3589
|
+
|
|
3590
|
+
<li class="covered" data-hits="6" data-linenumber="18">
|
|
3591
|
+
<span class="hits">6</span>
|
|
3592
|
+
|
|
3593
|
+
<code class="ruby"> Rake::TaskManager.record_task_metadata = true</code>
|
|
3594
|
+
</li>
|
|
3595
|
+
|
|
3596
|
+
<li class="covered" data-hits="6" data-linenumber="19">
|
|
3597
|
+
<span class="hits">6</span>
|
|
3598
|
+
|
|
3599
|
+
<code class="ruby"> RakeFileUtils.verbose_flag = false</code>
|
|
3600
|
+
</li>
|
|
3601
|
+
|
|
3602
|
+
<li class="covered" data-hits="6" data-linenumber="20">
|
|
3603
|
+
<span class="hits">6</span>
|
|
3604
|
+
|
|
3605
|
+
<code class="ruby"> Rake.application</code>
|
|
3606
|
+
</li>
|
|
3607
|
+
|
|
3608
|
+
<li class="never" data-hits="" data-linenumber="21">
|
|
3609
|
+
|
|
3610
|
+
|
|
3611
|
+
<code class="ruby"> end</code>
|
|
3612
|
+
</li>
|
|
3613
|
+
|
|
3614
|
+
<li class="never" data-hits="" data-linenumber="22">
|
|
3615
|
+
|
|
3616
|
+
|
|
3617
|
+
<code class="ruby"></code>
|
|
3618
|
+
</li>
|
|
3619
|
+
|
|
3620
|
+
<li class="covered" data-hits="2" data-linenumber="23">
|
|
3621
|
+
<span class="hits">2</span>
|
|
3622
|
+
|
|
3623
|
+
<code class="ruby"> before :each do</code>
|
|
3624
|
+
</li>
|
|
3625
|
+
|
|
3626
|
+
<li class="covered" data-hits="6" data-linenumber="24">
|
|
3627
|
+
<span class="hits">6</span>
|
|
3628
|
+
|
|
3629
|
+
<code class="ruby"> ARGV.clear</code>
|
|
3630
|
+
</li>
|
|
3631
|
+
|
|
3632
|
+
<li class="never" data-hits="" data-linenumber="25">
|
|
3633
|
+
|
|
3634
|
+
|
|
3635
|
+
<code class="ruby"></code>
|
|
3636
|
+
</li>
|
|
3637
|
+
|
|
3638
|
+
<li class="covered" data-hits="6" data-linenumber="26">
|
|
3639
|
+
<span class="hits">6</span>
|
|
3640
|
+
|
|
3641
|
+
<code class="ruby"> @original_ENV = {}</code>
|
|
3642
|
+
</li>
|
|
3643
|
+
|
|
3644
|
+
<li class="covered" data-hits="6" data-linenumber="27">
|
|
3645
|
+
<span class="hits">6</span>
|
|
3646
|
+
|
|
3647
|
+
<code class="ruby"> SavedEnvironmentVariables.each do |var|</code>
|
|
3648
|
+
</li>
|
|
3649
|
+
|
|
3650
|
+
<li class="covered" data-hits="48" data-linenumber="28">
|
|
3651
|
+
<span class="hits">48</span>
|
|
3652
|
+
|
|
3653
|
+
<code class="ruby"> @original_ENV[var] = ENV[var]</code>
|
|
3654
|
+
</li>
|
|
3655
|
+
|
|
3656
|
+
<li class="never" data-hits="" data-linenumber="29">
|
|
3657
|
+
|
|
3658
|
+
|
|
3659
|
+
<code class="ruby"> end</code>
|
|
3660
|
+
</li>
|
|
3661
|
+
|
|
3662
|
+
<li class="covered" data-hits="6" data-linenumber="30">
|
|
3663
|
+
<span class="hits">6</span>
|
|
3664
|
+
|
|
3665
|
+
<code class="ruby"> DeletedEnvironmentVariables.each do |var|</code>
|
|
3666
|
+
</li>
|
|
3667
|
+
|
|
3668
|
+
<li class="covered" data-hits="18" data-linenumber="31">
|
|
3669
|
+
<span class="hits">18</span>
|
|
3670
|
+
|
|
3671
|
+
<code class="ruby"> ENV.delete(var)</code>
|
|
3672
|
+
</li>
|
|
3673
|
+
|
|
3674
|
+
<li class="never" data-hits="" data-linenumber="32">
|
|
3675
|
+
|
|
3676
|
+
|
|
3677
|
+
<code class="ruby"> end</code>
|
|
3678
|
+
</li>
|
|
3679
|
+
|
|
3680
|
+
<li class="never" data-hits="" data-linenumber="33">
|
|
3681
|
+
|
|
3682
|
+
|
|
3683
|
+
<code class="ruby"></code>
|
|
3684
|
+
</li>
|
|
3685
|
+
|
|
3686
|
+
<li class="never" data-hits="" data-linenumber="34">
|
|
3687
|
+
|
|
3688
|
+
|
|
3689
|
+
<code class="ruby"> end</code>
|
|
3690
|
+
</li>
|
|
3691
|
+
|
|
3692
|
+
<li class="never" data-hits="" data-linenumber="35">
|
|
3693
|
+
|
|
3694
|
+
|
|
3695
|
+
<code class="ruby"></code>
|
|
3696
|
+
</li>
|
|
3697
|
+
|
|
3698
|
+
<li class="covered" data-hits="2" data-linenumber="36">
|
|
3699
|
+
<span class="hits">2</span>
|
|
3700
|
+
|
|
3701
|
+
<code class="ruby"> after :each do</code>
|
|
3702
|
+
</li>
|
|
3703
|
+
|
|
3704
|
+
<li class="covered" data-hits="6" data-linenumber="37">
|
|
3705
|
+
<span class="hits">6</span>
|
|
3706
|
+
|
|
3707
|
+
<code class="ruby"> SavedEnvironmentVariables.each do |var|</code>
|
|
3708
|
+
</li>
|
|
3709
|
+
|
|
3710
|
+
<li class="covered" data-hits="48" data-linenumber="38">
|
|
3711
|
+
<span class="hits">48</span>
|
|
3712
|
+
|
|
3713
|
+
<code class="ruby"> ENV[var] = @original_ENV[var]</code>
|
|
3714
|
+
</li>
|
|
3715
|
+
|
|
3716
|
+
<li class="never" data-hits="" data-linenumber="39">
|
|
3717
|
+
|
|
3718
|
+
|
|
3719
|
+
<code class="ruby"> end</code>
|
|
3720
|
+
</li>
|
|
3721
|
+
|
|
3722
|
+
<li class="never" data-hits="" data-linenumber="40">
|
|
3723
|
+
|
|
3724
|
+
|
|
3725
|
+
<code class="ruby"></code>
|
|
3726
|
+
</li>
|
|
3727
|
+
|
|
3728
|
+
<li class="covered" data-hits="6" data-linenumber="41">
|
|
3729
|
+
<span class="hits">6</span>
|
|
3730
|
+
|
|
3731
|
+
<code class="ruby"> if @original_ENV['APPDATA'].nil?</code>
|
|
3732
|
+
</li>
|
|
3733
|
+
|
|
3734
|
+
<li class="covered" data-hits="6" data-linenumber="42">
|
|
3735
|
+
<span class="hits">6</span>
|
|
3736
|
+
|
|
3737
|
+
<code class="ruby"> ENV.delete 'APPDATA'</code>
|
|
3738
|
+
</li>
|
|
3739
|
+
|
|
3740
|
+
<li class="never" data-hits="" data-linenumber="43">
|
|
3741
|
+
|
|
3742
|
+
|
|
3743
|
+
<code class="ruby"> end</code>
|
|
3744
|
+
</li>
|
|
3745
|
+
|
|
3746
|
+
<li class="never" data-hits="" data-linenumber="44">
|
|
3747
|
+
|
|
3748
|
+
|
|
3749
|
+
<code class="ruby"> end</code>
|
|
3750
|
+
</li>
|
|
3751
|
+
|
|
3752
|
+
<li class="never" data-hits="" data-linenumber="45">
|
|
3753
|
+
|
|
3754
|
+
|
|
3755
|
+
<code class="ruby"></code>
|
|
3756
|
+
</li>
|
|
3757
|
+
|
|
3758
|
+
<li class="covered" data-hits="2" data-linenumber="46">
|
|
3759
|
+
<span class="hits">2</span>
|
|
3760
|
+
|
|
3761
|
+
<code class="ruby"> before :each do</code>
|
|
3762
|
+
</li>
|
|
3763
|
+
|
|
3764
|
+
<li class="covered" data-hits="6" data-linenumber="47">
|
|
3765
|
+
<span class="hits">6</span>
|
|
3766
|
+
|
|
3767
|
+
<code class="ruby"> @tempdir = File.join "/tmp", "test_mattock_#{$$}"</code>
|
|
3768
|
+
</li>
|
|
3769
|
+
|
|
3770
|
+
<li class="never" data-hits="" data-linenumber="48">
|
|
3771
|
+
|
|
3772
|
+
|
|
3773
|
+
<code class="ruby"></code>
|
|
3774
|
+
</li>
|
|
3775
|
+
|
|
3776
|
+
<li class="covered" data-hits="6" data-linenumber="49">
|
|
3777
|
+
<span class="hits">6</span>
|
|
3778
|
+
|
|
3779
|
+
<code class="ruby"> @original_PWD = Dir.pwd</code>
|
|
3780
|
+
</li>
|
|
3781
|
+
|
|
3782
|
+
<li class="covered" data-hits="6" data-linenumber="50">
|
|
3783
|
+
<span class="hits">6</span>
|
|
3784
|
+
|
|
3785
|
+
<code class="ruby"> FileUtils.mkdir_p @tempdir</code>
|
|
3786
|
+
</li>
|
|
3787
|
+
|
|
3788
|
+
<li class="covered" data-hits="6" data-linenumber="51">
|
|
3789
|
+
<span class="hits">6</span>
|
|
3790
|
+
|
|
3791
|
+
<code class="ruby"> Dir.chdir @tempdir</code>
|
|
3792
|
+
</li>
|
|
3793
|
+
|
|
3794
|
+
<li class="never" data-hits="" data-linenumber="52">
|
|
3795
|
+
|
|
3796
|
+
|
|
3797
|
+
<code class="ruby"> end</code>
|
|
3798
|
+
</li>
|
|
3799
|
+
|
|
3800
|
+
<li class="never" data-hits="" data-linenumber="53">
|
|
3801
|
+
|
|
3802
|
+
|
|
3803
|
+
<code class="ruby"></code>
|
|
3804
|
+
</li>
|
|
3805
|
+
|
|
3806
|
+
<li class="covered" data-hits="2" data-linenumber="54">
|
|
3807
|
+
<span class="hits">2</span>
|
|
3808
|
+
|
|
3809
|
+
<code class="ruby"> after :each do</code>
|
|
3810
|
+
</li>
|
|
3811
|
+
|
|
3812
|
+
<li class="covered" data-hits="6" data-linenumber="55">
|
|
3813
|
+
<span class="hits">6</span>
|
|
3814
|
+
|
|
3815
|
+
<code class="ruby"> Dir.chdir @original_PWD</code>
|
|
3816
|
+
</li>
|
|
3817
|
+
|
|
3818
|
+
<li class="covered" data-hits="6" data-linenumber="56">
|
|
3819
|
+
<span class="hits">6</span>
|
|
3820
|
+
|
|
3821
|
+
<code class="ruby"> FileUtils.rm_rf @tempdir</code>
|
|
3822
|
+
</li>
|
|
3823
|
+
|
|
3824
|
+
<li class="never" data-hits="" data-linenumber="57">
|
|
3825
|
+
|
|
3826
|
+
|
|
3827
|
+
<code class="ruby"> end</code>
|
|
3828
|
+
</li>
|
|
3829
|
+
|
|
3830
|
+
<li class="never" data-hits="" data-linenumber="58">
|
|
3831
|
+
|
|
3832
|
+
|
|
3833
|
+
<code class="ruby"> end</code>
|
|
3834
|
+
</li>
|
|
3835
|
+
|
|
3836
|
+
<li class="never" data-hits="" data-linenumber="59">
|
|
3837
|
+
|
|
3838
|
+
|
|
3839
|
+
<code class="ruby"> end</code>
|
|
3840
|
+
</li>
|
|
3841
|
+
|
|
3842
|
+
<li class="never" data-hits="" data-linenumber="60">
|
|
3843
|
+
|
|
3844
|
+
|
|
3845
|
+
<code class="ruby"></code>
|
|
3846
|
+
</li>
|
|
3847
|
+
|
|
3848
|
+
<li class="covered" data-hits="1" data-linenumber="61">
|
|
3849
|
+
<span class="hits">1</span>
|
|
3850
|
+
|
|
3851
|
+
<code class="ruby"> module Matchers</code>
|
|
3852
|
+
</li>
|
|
3853
|
+
|
|
3854
|
+
<li class="covered" data-hits="1" data-linenumber="62">
|
|
3855
|
+
<span class="hits">1</span>
|
|
3856
|
+
|
|
3857
|
+
<code class="ruby"> extend RSpec::Matchers::DSL</code>
|
|
3858
|
+
</li>
|
|
3859
|
+
|
|
3860
|
+
<li class="never" data-hits="" data-linenumber="63">
|
|
3861
|
+
|
|
3862
|
+
|
|
3863
|
+
<code class="ruby"></code>
|
|
3864
|
+
</li>
|
|
3865
|
+
|
|
3866
|
+
<li class="covered" data-hits="1" data-linenumber="64">
|
|
3867
|
+
<span class="hits">1</span>
|
|
3868
|
+
|
|
3869
|
+
<code class="ruby"> define :have_task do |name|</code>
|
|
3870
|
+
</li>
|
|
3871
|
+
|
|
3872
|
+
<li class="covered" data-hits="3" data-linenumber="65">
|
|
3873
|
+
<span class="hits">3</span>
|
|
3874
|
+
|
|
3875
|
+
<code class="ruby"> match do |rake|</code>
|
|
3876
|
+
</li>
|
|
3877
|
+
|
|
3878
|
+
<li class="covered" data-hits="3" data-linenumber="66">
|
|
3879
|
+
<span class="hits">3</span>
|
|
3880
|
+
|
|
3881
|
+
<code class="ruby"> !rake.lookup("rake:" + name.to_s).nil?</code>
|
|
3882
|
+
</li>
|
|
3883
|
+
|
|
3884
|
+
<li class="never" data-hits="" data-linenumber="67">
|
|
3885
|
+
|
|
3886
|
+
|
|
3887
|
+
<code class="ruby"> end</code>
|
|
3888
|
+
</li>
|
|
3889
|
+
|
|
3890
|
+
<li class="never" data-hits="" data-linenumber="68">
|
|
3891
|
+
|
|
3892
|
+
|
|
3893
|
+
<code class="ruby"> end</code>
|
|
3894
|
+
</li>
|
|
3895
|
+
|
|
3896
|
+
<li class="never" data-hits="" data-linenumber="69">
|
|
3897
|
+
|
|
3898
|
+
|
|
3899
|
+
<code class="ruby"></code>
|
|
3900
|
+
</li>
|
|
3901
|
+
|
|
3902
|
+
<li class="covered" data-hits="1" data-linenumber="70">
|
|
3903
|
+
<span class="hits">1</span>
|
|
3904
|
+
|
|
3905
|
+
<code class="ruby"> define :depend_on do |name|</code>
|
|
3906
|
+
</li>
|
|
3907
|
+
|
|
3908
|
+
<li class="covered" data-hits="2" data-linenumber="71">
|
|
3909
|
+
<span class="hits">2</span>
|
|
3910
|
+
|
|
3911
|
+
<code class="ruby"> match do |task|</code>
|
|
3912
|
+
</li>
|
|
3913
|
+
|
|
3914
|
+
<li class="covered" data-hits="2" data-linenumber="72">
|
|
3915
|
+
<span class="hits">2</span>
|
|
3916
|
+
|
|
3917
|
+
<code class="ruby"> task.prerequisites.include?(name)</code>
|
|
3918
|
+
</li>
|
|
3919
|
+
|
|
3920
|
+
<li class="never" data-hits="" data-linenumber="73">
|
|
3921
|
+
|
|
3922
|
+
|
|
3923
|
+
<code class="ruby"> end</code>
|
|
3924
|
+
</li>
|
|
3925
|
+
|
|
3926
|
+
<li class="never" data-hits="" data-linenumber="74">
|
|
3927
|
+
|
|
3928
|
+
|
|
3929
|
+
<code class="ruby"> end</code>
|
|
3930
|
+
</li>
|
|
3931
|
+
|
|
3932
|
+
<li class="never" data-hits="" data-linenumber="75">
|
|
3933
|
+
|
|
3934
|
+
|
|
3935
|
+
<code class="ruby"> end</code>
|
|
3936
|
+
</li>
|
|
3937
|
+
|
|
3938
|
+
<li class="never" data-hits="" data-linenumber="76">
|
|
3939
|
+
|
|
3940
|
+
|
|
3941
|
+
<code class="ruby"></code>
|
|
3942
|
+
</li>
|
|
3943
|
+
|
|
3944
|
+
<li class="covered" data-hits="1" data-linenumber="77">
|
|
3945
|
+
<span class="hits">1</span>
|
|
3946
|
+
|
|
3947
|
+
<code class="ruby"> include Matchers</code>
|
|
3948
|
+
</li>
|
|
3949
|
+
|
|
3950
|
+
<li class="never" data-hits="" data-linenumber="78">
|
|
3951
|
+
|
|
3952
|
+
|
|
3953
|
+
<code class="ruby"> end</code>
|
|
3954
|
+
</li>
|
|
3955
|
+
|
|
3956
|
+
<li class="never" data-hits="" data-linenumber="79">
|
|
3957
|
+
|
|
3958
|
+
|
|
3959
|
+
<code class="ruby">end</code>
|
|
3960
|
+
</li>
|
|
3961
|
+
|
|
3962
|
+
</ol>
|
|
3963
|
+
</pre>
|
|
3964
|
+
</div>
|
|
3965
|
+
|
|
3966
|
+
</div>
|
|
3967
|
+
</div>
|
|
3968
|
+
</body>
|
|
3969
|
+
</html>
|