694 lines
23 KiB
HTML
694 lines
23 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<title>Code coverage report for server/utils/index.js</title>
|
|
<meta charset="utf-8">
|
|
<link rel="stylesheet" href="../../prettify.css">
|
|
<link rel="stylesheet" href="../../base.css">
|
|
<style type='text/css'>
|
|
div.coverage-summary .sorter {
|
|
background-image: url(../../sort-arrow-sprite.png);
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="header low">
|
|
<h1>Code coverage report for <span class="entity">server/utils/index.js</span></h1>
|
|
<h2>
|
|
Statements: <span class="metric">35.29% <small>(30 / 85)</small></span>
|
|
Branches: <span class="metric">10.71% <small>(3 / 28)</small></span>
|
|
Functions: <span class="metric">33.33% <small>(10 / 30)</small></span>
|
|
Lines: <span class="metric">35.29% <small>(30 / 85)</small></span>
|
|
Ignored: <span class="metric"><span class="ignore-none">none</span></span>
|
|
</h2>
|
|
<div class="path"><a href="../../index.html">All files</a> » <a href="index.html">server/utils/</a> » index.js</div>
|
|
</div>
|
|
<div class="body">
|
|
<pre><table class="coverage">
|
|
<tr><td class="line-count">1
|
|
2
|
|
3
|
|
4
|
|
5
|
|
6
|
|
7
|
|
8
|
|
9
|
|
10
|
|
11
|
|
12
|
|
13
|
|
14
|
|
15
|
|
16
|
|
17
|
|
18
|
|
19
|
|
20
|
|
21
|
|
22
|
|
23
|
|
24
|
|
25
|
|
26
|
|
27
|
|
28
|
|
29
|
|
30
|
|
31
|
|
32
|
|
33
|
|
34
|
|
35
|
|
36
|
|
37
|
|
38
|
|
39
|
|
40
|
|
41
|
|
42
|
|
43
|
|
44
|
|
45
|
|
46
|
|
47
|
|
48
|
|
49
|
|
50
|
|
51
|
|
52
|
|
53
|
|
54
|
|
55
|
|
56
|
|
57
|
|
58
|
|
59
|
|
60
|
|
61
|
|
62
|
|
63
|
|
64
|
|
65
|
|
66
|
|
67
|
|
68
|
|
69
|
|
70
|
|
71
|
|
72
|
|
73
|
|
74
|
|
75
|
|
76
|
|
77
|
|
78
|
|
79
|
|
80
|
|
81
|
|
82
|
|
83
|
|
84
|
|
85
|
|
86
|
|
87
|
|
88
|
|
89
|
|
90
|
|
91
|
|
92
|
|
93
|
|
94
|
|
95
|
|
96
|
|
97
|
|
98
|
|
99
|
|
100
|
|
101
|
|
102
|
|
103
|
|
104
|
|
105
|
|
106
|
|
107
|
|
108
|
|
109
|
|
110
|
|
111
|
|
112
|
|
113
|
|
114
|
|
115
|
|
116
|
|
117
|
|
118
|
|
119
|
|
120
|
|
121
|
|
122
|
|
123
|
|
124
|
|
125
|
|
126
|
|
127
|
|
128
|
|
129
|
|
130
|
|
131
|
|
132
|
|
133
|
|
134
|
|
135
|
|
136
|
|
137
|
|
138
|
|
139
|
|
140
|
|
141
|
|
142
|
|
143
|
|
144
|
|
145
|
|
146
|
|
147
|
|
148
|
|
149
|
|
150
|
|
151
|
|
152
|
|
153
|
|
154
|
|
155
|
|
156
|
|
157
|
|
158
|
|
159
|
|
160
|
|
161
|
|
162
|
|
163
|
|
164
|
|
165
|
|
166
|
|
167
|
|
168
|
|
169
|
|
170
|
|
171
|
|
172
|
|
173
|
|
174
|
|
175
|
|
176
|
|
177
|
|
178
|
|
179
|
|
180
|
|
181
|
|
182
|
|
183
|
|
184
|
|
185
|
|
186
|
|
187
|
|
188
|
|
189
|
|
190
|
|
191
|
|
192
|
|
193
|
|
194
|
|
195
|
|
196
|
|
197
|
|
198
|
|
199
|
|
200
|
|
201
|
|
202
|
|
203
|
|
204
|
|
205
|
|
206
|
|
207
|
|
208
|
|
209
|
|
210
|
|
211
|
|
212
|
|
213
|
|
214
|
|
215
|
|
216
|
|
217</td><td class="line-coverage"><span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">14</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">39</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">14</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">14</span>
|
|
<span class="cline-any cline-yes">175</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">14</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">14</span>
|
|
<span class="cline-any cline-yes">175</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">14</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-yes">1</span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-no"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span>
|
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">var path = require('path'),
|
|
// debug = require('debug')('freecc:cntr:resources'),
|
|
cheerio = require('cheerio'),
|
|
request = require('request'),
|
|
R = require('ramda'),
|
|
_ = require('lodash'),
|
|
fs = require('fs'),
|
|
|
|
|
|
resources = require('./resources.json'),
|
|
nonprofits = require('../../seed/nonprofits.json'),
|
|
fieldGuides = require('../../seed/field-guides.json');
|
|
|
|
/**
|
|
* Cached values
|
|
*/
|
|
var allFieldGuideIds, allFieldGuideNames, allNonprofitNames,
|
|
challengeMap, challengeMapForDisplay, challengeMapWithIds,
|
|
challengeMapWithNames, allChallengeIds, allChallenges;
|
|
|
|
/**
|
|
* GET /
|
|
* Resources.
|
|
*/
|
|
|
|
Array.zip = <span class="fstat-no" title="function not covered" >function(left, right, combinerFunction) {</span>
|
|
<span class="cstat-no" title="statement not covered" > var counter,</span>
|
|
results = [];
|
|
|
|
<span class="cstat-no" title="statement not covered" > for (counter = 0; counter < Math.min(left.length, right.length); counter++) {</span>
|
|
<span class="cstat-no" title="statement not covered" > results.push(combinerFunction(left[counter], right[counter]));</span>
|
|
}
|
|
|
|
<span class="cstat-no" title="statement not covered" > return results;</span>
|
|
};
|
|
|
|
(function() {
|
|
<span class="missing-if-branch" title="else path not taken" >E</span>if (!challengeMap) {
|
|
var localChallengeMap = {};
|
|
var files = fs.readdirSync(
|
|
path.join(__dirname, '../../seed/challenges')
|
|
);
|
|
var keyCounter = 0;
|
|
files = files.map(function (file) {
|
|
return require(
|
|
path.join(__dirname, '../../seed/challenges/' + file)
|
|
);
|
|
});
|
|
files = files.sort(function (a, b) {
|
|
return a.order - b.order;
|
|
});
|
|
files.forEach(function (file) {
|
|
localChallengeMap[keyCounter++] = file;
|
|
});
|
|
challengeMap = _.cloneDeep(localChallengeMap);
|
|
}
|
|
})();
|
|
|
|
|
|
module.exports = {
|
|
getChallengeMapForDisplay: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > if (!challengeMapForDisplay) {</span>
|
|
<span class="cstat-no" title="statement not covered" > challengeMapForDisplay = {};</span>
|
|
<span class="cstat-no" title="statement not covered" > Object.keys(challengeMap).forEach(<span class="fstat-no" title="function not covered" >function (key) {</span></span>
|
|
<span class="cstat-no" title="statement not covered" > challengeMapForDisplay[key] = {</span>
|
|
name: challengeMap[key].name,
|
|
dashedName: challengeMap[key].name.replace(/\s/g, '-'),
|
|
challenges: challengeMap[key].challenges,
|
|
completedCount: challengeMap[key].challenges
|
|
};
|
|
});
|
|
}
|
|
<span class="cstat-no" title="statement not covered" > return challengeMapForDisplay;</span>
|
|
},
|
|
|
|
getChallengeMapWithIds: function () {
|
|
<span class="missing-if-branch" title="else path not taken" >E</span>if (!challengeMapWithIds) {
|
|
challengeMapWithIds = {};
|
|
Object.keys(challengeMap).forEach(function (key) {
|
|
var onlyIds = challengeMap[key].challenges.map(function (elem) {
|
|
return elem.id;
|
|
});
|
|
challengeMapWithIds[key] = onlyIds;
|
|
});
|
|
}
|
|
return challengeMapWithIds;
|
|
},
|
|
|
|
allChallengeIds: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
|
|
<span class="cstat-no" title="statement not covered" > if (!allChallengeIds) {</span>
|
|
<span class="cstat-no" title="statement not covered" > allChallengeIds = [];</span>
|
|
<span class="cstat-no" title="statement not covered" > Object.keys(this.getChallengeMapWithIds()).forEach(<span class="fstat-no" title="function not covered" >function (key) {</span></span>
|
|
<span class="cstat-no" title="statement not covered" > allChallengeIds.push(challengeMapWithIds[key]);</span>
|
|
});
|
|
<span class="cstat-no" title="statement not covered" > allChallengeIds = R.flatten(allChallengeIds);</span>
|
|
}
|
|
<span class="cstat-no" title="statement not covered" > return allChallengeIds;</span>
|
|
},
|
|
|
|
allChallenges: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > if (!allChallenges) {</span>
|
|
<span class="cstat-no" title="statement not covered" > allChallenges = [];</span>
|
|
<span class="cstat-no" title="statement not covered" > Object.keys(this.getChallengeMapWithNames()).forEach(<span class="fstat-no" title="function not covered" >function (key) {</span></span>
|
|
<span class="cstat-no" title="statement not covered" > allChallenges.push(challengeMap[key].challenges);</span>
|
|
});
|
|
<span class="cstat-no" title="statement not covered" > allChallenges = R.flatten(allChallenges);</span>
|
|
}
|
|
<span class="cstat-no" title="statement not covered" > return allChallenges;</span>
|
|
},
|
|
|
|
getChallengeMapWithNames: function () {
|
|
<span class="missing-if-branch" title="else path not taken" >E</span>if (!challengeMapWithNames) {
|
|
challengeMapWithNames = {};
|
|
Object.keys(challengeMap).
|
|
forEach(function (key) {
|
|
var onlyNames = challengeMap[key].challenges.map(function (elem) {
|
|
return elem.name;
|
|
});
|
|
challengeMapWithNames[key] = onlyNames;
|
|
});
|
|
}
|
|
return challengeMapWithNames;
|
|
},
|
|
|
|
|
|
randomPhrase: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > return resources.phrases[</span>
|
|
Math.floor(Math.random() * resources.phrases.length)
|
|
];
|
|
},
|
|
|
|
randomVerb: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > return resources.verbs[</span>
|
|
Math.floor(Math.random() * resources.verbs.length)
|
|
];
|
|
},
|
|
|
|
randomCompliment: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > return resources.compliments[</span>
|
|
Math.floor(Math.random() * resources.compliments.length)
|
|
];
|
|
},
|
|
|
|
allFieldGuideIds: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > if (allFieldGuideIds) {</span>
|
|
<span class="cstat-no" title="statement not covered" > return allFieldGuideIds;</span>
|
|
} else {
|
|
<span class="cstat-no" title="statement not covered" > allFieldGuideIds = fieldGuides.map(<span class="fstat-no" title="function not covered" >function (elem) {</span></span>
|
|
<span class="cstat-no" title="statement not covered" > return elem.id;</span>
|
|
});
|
|
<span class="cstat-no" title="statement not covered" > return allFieldGuideIds;</span>
|
|
}
|
|
},
|
|
|
|
allFieldGuideNamesAndIds: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > if (allFieldGuideNames) {</span>
|
|
<span class="cstat-no" title="statement not covered" > return allFieldGuideNames;</span>
|
|
} else {
|
|
<span class="cstat-no" title="statement not covered" > allFieldGuideNames = fieldGuides.map(<span class="fstat-no" title="function not covered" >function (elem) {</span></span>
|
|
<span class="cstat-no" title="statement not covered" > return {</span>
|
|
name: elem.name,
|
|
dashedName: elem.dashedName,
|
|
id: elem.id
|
|
};
|
|
});
|
|
<span class="cstat-no" title="statement not covered" > return allFieldGuideNames;</span>
|
|
}
|
|
},
|
|
|
|
allNonprofitNames: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > if (allNonprofitNames) {</span>
|
|
<span class="cstat-no" title="statement not covered" > return allNonprofitNames;</span>
|
|
} else {
|
|
<span class="cstat-no" title="statement not covered" > allNonprofitNames = nonprofits.map(<span class="fstat-no" title="function not covered" >function (elem) {</span></span>
|
|
<span class="cstat-no" title="statement not covered" > return {name: elem.name};</span>
|
|
});
|
|
<span class="cstat-no" title="statement not covered" > return allNonprofitNames;</span>
|
|
}
|
|
},
|
|
|
|
whichEnvironment: <span class="fstat-no" title="function not covered" >function () {</span>
|
|
<span class="cstat-no" title="statement not covered" > return process.env.NODE_ENV;</span>
|
|
},
|
|
|
|
getURLTitle: <span class="fstat-no" title="function not covered" >function (url, callback) {</span>
|
|
<span class="cstat-no" title="statement not covered" > (<span class="fstat-no" title="function not covered" >function () {</span></span>
|
|
<span class="cstat-no" title="statement not covered" > var result = {title: '', image: '', url: '', description: ''};</span>
|
|
<span class="cstat-no" title="statement not covered" > request(url, <span class="fstat-no" title="function not covered" >function (error, response, body) {</span></span>
|
|
<span class="cstat-no" title="statement not covered" > if (!error && response.statusCode === 200) {</span>
|
|
<span class="cstat-no" title="statement not covered" > var $ = cheerio.load(body);</span>
|
|
<span class="cstat-no" title="statement not covered" > var metaDescription = $("meta[name='description']");</span>
|
|
<span class="cstat-no" title="statement not covered" > var metaImage = $("meta[property='og:image']");</span>
|
|
<span class="cstat-no" title="statement not covered" > var urlImage = metaImage.attr('content') ?</span>
|
|
metaImage.attr('content') :
|
|
'';
|
|
|
|
<span class="cstat-no" title="statement not covered" > var metaTitle = $('title');</span>
|
|
<span class="cstat-no" title="statement not covered" > var description = metaDescription.attr('content') ?</span>
|
|
metaDescription.attr('content') :
|
|
'';
|
|
|
|
<span class="cstat-no" title="statement not covered" > result.title = metaTitle.text().length < 90 ?</span>
|
|
metaTitle.text() :
|
|
metaTitle.text().slice(0, 87) + '...';
|
|
|
|
<span class="cstat-no" title="statement not covered" > result.image = urlImage;</span>
|
|
<span class="cstat-no" title="statement not covered" > result.description = description;</span>
|
|
<span class="cstat-no" title="statement not covered" > callback(null, result);</span>
|
|
} else {
|
|
<span class="cstat-no" title="statement not covered" > callback(new Error('failed'));</span>
|
|
}
|
|
});
|
|
})();
|
|
}
|
|
};
|
|
</pre></td></tr>
|
|
</table></pre>
|
|
|
|
</div>
|
|
<div class="footer">
|
|
<div class="meta">Generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Thu Jun 11 2015 21:16:17 GMT-0400 (EDT)</div>
|
|
</div>
|
|
<script src="../../prettify.js"></script>
|
|
<script>
|
|
window.onload = function () {
|
|
if (typeof prettyPrint === 'function') {
|
|
prettyPrint();
|
|
}
|
|
};
|
|
</script>
|
|
<script src="../../sorter.js"></script>
|
|
</body>
|
|
</html>
|