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
|
47 | 2
|
48 | 3
|
49 | 4
|
50 | 5
|
51 | 6
|
52 | 7
|
53 | 8
|
54 | 9
|
55 | 10
|
56 | 11
|
57 | 12
|
58 | 13
|
59 | 14
|
60 | 15
|
61 | 16
|
62 | 17
|
63 | 18
|
64 | 19
|
65 | 20
|
66 | 21
|
67 | 22
|
68 | 23
|
69 | 24
|
70 | 25
|
71 | 26
|
72 | 27
|
73 | 28
|
74 | 29
|
75 | 30
|
76 | 31
|
77 | 32
|
78 | 33
|
79 | 34
|
80 | 35
|
81 | 36
|
82 | 37
|
83 | 38
|
84 | 39
|
85 | 40
|
86 | 41
|
87 | 42
|
88 | 43
|
89 | 44
|
90 | 45
|
91 | 46
|
92 | 47
|
93 | 48
|
94 | 49
|
95 | 50
|
96 | 51
|
97 | 52</td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
98 | <span class="cline-any cline-neutral"> </span>
|
99 | <span class="cline-any cline-neutral"> </span>
|
100 | <span class="cline-any cline-neutral"> </span>
|
101 | <span class="cline-any cline-neutral"> </span>
|
102 | <span class="cline-any cline-neutral"> </span>
|
103 | <span class="cline-any cline-no"> </span>
|
104 | <span class="cline-any cline-no"> </span>
|
105 | <span class="cline-any cline-no"> </span>
|
106 | <span class="cline-any cline-no"> </span>
|
107 | <span class="cline-any cline-no"> </span>
|
108 | <span class="cline-any cline-neutral"> </span>
|
109 | <span class="cline-any cline-no"> </span>
|
110 | <span class="cline-any cline-no"> </span>
|
111 | <span class="cline-any cline-neutral"> </span>
|
112 | <span class="cline-any cline-no"> </span>
|
113 | <span class="cline-any cline-no"> </span>
|
114 | <span class="cline-any cline-neutral"> </span>
|
115 | <span class="cline-any cline-no"> </span>
|
116 | <span class="cline-any cline-neutral"> </span>
|
117 | <span class="cline-any cline-neutral"> </span>
|
118 | <span class="cline-any cline-neutral"> </span>
|
119 | <span class="cline-any cline-neutral"> </span>
|
120 | <span class="cline-any cline-neutral"> </span>
|
121 | <span class="cline-any cline-neutral"> </span>
|
122 | <span class="cline-any cline-neutral"> </span>
|
123 | <span class="cline-any cline-no"> </span>
|
124 | <span class="cline-any cline-neutral"> </span>
|
125 | <span class="cline-any cline-neutral"> </span>
|
126 | <span class="cline-any cline-neutral"> </span>
|
127 | <span class="cline-any cline-neutral"> </span>
|
128 | <span class="cline-any cline-neutral"> </span>
|
129 | <span class="cline-any cline-neutral"> </span>
|
130 | <span class="cline-any cline-no"> </span>
|
131 | <span class="cline-any cline-no"> </span>
|
132 | <span class="cline-any cline-no"> </span>
|
133 | <span class="cline-any cline-no"> </span>
|
134 | <span class="cline-any cline-no"> </span>
|
135 | <span class="cline-any cline-no"> </span>
|
136 | <span class="cline-any cline-no"> </span>
|
137 | <span class="cline-any cline-no"> </span>
|
138 | <span class="cline-any cline-no"> </span>
|
139 | <span class="cline-any cline-neutral"> </span>
|
140 | <span class="cline-any cline-neutral"> </span>
|
141 | <span class="cline-any cline-neutral"> </span>
|
142 | <span class="cline-any cline-neutral"> </span>
|
143 | <span class="cline-any cline-neutral"> </span>
|
144 | <span class="cline-any cline-no"> </span>
|
145 | <span class="cline-any cline-neutral"> </span>
|
146 | <span class="cline-any cline-no"> </span>
|
147 | <span class="cline-any cline-neutral"> </span>
|
148 | <span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import fs from 'fs-promise';
|
149 | import path from 'path';
|
150 | import _template from 'lodash.template';
|
151 | import readPackageJSON from './read-package-json';
|
152 |
|
153 | export default <span class="fstat-no" title="function not covered" >as</span>ync (dir) => {
|
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' && (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 |
|
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) => {</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) => {</span>
|
184 | <span class="cstat-no" title="statement not covered" > if (typeof obj[objKey] === 'object' && 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 |
|
195 | <span class="cstat-no" title="statement not covered" > template(forgeConfig);</span>
|
196 |
|
197 | <span class="cstat-no" title="statement not covered" > return forgeConfig;</span>
|
198 | };
|
199 | </pre></td></tr>
|
200 | </table></pre>
|
201 | <div class='push'></div>
|
202 | </div>
|
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>
|
210 | window.onload = function () {
|
211 | if (typeof prettyPrint === 'function') {
|
212 | prettyPrint();
|
213 | }
|
214 | };
|
215 | </script>
|
216 | <script src="sorter.js"></script>
|
217 | </body>
|
218 | </html>
|