@featurevisor/core 1.22.0 → 1.23.0

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.
Files changed (34) hide show
  1. package/.eslintcache +1 -1
  2. package/CHANGELOG.md +22 -0
  3. package/coverage/clover.xml +146 -142
  4. package/coverage/coverage-final.json +4 -4
  5. package/coverage/lcov-report/index.html +21 -21
  6. package/coverage/lcov-report/lib/builder/allocator.js.html +37 -28
  7. package/coverage/lcov-report/lib/builder/index.html +10 -10
  8. package/coverage/lcov-report/lib/builder/revision.js.html +1 -1
  9. package/coverage/lcov-report/lib/builder/traffic.js.html +46 -46
  10. package/coverage/lcov-report/lib/tester/checkIfObjectsAreEqual.js.html +1 -1
  11. package/coverage/lcov-report/lib/tester/index.html +1 -1
  12. package/coverage/lcov-report/lib/tester/matrix.js.html +1 -1
  13. package/coverage/lcov-report/src/builder/allocator.ts.html +40 -28
  14. package/coverage/lcov-report/src/builder/index.html +10 -10
  15. package/coverage/lcov-report/src/builder/revision.ts.html +1 -1
  16. package/coverage/lcov-report/src/builder/traffic.ts.html +44 -44
  17. package/coverage/lcov-report/src/tester/checkIfObjectsAreEqual.ts.html +1 -1
  18. package/coverage/lcov-report/src/tester/index.html +1 -1
  19. package/coverage/lcov-report/src/tester/matrix.ts.html +1 -1
  20. package/coverage/lcov.info +242 -235
  21. package/lib/builder/allocator.js +3 -0
  22. package/lib/builder/allocator.js.map +1 -1
  23. package/lib/builder/traffic.spec.js +236 -0
  24. package/lib/builder/traffic.spec.js.map +1 -1
  25. package/lib/config/projectConfig.d.ts +1 -0
  26. package/lib/config/projectConfig.js +1 -0
  27. package/lib/config/projectConfig.js.map +1 -1
  28. package/lib/linter/featureSchema.js +15 -0
  29. package/lib/linter/featureSchema.js.map +1 -1
  30. package/package.json +2 -2
  31. package/src/builder/allocator.ts +4 -0
  32. package/src/builder/traffic.spec.ts +259 -0
  33. package/src/config/projectConfig.ts +3 -0
  34. package/src/linter/featureSchema.ts +25 -0
@@ -25,14 +25,14 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>29/29</span>
28
+ <span class='fraction'>31/31</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>6/6</span>
35
+ <span class='fraction'>8/8</span>
36
36
  </div>
37
37
 
38
38
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>27/27</span>
49
+ <span class='fraction'>29/29</span>
50
50
  </div>
51
51
 
52
52
 
@@ -98,39 +98,45 @@
98
98
  <a name='L33'></a><a href='#L33'>33</a>
99
99
  <a name='L34'></a><a href='#L34'>34</a>
100
100
  <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
102
105
  <span class="cline-any cline-yes">2x</span>
103
106
  <span class="cline-any cline-yes">2x</span>
104
107
  <span class="cline-any cline-neutral">&nbsp;</span>
105
- <span class="cline-any cline-yes">29x</span>
106
- <span class="cline-any cline-yes">29x</span>
107
- <span class="cline-any cline-yes">29x</span>
108
- <span class="cline-any cline-yes">29x</span>
109
- <span class="cline-any cline-yes">34x</span>
110
- <span class="cline-any cline-yes">34x</span>
111
- <span class="cline-any cline-yes">34x</span>
112
- <span class="cline-any cline-yes">34x</span>
113
- <span class="cline-any cline-yes">34x</span>
114
- <span class="cline-any cline-yes">34x</span>
108
+ <span class="cline-any cline-yes">37x</span>
109
+ <span class="cline-any cline-yes">37x</span>
110
+ <span class="cline-any cline-yes">37x</span>
111
+ <span class="cline-any cline-yes">37x</span>
112
+ <span class="cline-any cline-yes">39x</span>
113
+ <span class="cline-any cline-yes">39x</span>
114
+ <span class="cline-any cline-yes">39x</span>
115
+ <span class="cline-any cline-yes">39x</span>
116
+ <span class="cline-any cline-yes">39x</span>
117
+ <span class="cline-any cline-yes">39x</span>
115
118
  <span class="cline-any cline-neutral">&nbsp;</span>
116
- <span class="cline-any cline-yes">29x</span>
119
+ <span class="cline-any cline-yes">37x</span>
117
120
  <span class="cline-any cline-neutral">&nbsp;</span>
118
121
  <span class="cline-any cline-yes">2x</span>
119
122
  <span class="cline-any cline-neutral">&nbsp;</span>
120
- <span class="cline-any cline-yes">30x</span>
121
- <span class="cline-any cline-yes">30x</span>
122
- <span class="cline-any cline-yes">30x</span>
123
- <span class="cline-any cline-yes">30x</span>
124
- <span class="cline-any cline-yes">35x</span>
125
- <span class="cline-any cline-yes">35x</span>
126
- <span class="cline-any cline-yes">35x</span>
127
- <span class="cline-any cline-yes">35x</span>
128
- <span class="cline-any cline-yes">23x</span>
123
+ <span class="cline-any cline-yes">38x</span>
124
+ <span class="cline-any cline-yes">4x</span>
129
125
  <span class="cline-any cline-neutral">&nbsp;</span>
130
- <span class="cline-any cline-yes">35x</span>
131
- <span class="cline-any cline-yes">35x</span>
126
+ <span class="cline-any cline-yes">34x</span>
127
+ <span class="cline-any cline-yes">34x</span>
128
+ <span class="cline-any cline-yes">34x</span>
129
+ <span class="cline-any cline-yes">34x</span>
130
+ <span class="cline-any cline-yes">40x</span>
131
+ <span class="cline-any cline-yes">40x</span>
132
+ <span class="cline-any cline-yes">40x</span>
133
+ <span class="cline-any cline-yes">40x</span>
134
+ <span class="cline-any cline-yes">27x</span>
132
135
  <span class="cline-any cline-neutral">&nbsp;</span>
133
- <span class="cline-any cline-yes">30x</span>
136
+ <span class="cline-any cline-yes">40x</span>
137
+ <span class="cline-any cline-yes">40x</span>
138
+ <span class="cline-any cline-neutral">&nbsp;</span>
139
+ <span class="cline-any cline-yes">34x</span>
134
140
  <span class="cline-any cline-neutral">&nbsp;</span>
135
141
  <span class="cline-any cline-yes">2x</span>
136
142
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">"use strict";
@@ -152,6 +158,9 @@ function getAllocation(availableRanges, fill) {
152
158
  }
153
159
  exports.getAllocation = getAllocation;
154
160
  function getUpdatedAvailableRangesAfterFilling(availableRanges, fill) {
161
+ if (fill === 0) {
162
+ return availableRanges;
163
+ }
155
164
  var result = [];
156
165
  var remaining = fill;
157
166
  var i = 0;
@@ -175,7 +184,7 @@ exports.getUpdatedAvailableRangesAfterFilling = getUpdatedAvailableRangesAfterFi
175
184
  <div class='footer quiet pad2 space-top1 center small'>
176
185
  Code coverage generated by
177
186
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
178
- at 2024-05-21T20:00:39.804Z
187
+ at 2024-05-26T15:36:17.447Z
179
188
  </div>
180
189
  <script src="../../prettify.js"></script>
181
190
  <script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">94.54% </span>
26
+ <span class="strong">94.64% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>104/110</span>
28
+ <span class='fraction'>106/112</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">82.75% </span>
33
+ <span class="strong">83.33% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>48/58</span>
35
+ <span class='fraction'>50/60</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">94.23% </span>
47
+ <span class="strong">94.33% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>98/104</span>
49
+ <span class='fraction'>100/106</span>
50
50
  </div>
51
51
 
52
52
 
@@ -84,13 +84,13 @@
84
84
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
85
85
  </td>
86
86
  <td data-value="100" class="pct high">100%</td>
87
- <td data-value="29" class="abs high">29/29</td>
87
+ <td data-value="31" class="abs high">31/31</td>
88
88
  <td data-value="100" class="pct high">100%</td>
89
- <td data-value="6" class="abs high">6/6</td>
89
+ <td data-value="8" class="abs high">8/8</td>
90
90
  <td data-value="100" class="pct high">100%</td>
91
91
  <td data-value="2" class="abs high">2/2</td>
92
92
  <td data-value="100" class="pct high">100%</td>
93
- <td data-value="27" class="abs high">27/27</td>
93
+ <td data-value="29" class="abs high">29/29</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -131,7 +131,7 @@
131
131
  <div class='footer quiet pad2 space-top1 center small'>
132
132
  Code coverage generated by
133
133
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
134
- at 2024-05-21T20:00:39.804Z
134
+ at 2024-05-26T15:36:17.447Z
135
135
  </div>
136
136
  <script src="../../prettify.js"></script>
137
137
  <script>
@@ -136,7 +136,7 @@ exports.getNextRevision = getNextRevision;
136
136
  <div class='footer quiet pad2 space-top1 center small'>
137
137
  Code coverage generated by
138
138
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
139
- at 2024-05-21T20:00:39.804Z
139
+ at 2024-05-26T15:36:17.447Z
140
140
  </div>
141
141
  <script src="../../prettify.js"></script>
142
142
  <script>
@@ -198,24 +198,24 @@
198
198
  <span class="cline-any cline-yes">1x</span>
199
199
  <span class="cline-any cline-neutral">&nbsp;</span>
200
200
  <span class="cline-any cline-neutral">&nbsp;</span>
201
- <span class="cline-any cline-yes">9x</span>
202
- <span class="cline-any cline-yes">3x</span>
201
+ <span class="cline-any cline-yes">13x</span>
202
+ <span class="cline-any cline-yes">4x</span>
203
203
  <span class="cline-any cline-neutral">&nbsp;</span>
204
204
  <span class="cline-any cline-neutral">&nbsp;</span>
205
- <span class="cline-any cline-yes">3x</span>
205
+ <span class="cline-any cline-yes">4x</span>
206
206
  <span class="cline-any cline-neutral">&nbsp;</span>
207
207
  <span class="cline-any cline-neutral">&nbsp;</span>
208
208
  <span class="cline-any cline-no">&nbsp;</span>
209
209
  <span class="cline-any cline-neutral">&nbsp;</span>
210
- <span class="cline-any cline-yes">6x</span>
210
+ <span class="cline-any cline-yes">9x</span>
211
211
  <span class="cline-any cline-neutral">&nbsp;</span>
212
- <span class="cline-any cline-yes">15x</span>
213
- <span class="cline-any cline-yes">15x</span>
212
+ <span class="cline-any cline-yes">21x</span>
213
+ <span class="cline-any cline-yes">21x</span>
214
214
  <span class="cline-any cline-neutral">&nbsp;</span>
215
215
  <span class="cline-any cline-neutral">&nbsp;</span>
216
- <span class="cline-any cline-yes">6x</span>
217
- <span class="cline-any cline-yes">16x</span>
218
- <span class="cline-any cline-yes">16x</span>
216
+ <span class="cline-any cline-yes">9x</span>
217
+ <span class="cline-any cline-yes">22x</span>
218
+ <span class="cline-any cline-yes">22x</span>
219
219
  <span class="cline-any cline-neutral">&nbsp;</span>
220
220
  <span class="cline-any cline-neutral">&nbsp;</span>
221
221
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -224,20 +224,20 @@
224
224
  <span class="cline-any cline-yes">1x</span>
225
225
  <span class="cline-any cline-neutral">&nbsp;</span>
226
226
  <span class="cline-any cline-neutral">&nbsp;</span>
227
- <span class="cline-any cline-yes">9x</span>
228
- <span class="cline-any cline-yes">3x</span>
227
+ <span class="cline-any cline-yes">13x</span>
228
+ <span class="cline-any cline-yes">4x</span>
229
229
  <span class="cline-any cline-neutral">&nbsp;</span>
230
- <span class="cline-any cline-yes">6x</span>
231
- <span class="cline-any cline-yes">6x</span>
230
+ <span class="cline-any cline-yes">9x</span>
231
+ <span class="cline-any cline-yes">9x</span>
232
232
  <span class="cline-any cline-neutral">&nbsp;</span>
233
233
  <span class="cline-any cline-yes">1x</span>
234
234
  <span class="cline-any cline-neutral">&nbsp;</span>
235
235
  <span class="cline-any cline-neutral">&nbsp;</span>
236
- <span class="cline-any cline-yes">9x</span>
237
- <span class="cline-any cline-yes">3x</span>
236
+ <span class="cline-any cline-yes">13x</span>
237
+ <span class="cline-any cline-yes">4x</span>
238
238
  <span class="cline-any cline-neutral">&nbsp;</span>
239
- <span class="cline-any cline-yes">6x</span>
240
- <span class="cline-any cline-yes">6x</span>
239
+ <span class="cline-any cline-yes">9x</span>
240
+ <span class="cline-any cline-yes">9x</span>
241
241
  <span class="cline-any cline-neutral">&nbsp;</span>
242
242
  <span class="cline-any cline-no">&nbsp;</span>
243
243
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -249,35 +249,35 @@
249
249
  <span class="cline-any cline-neutral">&nbsp;</span>
250
250
  <span class="cline-any cline-neutral">&nbsp;</span>
251
251
  <span class="cline-any cline-neutral">&nbsp;</span>
252
- <span class="cline-any cline-yes">9x</span>
252
+ <span class="cline-any cline-yes">13x</span>
253
253
  <span class="cline-any cline-neutral">&nbsp;</span>
254
- <span class="cline-any cline-yes">9x</span>
255
- <span class="cline-any cline-yes">9x</span>
256
- <span class="cline-any cline-yes">9x</span>
257
- <span class="cline-any cline-yes">9x</span>
254
+ <span class="cline-any cline-yes">13x</span>
255
+ <span class="cline-any cline-yes">13x</span>
256
+ <span class="cline-any cline-yes">13x</span>
257
+ <span class="cline-any cline-yes">13x</span>
258
258
  <span class="cline-any cline-neutral">&nbsp;</span>
259
259
  <span class="cline-any cline-neutral">&nbsp;</span>
260
260
  <span class="cline-any cline-neutral">&nbsp;</span>
261
261
  <span class="cline-any cline-neutral">&nbsp;</span>
262
262
  <span class="cline-any cline-neutral">&nbsp;</span>
263
263
  <span class="cline-any cline-neutral">&nbsp;</span>
264
- <span class="cline-any cline-yes">9x</span>
264
+ <span class="cline-any cline-yes">13x</span>
265
265
  <span class="cline-any cline-no">&nbsp;</span>
266
266
  <span class="cline-any cline-neutral">&nbsp;</span>
267
- <span class="cline-any cline-yes">9x</span>
267
+ <span class="cline-any cline-yes">13x</span>
268
268
  <span class="cline-any cline-no">&nbsp;</span>
269
269
  <span class="cline-any cline-neutral">&nbsp;</span>
270
270
  <span class="cline-any cline-neutral">&nbsp;</span>
271
- <span class="cline-any cline-yes">9x</span>
272
- <span class="cline-any cline-yes">9x</span>
273
- <span class="cline-any cline-yes">9x</span>
274
- <span class="cline-any cline-yes">9x</span>
275
- <span class="cline-any cline-yes">9x</span>
271
+ <span class="cline-any cline-yes">13x</span>
272
+ <span class="cline-any cline-yes">13x</span>
273
+ <span class="cline-any cline-yes">13x</span>
274
+ <span class="cline-any cline-yes">13x</span>
275
+ <span class="cline-any cline-yes">13x</span>
276
276
  <span class="cline-any cline-neutral">&nbsp;</span>
277
277
  <span class="cline-any cline-neutral">&nbsp;</span>
278
278
  <span class="cline-any cline-neutral">&nbsp;</span>
279
- <span class="cline-any cline-yes">9x</span>
280
- <span class="cline-any cline-yes">9x</span>
279
+ <span class="cline-any cline-yes">13x</span>
280
+ <span class="cline-any cline-yes">13x</span>
281
281
  <span class="cline-any cline-neutral">&nbsp;</span>
282
282
  <span class="cline-any cline-yes">1x</span>
283
283
  <span class="cline-any cline-yes">1x</span>
@@ -291,32 +291,32 @@
291
291
  <span class="cline-any cline-neutral">&nbsp;</span>
292
292
  <span class="cline-any cline-yes">1x</span>
293
293
  <span class="cline-any cline-neutral">&nbsp;</span>
294
- <span class="cline-any cline-yes">9x</span>
295
- <span class="cline-any cline-yes">9x</span>
296
- <span class="cline-any cline-yes">22x</span>
297
- <span class="cline-any cline-yes">22x</span>
298
- <span class="cline-any cline-yes">22x</span>
294
+ <span class="cline-any cline-yes">13x</span>
295
+ <span class="cline-any cline-yes">13x</span>
296
+ <span class="cline-any cline-yes">30x</span>
297
+ <span class="cline-any cline-yes">30x</span>
298
+ <span class="cline-any cline-yes">30x</span>
299
299
  <span class="cline-any cline-neutral">&nbsp;</span>
300
300
  <span class="cline-any cline-neutral">&nbsp;</span>
301
- <span class="cline-any cline-yes">22x</span>
302
- <span class="cline-any cline-yes">22x</span>
303
- <span class="cline-any cline-yes">21x</span>
301
+ <span class="cline-any cline-yes">30x</span>
302
+ <span class="cline-any cline-yes">30x</span>
303
+ <span class="cline-any cline-yes">26x</span>
304
304
  <span class="cline-any cline-neutral">&nbsp;</span>
305
305
  <span class="cline-any cline-neutral">&nbsp;</span>
306
306
  <span class="cline-any cline-neutral">&nbsp;</span>
307
307
  <span class="cline-any cline-neutral">&nbsp;</span>
308
- <span class="cline-any cline-yes">22x</span>
308
+ <span class="cline-any cline-yes">30x</span>
309
309
  <span class="cline-any cline-neutral">&nbsp;</span>
310
310
  <span class="cline-any cline-neutral">&nbsp;</span>
311
- <span class="cline-any cline-yes">9x</span>
312
- <span class="cline-any cline-yes">23x</span>
311
+ <span class="cline-any cline-yes">13x</span>
312
+ <span class="cline-any cline-yes">28x</span>
313
313
  <span class="cline-any cline-no">&nbsp;</span>
314
314
  <span class="cline-any cline-neutral">&nbsp;</span>
315
- <span class="cline-any cline-yes">23x</span>
315
+ <span class="cline-any cline-yes">28x</span>
316
316
  <span class="cline-any cline-neutral">&nbsp;</span>
317
- <span class="cline-any cline-yes">9x</span>
317
+ <span class="cline-any cline-yes">13x</span>
318
318
  <span class="cline-any cline-neutral">&nbsp;</span>
319
- <span class="cline-any cline-yes">9x</span>
319
+ <span class="cline-any cline-yes">13x</span>
320
320
  <span class="cline-any cline-neutral">&nbsp;</span>
321
321
  <span class="cline-any cline-yes">1x</span>
322
322
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">"use strict";
@@ -454,7 +454,7 @@ exports.getTraffic = getTraffic;
454
454
  <div class='footer quiet pad2 space-top1 center small'>
455
455
  Code coverage generated by
456
456
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
457
- at 2024-05-21T20:00:39.804Z
457
+ at 2024-05-26T15:36:17.447Z
458
458
  </div>
459
459
  <script src="../../prettify.js"></script>
460
460
  <script>
@@ -139,7 +139,7 @@ exports.checkIfObjectsAreEqual = checkIfObjectsAreEqual;
139
139
  <div class='footer quiet pad2 space-top1 center small'>
140
140
  Code coverage generated by
141
141
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
142
- at 2024-05-21T20:00:39.804Z
142
+ at 2024-05-26T15:36:17.447Z
143
143
  </div>
144
144
  <script src="../../prettify.js"></script>
145
145
  <script>
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at 2024-05-21T20:00:39.804Z
119
+ at 2024-05-26T15:36:17.447Z
120
120
  </div>
121
121
  <script src="../../prettify.js"></script>
122
122
  <script>
@@ -472,7 +472,7 @@ exports.getSegmentAssertionsFromMatrix = getSegmentAssertionsFromMatrix;
472
472
  <div class='footer quiet pad2 space-top1 center small'>
473
473
  Code coverage generated by
474
474
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
475
- at 2024-05-21T20:00:39.804Z
475
+ at 2024-05-26T15:36:17.447Z
476
476
  </div>
477
477
  <script src="../../prettify.js"></script>
478
478
  <script>
@@ -25,14 +25,14 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>25/25</span>
28
+ <span class='fraction'>27/27</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>5/5</span>
35
+ <span class='fraction'>6/6</span>
36
36
  </div>
37
37
 
38
38
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>25/25</span>
49
+ <span class='fraction'>27/27</span>
50
50
  </div>
51
51
 
52
52
 
@@ -104,46 +104,54 @@
104
104
  <a name='L39'></a><a href='#L39'>39</a>
105
105
  <a name='L40'></a><a href='#L40'>40</a>
106
106
  <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
108
112
  <span class="cline-any cline-neutral">&nbsp;</span>
109
113
  <span class="cline-any cline-yes">2x</span>
110
- <span class="cline-any cline-yes">29x</span>
114
+ <span class="cline-any cline-yes">37x</span>
111
115
  <span class="cline-any cline-neutral">&nbsp;</span>
112
- <span class="cline-any cline-yes">29x</span>
113
- <span class="cline-any cline-yes">29x</span>
114
- <span class="cline-any cline-yes">29x</span>
115
- <span class="cline-any cline-yes">34x</span>
116
- <span class="cline-any cline-yes">34x</span>
116
+ <span class="cline-any cline-yes">37x</span>
117
+ <span class="cline-any cline-yes">37x</span>
118
+ <span class="cline-any cline-yes">37x</span>
119
+ <span class="cline-any cline-yes">39x</span>
120
+ <span class="cline-any cline-yes">39x</span>
117
121
  <span class="cline-any cline-neutral">&nbsp;</span>
118
- <span class="cline-any cline-yes">34x</span>
119
- <span class="cline-any cline-yes">34x</span>
120
- <span class="cline-any cline-yes">34x</span>
121
- <span class="cline-any cline-yes">34x</span>
122
+ <span class="cline-any cline-yes">39x</span>
123
+ <span class="cline-any cline-yes">39x</span>
124
+ <span class="cline-any cline-yes">39x</span>
125
+ <span class="cline-any cline-yes">39x</span>
122
126
  <span class="cline-any cline-neutral">&nbsp;</span>
123
127
  <span class="cline-any cline-neutral">&nbsp;</span>
124
- <span class="cline-any cline-yes">29x</span>
128
+ <span class="cline-any cline-yes">37x</span>
125
129
  <span class="cline-any cline-neutral">&nbsp;</span>
126
130
  <span class="cline-any cline-neutral">&nbsp;</span>
127
131
  <span class="cline-any cline-yes">2x</span>
128
132
  <span class="cline-any cline-neutral">&nbsp;</span>
129
133
  <span class="cline-any cline-neutral">&nbsp;</span>
130
134
  <span class="cline-any cline-neutral">&nbsp;</span>
131
- <span class="cline-any cline-yes">30x</span>
135
+ <span class="cline-any cline-yes">38x</span>
136
+ <span class="cline-any cline-yes">4x</span>
132
137
  <span class="cline-any cline-neutral">&nbsp;</span>
133
- <span class="cline-any cline-yes">30x</span>
134
- <span class="cline-any cline-yes">30x</span>
135
- <span class="cline-any cline-yes">30x</span>
136
- <span class="cline-any cline-yes">35x</span>
137
- <span class="cline-any cline-yes">35x</span>
138
- <span class="cline-any cline-yes">35x</span>
139
- <span class="cline-any cline-yes">35x</span>
140
- <span class="cline-any cline-yes">23x</span>
141
138
  <span class="cline-any cline-neutral">&nbsp;</span>
142
- <span class="cline-any cline-yes">35x</span>
143
- <span class="cline-any cline-yes">35x</span>
139
+ <span class="cline-any cline-yes">34x</span>
144
140
  <span class="cline-any cline-neutral">&nbsp;</span>
141
+ <span class="cline-any cline-yes">34x</span>
142
+ <span class="cline-any cline-yes">34x</span>
143
+ <span class="cline-any cline-yes">34x</span>
144
+ <span class="cline-any cline-yes">40x</span>
145
+ <span class="cline-any cline-yes">40x</span>
146
+ <span class="cline-any cline-yes">40x</span>
147
+ <span class="cline-any cline-yes">40x</span>
148
+ <span class="cline-any cline-yes">27x</span>
145
149
  <span class="cline-any cline-neutral">&nbsp;</span>
146
- <span class="cline-any cline-yes">30x</span>
150
+ <span class="cline-any cline-yes">40x</span>
151
+ <span class="cline-any cline-yes">40x</span>
152
+ <span class="cline-any cline-neutral">&nbsp;</span>
153
+ <span class="cline-any cline-neutral">&nbsp;</span>
154
+ <span class="cline-any cline-yes">34x</span>
147
155
  <span class="cline-any cline-neutral">&nbsp;</span>
148
156
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Range, Percentage } from "@featurevisor/types";
149
157
  &nbsp;
@@ -169,6 +177,10 @@ export function getUpdatedAvailableRangesAfterFilling(
169
177
  availableRanges: Range[],
170
178
  fill: Percentage,
171
179
  ): Range[] {
180
+ if (fill === 0) {
181
+ return availableRanges;
182
+ }
183
+ &nbsp;
172
184
  const result: Range[] = [];
173
185
  &nbsp;
174
186
  let remaining = fill;
@@ -193,7 +205,7 @@ export function getUpdatedAvailableRangesAfterFilling(
193
205
  <div class='footer quiet pad2 space-top1 center small'>
194
206
  Code coverage generated by
195
207
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
196
- at 2024-05-21T20:00:39.804Z
208
+ at 2024-05-26T15:36:17.447Z
197
209
  </div>
198
210
  <script src="../../prettify.js"></script>
199
211
  <script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">93.75% </span>
26
+ <span class="strong">93.87% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>90/96</span>
28
+ <span class='fraction'>92/98</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">86.36% </span>
33
+ <span class="strong">86.66% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>38/44</span>
35
+ <span class='fraction'>39/45</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">93.68% </span>
47
+ <span class="strong">93.81% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>89/95</span>
49
+ <span class='fraction'>91/97</span>
50
50
  </div>
51
51
 
52
52
 
@@ -84,13 +84,13 @@
84
84
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
85
85
  </td>
86
86
  <td data-value="100" class="pct high">100%</td>
87
- <td data-value="25" class="abs high">25/25</td>
87
+ <td data-value="27" class="abs high">27/27</td>
88
88
  <td data-value="100" class="pct high">100%</td>
89
- <td data-value="5" class="abs high">5/5</td>
89
+ <td data-value="6" class="abs high">6/6</td>
90
90
  <td data-value="100" class="pct high">100%</td>
91
91
  <td data-value="2" class="abs high">2/2</td>
92
92
  <td data-value="100" class="pct high">100%</td>
93
- <td data-value="25" class="abs high">25/25</td>
93
+ <td data-value="27" class="abs high">27/27</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -131,7 +131,7 @@
131
131
  <div class='footer quiet pad2 space-top1 center small'>
132
132
  Code coverage generated by
133
133
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
134
- at 2024-05-21T20:00:39.804Z
134
+ at 2024-05-26T15:36:17.447Z
135
135
  </div>
136
136
  <script src="../../prettify.js"></script>
137
137
  <script>
@@ -136,7 +136,7 @@
136
136
  <div class='footer quiet pad2 space-top1 center small'>
137
137
  Code coverage generated by
138
138
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
139
- at 2024-05-21T20:00:39.804Z
139
+ at 2024-05-26T15:36:17.447Z
140
140
  </div>
141
141
  <script src="../../prettify.js"></script>
142
142
  <script>