@lexho111/plainblog 0.6.0 → 0.6.2
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.
- package/Blog.js +1 -6
- package/blog_test_empty.db +0 -0
- package/blog_test_load.db +0 -0
- package/coverage/clover.xml +638 -630
- package/coverage/coverage-final.json +14 -14
- package/coverage/lcov-report/index.html +36 -36
- package/coverage/lcov-report/package/Article.js.html +20 -20
- package/coverage/lcov-report/package/Blog.js.html +378 -339
- package/coverage/lcov-report/package/Formatter.js.html +2 -2
- package/coverage/lcov-report/package/build-scripts.js.html +1 -1
- package/coverage/lcov-report/package/build-styles.js.html +1 -1
- package/coverage/lcov-report/package/index.html +19 -19
- package/coverage/lcov-report/package/model/APIModel.js.html +8 -8
- package/coverage/lcov-report/package/model/DataModel.js.html +34 -16
- package/coverage/lcov-report/package/model/DatabaseModel.js.html +14 -11
- package/coverage/lcov-report/package/model/FileAdapter.js.html +26 -23
- package/coverage/lcov-report/package/model/FileModel.js.html +20 -17
- package/coverage/lcov-report/package/model/SequelizeAdapter.js.html +36 -36
- package/coverage/lcov-report/package/model/SqliteAdapter.js.html +11 -11
- package/coverage/lcov-report/package/model/datastructures/ArrayList.js.html +2 -2
- package/coverage/lcov-report/package/model/datastructures/ArrayListHashMap.js.html +1 -1
- package/coverage/lcov-report/package/model/datastructures/BinarySearchTree.js.html +71 -68
- package/coverage/lcov-report/package/model/datastructures/BinarySearchTreeHashMap.js.html +28 -19
- package/coverage/lcov-report/package/model/datastructures/FileList.js.html +1 -1
- package/coverage/lcov-report/package/model/datastructures/index.html +21 -21
- package/coverage/lcov-report/package/model/index.html +26 -26
- package/coverage/lcov-report/package/utilities.js.html +19 -19
- package/coverage/lcov.info +1193 -1178
- package/model/DataModel.js +1 -1
- package/model/DatabaseModel.js +1 -1
- package/model/FileAdapter.js +1 -1
- package/model/FileModel.js +1 -1
- package/model/datastructures/BinarySearchTree.js +1 -1
- package/model/datastructures/BinarySearchTreeHashMap.js +1 -1
- package/package.json +2 -4
- package/public/scripts.min.js +2 -2
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">68.88% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>31/45</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">59.09% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>13/22</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">
|
|
47
|
+
<span class="strong">67.44% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>29/43</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -220,8 +220,8 @@
|
|
|
220
220
|
<span class="cline-any cline-neutral"> </span>
|
|
221
221
|
<span class="cline-any cline-neutral"> </span>
|
|
222
222
|
<span class="cline-any cline-neutral"> </span>
|
|
223
|
-
<span class="cline-any cline-yes">
|
|
224
|
-
<span class="cline-any cline-yes">
|
|
223
|
+
<span class="cline-any cline-yes">3x</span>
|
|
224
|
+
<span class="cline-any cline-yes">3x</span>
|
|
225
225
|
<span class="cline-any cline-neutral"> </span>
|
|
226
226
|
<span class="cline-any cline-neutral"> </span>
|
|
227
227
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -233,14 +233,14 @@
|
|
|
233
233
|
<span class="cline-any cline-neutral"> </span>
|
|
234
234
|
<span class="cline-any cline-neutral"> </span>
|
|
235
235
|
<span class="cline-any cline-neutral"> </span>
|
|
236
|
-
<span class="cline-any cline-yes">
|
|
236
|
+
<span class="cline-any cline-yes">3x</span>
|
|
237
237
|
<span class="cline-any cline-neutral"> </span>
|
|
238
238
|
<span class="cline-any cline-neutral"> </span>
|
|
239
239
|
<span class="cline-any cline-neutral"> </span>
|
|
240
|
-
<span class="cline-any cline-yes">
|
|
240
|
+
<span class="cline-any cline-yes">9x</span>
|
|
241
241
|
<span class="cline-any cline-neutral"> </span>
|
|
242
|
-
<span class="cline-any cline-yes">
|
|
243
|
-
<span class="cline-any cline-yes">
|
|
242
|
+
<span class="cline-any cline-yes">3x</span>
|
|
243
|
+
<span class="cline-any cline-yes">3x</span>
|
|
244
244
|
<span class="cline-any cline-neutral"> </span>
|
|
245
245
|
<span class="cline-any cline-no"> </span>
|
|
246
246
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -261,14 +261,14 @@
|
|
|
261
261
|
<span class="cline-any cline-no"> </span>
|
|
262
262
|
<span class="cline-any cline-neutral"> </span>
|
|
263
263
|
<span class="cline-any cline-neutral"> </span>
|
|
264
|
-
<span class="cline-any cline-yes">
|
|
265
|
-
<span class="cline-any cline-yes">
|
|
266
|
-
<span class="cline-any cline-yes">
|
|
264
|
+
<span class="cline-any cline-yes">3x</span>
|
|
265
|
+
<span class="cline-any cline-yes">3x</span>
|
|
266
|
+
<span class="cline-any cline-yes">3x</span>
|
|
267
267
|
<span class="cline-any cline-neutral"> </span>
|
|
268
268
|
<span class="cline-any cline-neutral"> </span>
|
|
269
269
|
<span class="cline-any cline-neutral"> </span>
|
|
270
|
-
<span class="cline-any cline-yes">
|
|
271
|
-
<span class="cline-any cline-yes">
|
|
270
|
+
<span class="cline-any cline-yes">3x</span>
|
|
271
|
+
<span class="cline-any cline-yes">3x</span>
|
|
272
272
|
<span class="cline-any cline-neutral"> </span>
|
|
273
273
|
<span class="cline-any cline-neutral"> </span>
|
|
274
274
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -287,7 +287,7 @@
|
|
|
287
287
|
<span class="cline-any cline-neutral"> </span>
|
|
288
288
|
<span class="cline-any cline-neutral"> </span>
|
|
289
289
|
<span class="cline-any cline-neutral"> </span>
|
|
290
|
-
<span class="cline-any cline-yes">
|
|
290
|
+
<span class="cline-any cline-yes">3x</span>
|
|
291
291
|
<span class="cline-any cline-neutral"> </span>
|
|
292
292
|
<span class="cline-any cline-neutral"> </span>
|
|
293
293
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -298,14 +298,14 @@
|
|
|
298
298
|
<span class="cline-any cline-neutral"> </span>
|
|
299
299
|
<span class="cline-any cline-neutral"> </span>
|
|
300
300
|
<span class="cline-any cline-neutral"> </span>
|
|
301
|
-
<span class="cline-any cline-yes">
|
|
302
|
-
<span class="cline-any cline-yes">
|
|
301
|
+
<span class="cline-any cline-yes">3x</span>
|
|
302
|
+
<span class="cline-any cline-yes">3x</span>
|
|
303
303
|
<span class="cline-any cline-neutral"> </span>
|
|
304
304
|
<span class="cline-any cline-neutral"> </span>
|
|
305
|
-
<span class="cline-any cline-yes">
|
|
306
|
-
<span class="cline-any cline-yes">
|
|
307
|
-
<span class="cline-any cline-
|
|
308
|
-
<span class="cline-any cline-
|
|
305
|
+
<span class="cline-any cline-yes">3x</span>
|
|
306
|
+
<span class="cline-any cline-yes">3x</span>
|
|
307
|
+
<span class="cline-any cline-yes">1x</span>
|
|
308
|
+
<span class="cline-any cline-yes">1x</span>
|
|
309
309
|
<span class="cline-any cline-neutral"> </span>
|
|
310
310
|
<span class="cline-any cline-neutral"> </span>
|
|
311
311
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -317,16 +317,16 @@
|
|
|
317
317
|
<span class="cline-any cline-neutral"> </span>
|
|
318
318
|
<span class="cline-any cline-neutral"> </span>
|
|
319
319
|
<span class="cline-any cline-neutral"> </span>
|
|
320
|
-
<span class="cline-any cline-yes">
|
|
321
|
-
<span class="cline-any cline-yes">
|
|
322
|
-
<span class="cline-any cline-yes">
|
|
320
|
+
<span class="cline-any cline-yes">3x</span>
|
|
321
|
+
<span class="cline-any cline-yes">3x</span>
|
|
322
|
+
<span class="cline-any cline-yes">3x</span>
|
|
323
323
|
<span class="cline-any cline-no"> </span>
|
|
324
324
|
<span class="cline-any cline-neutral"> </span>
|
|
325
325
|
<span class="cline-any cline-neutral"> </span>
|
|
326
|
-
<span class="cline-any cline-yes">
|
|
326
|
+
<span class="cline-any cline-yes">3x</span>
|
|
327
327
|
<span class="cline-any cline-no"> </span>
|
|
328
328
|
<span class="cline-any cline-neutral"> </span>
|
|
329
|
-
<span class="cline-any cline-yes">
|
|
329
|
+
<span class="cline-any cline-yes">3x</span>
|
|
330
330
|
<span class="cline-any cline-neutral"> </span>
|
|
331
331
|
<span class="cline-any cline-neutral"> </span>
|
|
332
332
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -335,7 +335,7 @@
|
|
|
335
335
|
<span class="cline-any cline-neutral"> </span>
|
|
336
336
|
<span class="cline-any cline-neutral"> </span>
|
|
337
337
|
<span class="cline-any cline-neutral"> </span>
|
|
338
|
-
<span class="cline-any cline-yes">
|
|
338
|
+
<span class="cline-any cline-yes">3x</span>
|
|
339
339
|
<span class="cline-any cline-yes">4x</span>
|
|
340
340
|
<span class="cline-any cline-neutral"> </span>
|
|
341
341
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -354,9 +354,9 @@
|
|
|
354
354
|
<span class="cline-any cline-neutral"> </span>
|
|
355
355
|
<span class="cline-any cline-neutral"> </span>
|
|
356
356
|
<span class="cline-any cline-neutral"> </span>
|
|
357
|
-
<span class="cline-any cline-yes">
|
|
357
|
+
<span class="cline-any cline-yes">3x</span>
|
|
358
358
|
<span class="cline-any cline-neutral"> </span>
|
|
359
|
-
<span class="cline-any cline-yes">
|
|
359
|
+
<span class="cline-any cline-yes">3x</span>
|
|
360
360
|
<span class="cline-any cline-neutral"> </span>
|
|
361
361
|
<span class="cline-any cline-neutral"> </span>
|
|
362
362
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -454,9 +454,9 @@ export default class SequelizeAdapter {
|
|
|
454
454
|
|
|
455
455
|
// Check for and create the initial blog title right after syncing.
|
|
456
456
|
const blogInfoCount = await this.BlogInfo.count();
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
457
|
+
if (blogInfoCount === 0) {
|
|
458
|
+
await this.BlogInfo.create({ title: "My Default Blog Title" });
|
|
459
|
+
console.log("initialized blog title in database.");
|
|
460
460
|
}
|
|
461
461
|
}
|
|
462
462
|
|
|
@@ -523,7 +523,7 @@ export default class SequelizeAdapter {
|
|
|
523
523
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
524
524
|
Code coverage generated by
|
|
525
525
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
526
|
-
at 2026-01-
|
|
526
|
+
at 2026-01-18T09:48:57.520Z
|
|
527
527
|
</div>
|
|
528
528
|
<script src="../../prettify.js"></script>
|
|
529
529
|
<script>
|
|
@@ -122,18 +122,18 @@
|
|
|
122
122
|
<span class="cline-any cline-neutral"> </span>
|
|
123
123
|
<span class="cline-any cline-neutral"> </span>
|
|
124
124
|
<span class="cline-any cline-neutral"> </span>
|
|
125
|
-
<span class="cline-any cline-yes">
|
|
126
|
-
<span class="cline-any cline-yes">
|
|
125
|
+
<span class="cline-any cline-yes">3x</span>
|
|
126
|
+
<span class="cline-any cline-yes">3x</span>
|
|
127
127
|
<span class="cline-any cline-neutral"> </span>
|
|
128
128
|
<span class="cline-any cline-neutral"> </span>
|
|
129
|
-
<span class="cline-any cline-yes">
|
|
129
|
+
<span class="cline-any cline-yes">3x</span>
|
|
130
130
|
<span class="cline-any cline-neutral"> </span>
|
|
131
131
|
<span class="cline-any cline-neutral"> </span>
|
|
132
132
|
<span class="cline-any cline-neutral"> </span>
|
|
133
133
|
<span class="cline-any cline-neutral"> </span>
|
|
134
|
-
<span class="cline-any cline-yes">
|
|
135
|
-
<span class="cline-any cline-yes">
|
|
136
|
-
<span class="cline-any cline-yes">
|
|
134
|
+
<span class="cline-any cline-yes">3x</span>
|
|
135
|
+
<span class="cline-any cline-yes">3x</span>
|
|
136
|
+
<span class="cline-any cline-yes">3x</span>
|
|
137
137
|
<span class="cline-any cline-neutral"> </span>
|
|
138
138
|
<span class="cline-any cline-no"> </span>
|
|
139
139
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -152,15 +152,15 @@
|
|
|
152
152
|
<span class="cline-any cline-neutral"> </span>
|
|
153
153
|
<span class="cline-any cline-neutral"> </span>
|
|
154
154
|
<span class="cline-any cline-neutral"> </span>
|
|
155
|
-
<span class="cline-any cline-yes">
|
|
156
|
-
<span class="cline-any cline-yes">
|
|
157
|
-
<span class="cline-any cline-yes">
|
|
155
|
+
<span class="cline-any cline-yes">3x</span>
|
|
156
|
+
<span class="cline-any cline-yes">3x</span>
|
|
157
|
+
<span class="cline-any cline-yes">3x</span>
|
|
158
158
|
<span class="cline-any cline-neutral"> </span>
|
|
159
159
|
<span class="cline-any cline-neutral"> </span>
|
|
160
160
|
<span class="cline-any cline-neutral"> </span>
|
|
161
161
|
<span class="cline-any cline-neutral"> </span>
|
|
162
162
|
<span class="cline-any cline-neutral"> </span>
|
|
163
|
-
<span class="cline-any cline-yes">
|
|
163
|
+
<span class="cline-any cline-yes">3x</span>
|
|
164
164
|
<span class="cline-any cline-neutral"> </span>
|
|
165
165
|
<span class="cline-any cline-no"> </span>
|
|
166
166
|
<span class="cline-any cline-no"> </span>
|
|
@@ -232,7 +232,7 @@ export default class SqliteAdapter extends SequelizeAdapter {
|
|
|
232
232
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
233
233
|
Code coverage generated by
|
|
234
234
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
235
|
-
at 2026-01-
|
|
235
|
+
at 2026-01-18T09:48:57.520Z
|
|
236
236
|
</div>
|
|
237
237
|
<script src="../../prettify.js"></script>
|
|
238
238
|
<script>
|
|
@@ -224,7 +224,7 @@
|
|
|
224
224
|
<span class="cline-any cline-neutral"> </span>
|
|
225
225
|
<span class="cline-any cline-neutral"> </span>
|
|
226
226
|
<span class="cline-any cline-yes">101000x</span>
|
|
227
|
-
<span class="cline-any cline-yes">
|
|
227
|
+
<span class="cline-any cline-yes">500493140x</span>
|
|
228
228
|
<span class="cline-any cline-neutral"> </span>
|
|
229
229
|
<span class="cline-any cline-neutral"> </span>
|
|
230
230
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -424,7 +424,7 @@
|
|
|
424
424
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
425
425
|
Code coverage generated by
|
|
426
426
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
427
|
-
at 2026-01-
|
|
427
|
+
at 2026-01-18T09:48:57.520Z
|
|
428
428
|
</div>
|
|
429
429
|
<script src="../../../prettify.js"></script>
|
|
430
430
|
<script>
|
|
@@ -181,7 +181,7 @@ export default class ArrayListHashMap extends ArrayList {
|
|
|
181
181
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
182
182
|
Code coverage generated by
|
|
183
183
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
184
|
-
at 2026-01-
|
|
184
|
+
at 2026-01-18T09:48:57.520Z
|
|
185
185
|
</div>
|
|
186
186
|
<script src="../../../prettify.js"></script>
|
|
187
187
|
<script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">69.93% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>100/143</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">66% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>66/100</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">
|
|
47
|
+
<span class="strong">73.22% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>93/127</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -339,22 +339,24 @@
|
|
|
339
339
|
<a name='L274'></a><a href='#L274'>274</a>
|
|
340
340
|
<a name='L275'></a><a href='#L275'>275</a>
|
|
341
341
|
<a name='L276'></a><a href='#L276'>276</a>
|
|
342
|
-
<a name='L277'></a><a href='#L277'>277</a
|
|
342
|
+
<a name='L277'></a><a href='#L277'>277</a>
|
|
343
|
+
<a name='L278'></a><a href='#L278'>278</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
343
344
|
<span class="cline-any cline-neutral"> </span>
|
|
344
345
|
<span class="cline-any cline-neutral"> </span>
|
|
345
|
-
<span class="cline-any cline-yes">5x</span>
|
|
346
346
|
<span class="cline-any cline-neutral"> </span>
|
|
347
|
+
<span class="cline-any cline-yes">6x</span>
|
|
347
348
|
<span class="cline-any cline-neutral"> </span>
|
|
348
349
|
<span class="cline-any cline-neutral"> </span>
|
|
349
|
-
<span class="cline-any cline-yes">622038x</span>
|
|
350
|
-
<span class="cline-any cline-yes">622038x</span>
|
|
351
|
-
<span class="cline-any cline-yes">622038x</span>
|
|
352
350
|
<span class="cline-any cline-neutral"> </span>
|
|
351
|
+
<span class="cline-any cline-yes">631237x</span>
|
|
352
|
+
<span class="cline-any cline-yes">631237x</span>
|
|
353
|
+
<span class="cline-any cline-yes">631237x</span>
|
|
353
354
|
<span class="cline-any cline-neutral"> </span>
|
|
354
355
|
<span class="cline-any cline-neutral"> </span>
|
|
355
356
|
<span class="cline-any cline-neutral"> </span>
|
|
356
357
|
<span class="cline-any cline-neutral"> </span>
|
|
357
|
-
<span class="cline-any cline-
|
|
358
|
+
<span class="cline-any cline-neutral"> </span>
|
|
359
|
+
<span class="cline-any cline-yes">50x</span>
|
|
358
360
|
<span class="cline-any cline-neutral"> </span>
|
|
359
361
|
<span class="cline-any cline-neutral"> </span>
|
|
360
362
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -367,27 +369,27 @@
|
|
|
367
369
|
<span class="cline-any cline-neutral"> </span>
|
|
368
370
|
<span class="cline-any cline-neutral"> </span>
|
|
369
371
|
<span class="cline-any cline-neutral"> </span>
|
|
370
|
-
<span class="cline-any cline-yes">
|
|
371
|
-
<span class="cline-any cline-yes">
|
|
372
|
-
<span class="cline-any cline-yes">
|
|
373
|
-
<span class="cline-any cline-yes">
|
|
372
|
+
<span class="cline-any cline-yes">631237x</span>
|
|
373
|
+
<span class="cline-any cline-yes">631237x</span>
|
|
374
|
+
<span class="cline-any cline-yes">45x</span>
|
|
375
|
+
<span class="cline-any cline-yes">45x</span>
|
|
374
376
|
<span class="cline-any cline-neutral"> </span>
|
|
375
|
-
<span class="cline-any cline-yes">
|
|
376
|
-
<span class="cline-any cline-yes">
|
|
377
|
-
<span class="cline-any cline-yes">
|
|
377
|
+
<span class="cline-any cline-yes">631192x</span>
|
|
378
|
+
<span class="cline-any cline-yes">631192x</span>
|
|
379
|
+
<span class="cline-any cline-yes">631192x</span>
|
|
378
380
|
<span class="cline-any cline-neutral"> </span>
|
|
379
|
-
<span class="cline-any cline-yes">
|
|
380
|
-
<span class="cline-any cline-yes">
|
|
381
|
-
<span class="cline-any cline-yes">
|
|
382
|
-
<span class="cline-any cline-yes">
|
|
381
|
+
<span class="cline-any cline-yes">61568770x</span>
|
|
382
|
+
<span class="cline-any cline-yes">5672142x</span>
|
|
383
|
+
<span class="cline-any cline-yes">313477x</span>
|
|
384
|
+
<span class="cline-any cline-yes">313477x</span>
|
|
383
385
|
<span class="cline-any cline-neutral"> </span>
|
|
384
|
-
<span class="cline-any cline-yes">
|
|
386
|
+
<span class="cline-any cline-yes">5358665x</span>
|
|
385
387
|
<span class="cline-any cline-neutral"> </span>
|
|
386
|
-
<span class="cline-any cline-yes">
|
|
387
|
-
<span class="cline-any cline-yes">
|
|
388
|
-
<span class="cline-any cline-yes">
|
|
388
|
+
<span class="cline-any cline-yes">55896628x</span>
|
|
389
|
+
<span class="cline-any cline-yes">317715x</span>
|
|
390
|
+
<span class="cline-any cline-yes">317715x</span>
|
|
389
391
|
<span class="cline-any cline-neutral"> </span>
|
|
390
|
-
<span class="cline-any cline-yes">
|
|
392
|
+
<span class="cline-any cline-yes">55578913x</span>
|
|
391
393
|
<span class="cline-any cline-neutral"> </span>
|
|
392
394
|
<span class="cline-any cline-neutral"> </span>
|
|
393
395
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -442,13 +444,13 @@
|
|
|
442
444
|
<span class="cline-any cline-neutral"> </span>
|
|
443
445
|
<span class="cline-any cline-yes">46x</span>
|
|
444
446
|
<span class="cline-any cline-yes">46x</span>
|
|
445
|
-
<span class="cline-any cline-yes">
|
|
446
|
-
<span class="cline-any cline-yes">
|
|
447
|
-
<span class="cline-any cline-yes">
|
|
447
|
+
<span class="cline-any cline-yes">119230x</span>
|
|
448
|
+
<span class="cline-any cline-yes">119230x</span>
|
|
449
|
+
<span class="cline-any cline-yes">119230x</span>
|
|
448
450
|
<span class="cline-any cline-neutral"> </span>
|
|
449
|
-
<span class="cline-any cline-yes">
|
|
450
|
-
<span class="cline-any cline-yes">
|
|
451
|
-
<span class="cline-any cline-yes">
|
|
451
|
+
<span class="cline-any cline-yes">119230x</span>
|
|
452
|
+
<span class="cline-any cline-yes">119230x</span>
|
|
453
|
+
<span class="cline-any cline-yes">119230x</span>
|
|
452
454
|
<span class="cline-any cline-neutral"> </span>
|
|
453
455
|
<span class="cline-any cline-neutral"> </span>
|
|
454
456
|
<span class="cline-any cline-no"> </span>
|
|
@@ -497,7 +499,7 @@
|
|
|
497
499
|
<span class="cline-any cline-neutral"> </span>
|
|
498
500
|
<span class="cline-any cline-neutral"> </span>
|
|
499
501
|
<span class="cline-any cline-yes">1509x</span>
|
|
500
|
-
<span class="cline-any cline-yes">
|
|
502
|
+
<span class="cline-any cline-yes">1484x</span>
|
|
501
503
|
<span class="cline-any cline-neutral"> </span>
|
|
502
504
|
<span class="cline-any cline-neutral"> </span>
|
|
503
505
|
<span class="cline-any cline-yes">1509x</span>
|
|
@@ -511,7 +513,7 @@
|
|
|
511
513
|
<span class="cline-any cline-neutral"> </span>
|
|
512
514
|
<span class="cline-any cline-neutral"> </span>
|
|
513
515
|
<span class="cline-any cline-yes">1509x</span>
|
|
514
|
-
<span class="cline-any cline-yes">
|
|
516
|
+
<span class="cline-any cline-yes">1497x</span>
|
|
515
517
|
<span class="cline-any cline-neutral"> </span>
|
|
516
518
|
<span class="cline-any cline-neutral"> </span>
|
|
517
519
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -543,12 +545,12 @@
|
|
|
543
545
|
<span class="cline-any cline-neutral"> </span>
|
|
544
546
|
<span class="cline-any cline-yes">8x</span>
|
|
545
547
|
<span class="cline-any cline-neutral"> </span>
|
|
546
|
-
<span class="cline-any cline-yes">
|
|
547
|
-
<span class="cline-any cline-yes">
|
|
548
|
-
<span class="cline-any cline-
|
|
549
|
-
<span class="cline-any cline-
|
|
550
|
-
<span class="cline-any cline-
|
|
551
|
-
<span class="cline-any cline-
|
|
548
|
+
<span class="cline-any cline-yes">2x</span>
|
|
549
|
+
<span class="cline-any cline-yes">2x</span>
|
|
550
|
+
<span class="cline-any cline-no"> </span>
|
|
551
|
+
<span class="cline-any cline-no"> </span>
|
|
552
|
+
<span class="cline-any cline-no"> </span>
|
|
553
|
+
<span class="cline-any cline-no"> </span>
|
|
552
554
|
<span class="cline-any cline-neutral"> </span>
|
|
553
555
|
<span class="cline-any cline-no"> </span>
|
|
554
556
|
<span class="cline-any cline-no"> </span>
|
|
@@ -556,34 +558,34 @@
|
|
|
556
558
|
<span class="cline-any cline-neutral"> </span>
|
|
557
559
|
<span class="cline-any cline-neutral"> </span>
|
|
558
560
|
<span class="cline-any cline-neutral"> </span>
|
|
559
|
-
<span class="cline-any cline-yes">
|
|
560
|
-
<span class="cline-any cline-yes">
|
|
561
|
-
<span class="cline-any cline-yes">
|
|
562
|
-
<span class="cline-any cline-yes">
|
|
563
|
-
<span class="cline-any cline-yes">
|
|
561
|
+
<span class="cline-any cline-yes">6x</span>
|
|
562
|
+
<span class="cline-any cline-yes">6x</span>
|
|
563
|
+
<span class="cline-any cline-yes">6x</span>
|
|
564
|
+
<span class="cline-any cline-yes">18x</span>
|
|
565
|
+
<span class="cline-any cline-yes">18x</span>
|
|
564
566
|
<span class="cline-any cline-yes">2x</span>
|
|
565
567
|
<span class="cline-any cline-yes">2x</span>
|
|
566
568
|
<span class="cline-any cline-yes">2x</span>
|
|
567
569
|
<span class="cline-any cline-yes">2x</span>
|
|
568
570
|
<span class="cline-any cline-neutral"> </span>
|
|
569
|
-
<span class="cline-any cline-yes">
|
|
570
|
-
<span class="cline-any cline-yes">
|
|
571
|
+
<span class="cline-any cline-yes">16x</span>
|
|
572
|
+
<span class="cline-any cline-yes">8x</span>
|
|
571
573
|
<span class="cline-any cline-neutral"> </span>
|
|
572
574
|
<span class="cline-any cline-neutral"> </span>
|
|
573
575
|
<span class="cline-any cline-neutral"> </span>
|
|
574
576
|
<span class="cline-any cline-neutral"> </span>
|
|
575
|
-
<span class="cline-any cline-yes">
|
|
576
|
-
<span class="cline-any cline-
|
|
577
|
+
<span class="cline-any cline-yes">16x</span>
|
|
578
|
+
<span class="cline-any cline-yes">4x</span>
|
|
577
579
|
<span class="cline-any cline-neutral"> </span>
|
|
578
580
|
<span class="cline-any cline-neutral"> </span>
|
|
579
581
|
<span class="cline-any cline-neutral"> </span>
|
|
580
582
|
<span class="cline-any cline-yes">8x</span>
|
|
581
583
|
<span class="cline-any cline-neutral"> </span>
|
|
582
584
|
<span class="cline-any cline-neutral"> </span>
|
|
583
|
-
<span class="cline-any cline-yes">6x</span>
|
|
584
585
|
<span class="cline-any cline-yes">4x</span>
|
|
585
586
|
<span class="cline-any cline-yes">2x</span>
|
|
586
587
|
<span class="cline-any cline-no"> </span>
|
|
588
|
+
<span class="cline-any cline-no"> </span>
|
|
587
589
|
<span class="cline-any cline-yes">2x</span>
|
|
588
590
|
<span class="cline-any cline-no"> </span>
|
|
589
591
|
<span class="cline-any cline-no"> </span>
|
|
@@ -604,18 +606,19 @@
|
|
|
604
606
|
<span class="cline-any cline-no"> </span>
|
|
605
607
|
<span class="cline-any cline-no"> </span>
|
|
606
608
|
<span class="cline-any cline-neutral"> </span>
|
|
607
|
-
<span class="cline-any cline-
|
|
609
|
+
<span class="cline-any cline-no"> </span>
|
|
608
610
|
<span class="cline-any cline-neutral"> </span>
|
|
609
611
|
<span class="cline-any cline-neutral"> </span>
|
|
610
612
|
<span class="cline-any cline-neutral"> </span>
|
|
611
|
-
<span class="cline-any cline-yes">
|
|
613
|
+
<span class="cline-any cline-yes">24x</span>
|
|
612
614
|
<span class="cline-any cline-neutral"> </span>
|
|
613
615
|
<span class="cline-any cline-neutral"> </span>
|
|
614
616
|
<span class="cline-any cline-neutral"> </span>
|
|
615
617
|
<span class="cline-any cline-yes">4x</span>
|
|
616
618
|
<span class="cline-any cline-neutral"> </span>
|
|
617
619
|
<span class="cline-any cline-neutral"> </span>
|
|
618
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"
|
|
620
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">//import createDebug from "debug";
|
|
621
|
+
import { debuglog as createDebug } from "node:util";
|
|
619
622
|
import Article from "../../Article.js";
|
|
620
623
|
|
|
621
624
|
const debug = createDebug("plainblog:BinarySearchTree");
|
|
@@ -820,12 +823,12 @@ export class BinarySearchTree {
|
|
|
820
823
|
if (date !== null) {
|
|
821
824
|
// Optimized search using BST property (Date)
|
|
822
825
|
while (current) {
|
|
823
|
-
if (current.article.id == id) break;
|
|
824
|
-
parent = current
|
|
825
|
-
if (date < current.article.createdAt) {
|
|
826
|
-
current = current.left
|
|
827
|
-
isLeftChild = true
|
|
828
|
-
} else
|
|
826
|
+
<span class="missing-if-branch" title="else path not taken" >E</span>if (current.article.id == id) break;
|
|
827
|
+
<span class="cstat-no" title="statement not covered" > parent = current;</span>
|
|
828
|
+
<span class="cstat-no" title="statement not covered" > if (date < current.article.createdAt) {</span>
|
|
829
|
+
<span class="cstat-no" title="statement not covered" > current = current.left;</span>
|
|
830
|
+
<span class="cstat-no" title="statement not covered" > isLeftChild = true;</span>
|
|
831
|
+
} else {
|
|
829
832
|
<span class="cstat-no" title="statement not covered" > current = current.right;</span>
|
|
830
833
|
<span class="cstat-no" title="statement not covered" > isLeftChild = false;</span>
|
|
831
834
|
}
|
|
@@ -848,8 +851,8 @@ export class BinarySearchTree {
|
|
|
848
851
|
parent: item.node,
|
|
849
852
|
isLeft: false,
|
|
850
853
|
});
|
|
851
|
-
|
|
852
|
-
|
|
854
|
+
if (item.node.left)
|
|
855
|
+
stack.push({ node: item.node.left, parent: item.node, isLeft: true });
|
|
853
856
|
}
|
|
854
857
|
}
|
|
855
858
|
|
|
@@ -857,9 +860,9 @@ export class BinarySearchTree {
|
|
|
857
860
|
|
|
858
861
|
// 2. Delete node
|
|
859
862
|
if (!current.left && !current.right) {
|
|
860
|
-
if (!parent) return null; // Root was deleted
|
|
861
|
-
if (isLeftChild) parent.left = null
|
|
862
|
-
else <span class="cstat-no" title="statement not covered"
|
|
863
|
+
<span class="missing-if-branch" title="else path not taken" >E</span>if (!parent) return null; // Root was deleted
|
|
864
|
+
<span class="cstat-no" title="statement not covered" > if (isLeftChild) <span class="cstat-no" title="statement not covered" >parent.left = null;</span></span>
|
|
865
|
+
else <span class="cstat-no" title="statement not covered" >parent.right = null;</span>
|
|
863
866
|
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (!current.right) {
|
|
864
867
|
<span class="cstat-no" title="statement not covered" > if (!parent) <span class="cstat-no" title="statement not covered" >return current.left;</span></span>
|
|
865
868
|
<span class="cstat-no" title="statement not covered" > if (isLeftChild) <span class="cstat-no" title="statement not covered" >parent.left = current.left;</span></span>
|
|
@@ -880,7 +883,7 @@ export class BinarySearchTree {
|
|
|
880
883
|
<span class="cstat-no" title="statement not covered" > if (successorParent === current) <span class="cstat-no" title="statement not covered" >successorParent.right = successor.right;</span></span>
|
|
881
884
|
else <span class="cstat-no" title="statement not covered" >successorParent.left = successor.right;</span>
|
|
882
885
|
}
|
|
883
|
-
return root
|
|
886
|
+
<span class="cstat-no" title="statement not covered" > return root;</span>
|
|
884
887
|
}
|
|
885
888
|
|
|
886
889
|
clear() {
|
|
@@ -898,7 +901,7 @@ export class BinarySearchTree {
|
|
|
898
901
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
899
902
|
Code coverage generated by
|
|
900
903
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
901
|
-
at 2026-01-
|
|
904
|
+
at 2026-01-18T09:48:57.520Z
|
|
902
905
|
</div>
|
|
903
906
|
<script src="../../../prettify.js"></script>
|
|
904
907
|
<script>
|