UNPKG

8.2 kBHTMLView Raw
1<!doctype html>
2<html lang="en">
3<head>
4 <title>Code coverage report for forge-config.js</title>
5 <meta charset="utf-8" />
6 <link rel="stylesheet" href="prettify.css" />
7 <link rel="stylesheet" href="base.css" />
8 <meta name="viewport" content="width=device-width, initial-scale=1">
9 <style type='text/css'>
10 .coverage-summary .sorter {
11 background-image: url(sort-arrow-sprite.png);
12 }
13 </style>
14</head>
15<body>
16<div class='wrapper'>
17 <div class='pad1'>
18 <h1>
19 <a href="index.html">All files</a> forge-config.js
20 </h1>
21 <div class='clearfix'>
22 <div class='fl pad1y space-right2'>
23 <span class="strong">0% </span>
24 <span class="quiet">Statements</span>
25 <span class='fraction'>0/22</span>
26 </div>
27 <div class='fl pad1y space-right2'>
28 <span class="strong">0% </span>
29 <span class="quiet">Branches</span>
30 <span class='fraction'>0/15</span>
31 </div>
32 <div class='fl pad1y space-right2'>
33 <span class="strong">0% </span>
34 <span class="quiet">Functions</span>
35 <span class='fraction'>0/3</span>
36 </div>
37 <div class='fl pad1y space-right2'>
38 <span class="strong">0% </span>
39 <span class="quiet">Lines</span>
40 <span class='fraction'>0/22</span>
41 </div>
42 </div>
43 </div>
44 <div class='status-line low'></div>
45<pre><table class="coverage">
46<tr><td class="line-count quiet">1
472
483
494
505
516
527
538
549
5510
5611
5712
5813
5914
6015
6116
6217
6318
6419
6520
6621
6722
6823
6924
7025
7126
7227
7328
7429
7530
7631
7732
7833
7934
8035
8136
8237
8338
8439
8540
8641
8742
8843
8944
9045
9146
9247
9348
9449
9550
9651
9752</td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
98<span class="cline-any cline-neutral">&nbsp;</span>
99<span class="cline-any cline-neutral">&nbsp;</span>
100<span class="cline-any cline-neutral">&nbsp;</span>
101<span class="cline-any cline-neutral">&nbsp;</span>
102<span class="cline-any cline-neutral">&nbsp;</span>
103<span class="cline-any cline-no">&nbsp;</span>
104<span class="cline-any cline-no">&nbsp;</span>
105<span class="cline-any cline-no">&nbsp;</span>
106<span class="cline-any cline-no">&nbsp;</span>
107<span class="cline-any cline-no">&nbsp;</span>
108<span class="cline-any cline-neutral">&nbsp;</span>
109<span class="cline-any cline-no">&nbsp;</span>
110<span class="cline-any cline-no">&nbsp;</span>
111<span class="cline-any cline-neutral">&nbsp;</span>
112<span class="cline-any cline-no">&nbsp;</span>
113<span class="cline-any cline-no">&nbsp;</span>
114<span class="cline-any cline-neutral">&nbsp;</span>
115<span class="cline-any cline-no">&nbsp;</span>
116<span class="cline-any cline-neutral">&nbsp;</span>
117<span class="cline-any cline-neutral">&nbsp;</span>
118<span class="cline-any cline-neutral">&nbsp;</span>
119<span class="cline-any cline-neutral">&nbsp;</span>
120<span class="cline-any cline-neutral">&nbsp;</span>
121<span class="cline-any cline-neutral">&nbsp;</span>
122<span class="cline-any cline-neutral">&nbsp;</span>
123<span class="cline-any cline-no">&nbsp;</span>
124<span class="cline-any cline-neutral">&nbsp;</span>
125<span class="cline-any cline-neutral">&nbsp;</span>
126<span class="cline-any cline-neutral">&nbsp;</span>
127<span class="cline-any cline-neutral">&nbsp;</span>
128<span class="cline-any cline-neutral">&nbsp;</span>
129<span class="cline-any cline-neutral">&nbsp;</span>
130<span class="cline-any cline-no">&nbsp;</span>
131<span class="cline-any cline-no">&nbsp;</span>
132<span class="cline-any cline-no">&nbsp;</span>
133<span class="cline-any cline-no">&nbsp;</span>
134<span class="cline-any cline-no">&nbsp;</span>
135<span class="cline-any cline-no">&nbsp;</span>
136<span class="cline-any cline-no">&nbsp;</span>
137<span class="cline-any cline-no">&nbsp;</span>
138<span class="cline-any cline-no">&nbsp;</span>
139<span class="cline-any cline-neutral">&nbsp;</span>
140<span class="cline-any cline-neutral">&nbsp;</span>
141<span class="cline-any cline-neutral">&nbsp;</span>
142<span class="cline-any cline-neutral">&nbsp;</span>
143<span class="cline-any cline-neutral">&nbsp;</span>
144<span class="cline-any cline-no">&nbsp;</span>
145<span class="cline-any cline-neutral">&nbsp;</span>
146<span class="cline-any cline-no">&nbsp;</span>
147<span class="cline-any cline-neutral">&nbsp;</span>
148<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import fs from 'fs-promise';
149import path from 'path';
150import _template from 'lodash.template';
151import readPackageJSON from './read-package-json';
152&nbsp;
153export default <span class="fstat-no" title="function not covered" >as</span>ync (dir) =&gt; {
154 const packageJSON = <span class="cstat-no" title="statement not covered" >await readPackageJSON(dir);</span>
155 let forgeConfig = <span class="cstat-no" title="statement not covered" >packageJSON.config.forge;</span>
156<span class="cstat-no" title="statement not covered" > if (typeof forgeConfig === 'string' &amp;&amp; (await fs.exists(path.resolve(dir, forgeConfig)) || await fs.exists(path.resolve(dir, `${forgeConfig}.js`)))) {</span>
157<span class="cstat-no" title="statement not covered" > try {</span>
158<span class="cstat-no" title="statement not covered" > forgeConfig = require(path.resolve(dir, forgeConfig));</span>
159 } catch (err) {
160<span class="cstat-no" title="statement not covered" > console.error(`Failed to load: ${path.resolve(dir, forgeConfig)}`);</span>
161<span class="cstat-no" title="statement not covered" > throw err;</span>
162 }
163 } else <span class="cstat-no" title="statement not covered" >if (typeof forgeConfig !== 'object') {</span>
164<span class="cstat-no" title="statement not covered" > throw new Error('Expected packageJSON.config.forge to be an object or point to a requirable JS file');</span>
165 }
166<span class="cstat-no" title="statement not covered" > forgeConfig = Object.assign({</span>
167 make_targets: {},
168 electronPackagerConfig: {},
169 electronWinstallerConfig: {},
170 electronInstallerDebian: {},
171 electronInstallerDMG: {},
172 electronInstallerRedhat: {},
173 }, forgeConfig);
174<span class="cstat-no" title="statement not covered" > forgeConfig.make_targets = Object.assign({</span>
175 win32: ['squirrel'],
176 darwin: ['zip'],
177 mas: ['zip'],
178 linux: ['deb', 'rpm'],
179 }, forgeConfig.make_targets);
180&nbsp;
181 const templateObj = <span class="cstat-no" title="statement not covered" >Object.assign({}, packageJSON, { year: (new Date()).getFullYear() });</span>
182 const template = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(o</span>bj) =&gt; {</span>
183<span class="cstat-no" title="statement not covered" > Object.keys(obj).forEach(<span class="fstat-no" title="function not covered" >(o</span>bjKey) =&gt; {</span>
184<span class="cstat-no" title="statement not covered" > if (typeof obj[objKey] === 'object' &amp;&amp; obj !== null) {</span>
185<span class="cstat-no" title="statement not covered" > template(obj[objKey]);</span>
186 } else <span class="cstat-no" title="statement not covered" >if (typeof obj[objKey] === 'string') {</span>
187<span class="cstat-no" title="statement not covered" > obj[objKey] = _template(obj[objKey])(templateObj); </span>// eslint-disable-line
188<span class="cstat-no" title="statement not covered" > if (obj[objKey].startsWith('require:')) {</span>
189<span class="cstat-no" title="statement not covered" > obj[objKey] = require(path.resolve(dir, obj[objKey].substr(8))); </span>// eslint-disable-line
190 }
191 }
192 });
193 };
194&nbsp;
195<span class="cstat-no" title="statement not covered" > template(forgeConfig);</span>
196&nbsp;
197<span class="cstat-no" title="statement not covered" > return forgeConfig;</span>
198};
199&nbsp;</pre></td></tr>
200</table></pre>
201<div class='push'></div><!-- for sticky footer -->
202</div><!-- /wrapper -->
203<div class='footer quiet pad2 space-top1 center small'>
204 Code coverage
205 generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Sun Jan 15 2017 17:17:26 GMT+1100 (AEDT)
206</div>
207</div>
208<script src="prettify.js"></script>
209<script>
210window.onload = function () {
211 if (typeof prettyPrint === 'function') {
212 prettyPrint();
213 }
214};
215</script>
216<script src="sorter.js"></script>
217</body>
218</html>