@pixwel/pixwel-sdk 2.1.26 → 2.1.28
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/coverage/clover.xml +445 -418
- package/coverage/coverage-final.json +14 -14
- package/coverage/lcov-report/Ass.js.html +176 -176
- package/coverage/lcov-report/Asset.js.html +4 -4
- package/coverage/lcov-report/AssetType.js.html +12 -12
- package/coverage/lcov-report/Encode.js.html +12 -12
- package/coverage/lcov-report/File.js.html +17 -17
- package/coverage/lcov-report/Filename.js.html +1 -1
- package/coverage/lcov-report/Ingest.js.html +520 -520
- package/coverage/lcov-report/IngestFile.js.html +5 -5
- package/coverage/lcov-report/Model.js.html +144 -144
- package/coverage/lcov-report/Order.js.html +33 -30
- package/coverage/lcov-report/Srt.js.html +97 -97
- package/coverage/lcov-report/Sub.js.html +35 -35
- package/coverage/lcov-report/Tag.js.html +12 -12
- package/coverage/lcov-report/TimeFormat.js.html +14 -14
- package/coverage/lcov-report/fileType.js.html +14 -14
- package/coverage/lcov-report/index.html +82 -82
- package/coverage/lcov.info +953 -852
- package/dist/src/Ingest.js +2 -2
- package/dist/src/Order.js +1 -0
- package/package.json +1 -1
- package/src/Ingest.js +2 -2
- package/src/Order.js +1 -0
- package/test/Ingest.spec.js +62 -17
- package/test/Order.spec.js +7 -1
|
@@ -20,24 +20,24 @@
|
|
|
20
20
|
</h1>
|
|
21
21
|
<div class='clearfix'>
|
|
22
22
|
<div class='fl pad1y space-right2'>
|
|
23
|
-
<span class="strong">
|
|
23
|
+
<span class="strong">20.78% </span>
|
|
24
24
|
<span class="quiet">Statements</span>
|
|
25
|
-
<span class='fraction'>
|
|
25
|
+
<span class='fraction'>16/77</span>
|
|
26
26
|
</div>
|
|
27
27
|
<div class='fl pad1y space-right2'>
|
|
28
28
|
<span class="strong">0% </span>
|
|
29
29
|
<span class="quiet">Branches</span>
|
|
30
|
-
<span class='fraction'>0/
|
|
30
|
+
<span class='fraction'>0/32</span>
|
|
31
31
|
</div>
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">24% </span>
|
|
34
34
|
<span class="quiet">Functions</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>6/25</span>
|
|
36
36
|
</div>
|
|
37
37
|
<div class='fl pad1y space-right2'>
|
|
38
|
-
<span class="strong">
|
|
38
|
+
<span class="strong">21.33% </span>
|
|
39
39
|
<span class="quiet">Lines</span>
|
|
40
|
-
<span class='fraction'>
|
|
40
|
+
<span class='fraction'>16/75</span>
|
|
41
41
|
</div>
|
|
42
42
|
</div>
|
|
43
43
|
</div>
|
|
@@ -295,12 +295,8 @@
|
|
|
295
295
|
250
|
|
296
296
|
251
|
|
297
297
|
252
|
|
298
|
-
253</td><td class="line-coverage quiet"><span class="cline-any cline-
|
|
299
|
-
<span class="cline-any cline-no"> </span>
|
|
300
|
-
<span class="cline-any cline-no"> </span>
|
|
298
|
+
253</td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
301
299
|
<span class="cline-any cline-neutral"> </span>
|
|
302
|
-
<span class="cline-any cline-no"> </span>
|
|
303
|
-
<span class="cline-any cline-no"> </span>
|
|
304
300
|
<span class="cline-any cline-neutral"> </span>
|
|
305
301
|
<span class="cline-any cline-neutral"> </span>
|
|
306
302
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -314,22 +310,25 @@
|
|
|
314
310
|
<span class="cline-any cline-neutral"> </span>
|
|
315
311
|
<span class="cline-any cline-neutral"> </span>
|
|
316
312
|
<span class="cline-any cline-neutral"> </span>
|
|
317
|
-
<span class="cline-any cline-no"> </span>
|
|
318
313
|
<span class="cline-any cline-neutral"> </span>
|
|
319
314
|
<span class="cline-any cline-neutral"> </span>
|
|
320
315
|
<span class="cline-any cline-neutral"> </span>
|
|
321
316
|
<span class="cline-any cline-neutral"> </span>
|
|
317
|
+
<span class="cline-any cline-yes">1x</span>
|
|
322
318
|
<span class="cline-any cline-neutral"> </span>
|
|
323
319
|
<span class="cline-any cline-neutral"> </span>
|
|
324
320
|
<span class="cline-any cline-neutral"> </span>
|
|
325
321
|
<span class="cline-any cline-neutral"> </span>
|
|
326
322
|
<span class="cline-any cline-neutral"> </span>
|
|
327
323
|
<span class="cline-any cline-neutral"> </span>
|
|
328
|
-
<span class="cline-any cline-no"> </span>
|
|
329
324
|
<span class="cline-any cline-neutral"> </span>
|
|
330
325
|
<span class="cline-any cline-neutral"> </span>
|
|
331
326
|
<span class="cline-any cline-neutral"> </span>
|
|
332
327
|
<span class="cline-any cline-neutral"> </span>
|
|
328
|
+
<span class="cline-any cline-yes">54x</span>
|
|
329
|
+
<span class="cline-any cline-neutral"> </span>
|
|
330
|
+
<span class="cline-any cline-neutral"> </span>
|
|
331
|
+
<span class="cline-any cline-neutral"> </span>
|
|
333
332
|
<span class="cline-any cline-neutral"> </span>
|
|
334
333
|
<span class="cline-any cline-neutral"> </span>
|
|
335
334
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -337,13 +336,14 @@
|
|
|
337
336
|
<span class="cline-any cline-neutral"> </span>
|
|
338
337
|
<span class="cline-any cline-neutral"> </span>
|
|
339
338
|
<span class="cline-any cline-neutral"> </span>
|
|
340
|
-
<span class="cline-any cline-
|
|
341
|
-
<span class="cline-any cline-
|
|
342
|
-
<span class="cline-any cline-
|
|
343
|
-
<span class="cline-any cline-
|
|
344
|
-
<span class="cline-any cline-
|
|
345
|
-
<span class="cline-any cline-
|
|
346
|
-
<span class="cline-any cline-
|
|
339
|
+
<span class="cline-any cline-neutral"> </span>
|
|
340
|
+
<span class="cline-any cline-neutral"> </span>
|
|
341
|
+
<span class="cline-any cline-yes">54x</span>
|
|
342
|
+
<span class="cline-any cline-yes">54x</span>
|
|
343
|
+
<span class="cline-any cline-yes">54x</span>
|
|
344
|
+
<span class="cline-any cline-yes">54x</span>
|
|
345
|
+
<span class="cline-any cline-yes">54x</span>
|
|
346
|
+
<span class="cline-any cline-yes">54x</span>
|
|
347
347
|
<span class="cline-any cline-neutral"> </span>
|
|
348
348
|
<span class="cline-any cline-neutral"> </span>
|
|
349
349
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -375,37 +375,32 @@
|
|
|
375
375
|
<span class="cline-any cline-neutral"> </span>
|
|
376
376
|
<span class="cline-any cline-neutral"> </span>
|
|
377
377
|
<span class="cline-any cline-neutral"> </span>
|
|
378
|
-
<span class="cline-any cline-neutral"> </span>
|
|
379
|
-
<span class="cline-any cline-neutral"> </span>
|
|
380
|
-
<span class="cline-any cline-neutral"> </span>
|
|
381
|
-
<span class="cline-any cline-neutral"> </span>
|
|
382
|
-
<span class="cline-any cline-neutral"> </span>
|
|
383
|
-
<span class="cline-any cline-no"> </span>
|
|
384
378
|
<span class="cline-any cline-no"> </span>
|
|
385
379
|
<span class="cline-any cline-neutral"> </span>
|
|
386
|
-
<span class="cline-any cline-no"> </span>
|
|
387
380
|
<span class="cline-any cline-neutral"> </span>
|
|
388
381
|
<span class="cline-any cline-neutral"> </span>
|
|
389
|
-
<span class="cline-any cline-no"> </span>
|
|
390
|
-
<span class="cline-any cline-no"> </span>
|
|
391
|
-
<span class="cline-any cline-no"> </span>
|
|
392
|
-
<span class="cline-any cline-no"> </span>
|
|
393
382
|
<span class="cline-any cline-neutral"> </span>
|
|
394
|
-
<span class="cline-any cline-no"> </span>
|
|
395
383
|
<span class="cline-any cline-neutral"> </span>
|
|
384
|
+
<span class="cline-any cline-yes">114x</span>
|
|
396
385
|
<span class="cline-any cline-neutral"> </span>
|
|
386
|
+
<span class="cline-any cline-yes">1005x</span>
|
|
397
387
|
<span class="cline-any cline-neutral"> </span>
|
|
398
388
|
<span class="cline-any cline-neutral"> </span>
|
|
389
|
+
<span class="cline-any cline-yes">114x</span>
|
|
390
|
+
<span class="cline-any cline-yes">114x</span>
|
|
391
|
+
<span class="cline-any cline-yes">114x</span>
|
|
392
|
+
<span class="cline-any cline-yes">430x</span>
|
|
399
393
|
<span class="cline-any cline-neutral"> </span>
|
|
394
|
+
<span class="cline-any cline-yes">114x</span>
|
|
400
395
|
<span class="cline-any cline-neutral"> </span>
|
|
401
396
|
<span class="cline-any cline-neutral"> </span>
|
|
402
397
|
<span class="cline-any cline-neutral"> </span>
|
|
403
|
-
<span class="cline-any cline-no"> </span>
|
|
404
398
|
<span class="cline-any cline-neutral"> </span>
|
|
405
399
|
<span class="cline-any cline-neutral"> </span>
|
|
406
400
|
<span class="cline-any cline-neutral"> </span>
|
|
407
401
|
<span class="cline-any cline-neutral"> </span>
|
|
408
402
|
<span class="cline-any cline-neutral"> </span>
|
|
403
|
+
<span class="cline-any cline-no"> </span>
|
|
409
404
|
<span class="cline-any cline-neutral"> </span>
|
|
410
405
|
<span class="cline-any cline-neutral"> </span>
|
|
411
406
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -414,8 +409,13 @@
|
|
|
414
409
|
<span class="cline-any cline-neutral"> </span>
|
|
415
410
|
<span class="cline-any cline-neutral"> </span>
|
|
416
411
|
<span class="cline-any cline-neutral"> </span>
|
|
412
|
+
<span class="cline-any cline-no"> </span>
|
|
417
413
|
<span class="cline-any cline-neutral"> </span>
|
|
414
|
+
<span class="cline-any cline-no"> </span>
|
|
415
|
+
<span class="cline-any cline-no"> </span>
|
|
416
|
+
<span class="cline-any cline-no"> </span>
|
|
418
417
|
<span class="cline-any cline-neutral"> </span>
|
|
418
|
+
<span class="cline-any cline-no"> </span>
|
|
419
419
|
<span class="cline-any cline-neutral"> </span>
|
|
420
420
|
<span class="cline-any cline-neutral"> </span>
|
|
421
421
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -423,6 +423,7 @@
|
|
|
423
423
|
<span class="cline-any cline-no"> </span>
|
|
424
424
|
<span class="cline-any cline-neutral"> </span>
|
|
425
425
|
<span class="cline-any cline-neutral"> </span>
|
|
426
|
+
<span class="cline-any cline-no"> </span>
|
|
426
427
|
<span class="cline-any cline-neutral"> </span>
|
|
427
428
|
<span class="cline-any cline-neutral"> </span>
|
|
428
429
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -430,8 +431,7 @@
|
|
|
430
431
|
<span class="cline-any cline-neutral"> </span>
|
|
431
432
|
<span class="cline-any cline-neutral"> </span>
|
|
432
433
|
<span class="cline-any cline-neutral"> </span>
|
|
433
|
-
<span class="cline-any cline-
|
|
434
|
-
<span class="cline-any cline-no"> </span>
|
|
434
|
+
<span class="cline-any cline-yes">1x</span>
|
|
435
435
|
<span class="cline-any cline-neutral"> </span>
|
|
436
436
|
<span class="cline-any cline-neutral"> </span>
|
|
437
437
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -444,9 +444,8 @@
|
|
|
444
444
|
<span class="cline-any cline-neutral"> </span>
|
|
445
445
|
<span class="cline-any cline-neutral"> </span>
|
|
446
446
|
<span class="cline-any cline-neutral"> </span>
|
|
447
|
-
<span class="cline-any cline-no"> </span>
|
|
448
|
-
<span class="cline-any cline-no"> </span>
|
|
449
447
|
<span class="cline-any cline-neutral"> </span>
|
|
448
|
+
<span class="cline-any cline-no"> </span>
|
|
450
449
|
<span class="cline-any cline-neutral"> </span>
|
|
451
450
|
<span class="cline-any cline-neutral"> </span>
|
|
452
451
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -454,6 +453,7 @@
|
|
|
454
453
|
<span class="cline-any cline-neutral"> </span>
|
|
455
454
|
<span class="cline-any cline-neutral"> </span>
|
|
456
455
|
<span class="cline-any cline-neutral"> </span>
|
|
456
|
+
<span class="cline-any cline-no"> </span>
|
|
457
457
|
<span class="cline-any cline-neutral"> </span>
|
|
458
458
|
<span class="cline-any cline-no"> </span>
|
|
459
459
|
<span class="cline-any cline-no"> </span>
|
|
@@ -463,10 +463,10 @@
|
|
|
463
463
|
<span class="cline-any cline-no"> </span>
|
|
464
464
|
<span class="cline-any cline-neutral"> </span>
|
|
465
465
|
<span class="cline-any cline-neutral"> </span>
|
|
466
|
+
<span class="cline-any cline-no"> </span>
|
|
467
|
+
<span class="cline-any cline-no"> </span>
|
|
466
468
|
<span class="cline-any cline-neutral"> </span>
|
|
467
|
-
<span class="cline-any cline-
|
|
468
|
-
<span class="cline-any cline-neutral"> </span>
|
|
469
|
-
<span class="cline-any cline-neutral"> </span>
|
|
469
|
+
<span class="cline-any cline-no"> </span>
|
|
470
470
|
<span class="cline-any cline-neutral"> </span>
|
|
471
471
|
<span class="cline-any cline-neutral"> </span>
|
|
472
472
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -474,9 +474,7 @@
|
|
|
474
474
|
<span class="cline-any cline-no"> </span>
|
|
475
475
|
<span class="cline-any cline-neutral"> </span>
|
|
476
476
|
<span class="cline-any cline-neutral"> </span>
|
|
477
|
-
<span class="cline-any cline-
|
|
478
|
-
<span class="cline-any cline-neutral"> </span>
|
|
479
|
-
<span class="cline-any cline-neutral"> </span>
|
|
477
|
+
<span class="cline-any cline-no"> </span>
|
|
480
478
|
<span class="cline-any cline-neutral"> </span>
|
|
481
479
|
<span class="cline-any cline-neutral"> </span>
|
|
482
480
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -486,19 +484,15 @@
|
|
|
486
484
|
<span class="cline-any cline-neutral"> </span>
|
|
487
485
|
<span class="cline-any cline-neutral"> </span>
|
|
488
486
|
<span class="cline-any cline-no"> </span>
|
|
489
|
-
<span class="cline-any cline-
|
|
490
|
-
<span class="cline-any cline-neutral"> </span>
|
|
491
|
-
<span class="cline-any cline-neutral"> </span>
|
|
492
|
-
<span class="cline-any cline-neutral"> </span>
|
|
493
|
-
<span class="cline-any cline-neutral"> </span>
|
|
487
|
+
<span class="cline-any cline-no"> </span>
|
|
494
488
|
<span class="cline-any cline-no"> </span>
|
|
495
489
|
<span class="cline-any cline-neutral"> </span>
|
|
490
|
+
<span class="cline-any cline-no"> </span>
|
|
496
491
|
<span class="cline-any cline-neutral"> </span>
|
|
492
|
+
<span class="cline-any cline-no"> </span>
|
|
497
493
|
<span class="cline-any cline-neutral"> </span>
|
|
498
|
-
<span class="cline-any cline-
|
|
499
|
-
<span class="cline-any cline-
|
|
500
|
-
<span class="cline-any cline-neutral"> </span>
|
|
501
|
-
<span class="cline-any cline-neutral"> </span>
|
|
494
|
+
<span class="cline-any cline-no"> </span>
|
|
495
|
+
<span class="cline-any cline-no"> </span>
|
|
502
496
|
<span class="cline-any cline-neutral"> </span>
|
|
503
497
|
<span class="cline-any cline-neutral"> </span>
|
|
504
498
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -508,20 +502,21 @@
|
|
|
508
502
|
<span class="cline-any cline-neutral"> </span>
|
|
509
503
|
<span class="cline-any cline-neutral"> </span>
|
|
510
504
|
<span class="cline-any cline-no"> </span>
|
|
511
|
-
<span class="cline-any cline-
|
|
512
|
-
<span class="cline-any cline-neutral"> </span>
|
|
513
|
-
<span class="cline-any cline-neutral"> </span>
|
|
514
|
-
<span class="cline-any cline-neutral"> </span>
|
|
515
|
-
<span class="cline-any cline-neutral"> </span>
|
|
516
|
-
<span class="cline-any cline-neutral"> </span>
|
|
517
|
-
<span class="cline-any cline-neutral"> </span>
|
|
505
|
+
<span class="cline-any cline-no"> </span>
|
|
518
506
|
<span class="cline-any cline-no"> </span>
|
|
519
507
|
<span class="cline-any cline-neutral"> </span>
|
|
508
|
+
<span class="cline-any cline-no"> </span>
|
|
509
|
+
<span class="cline-any cline-no"> </span>
|
|
510
|
+
<span class="cline-any cline-no"> </span>
|
|
520
511
|
<span class="cline-any cline-neutral"> </span>
|
|
512
|
+
<span class="cline-any cline-no"> </span>
|
|
521
513
|
<span class="cline-any cline-neutral"> </span>
|
|
514
|
+
<span class="cline-any cline-no"> </span>
|
|
522
515
|
<span class="cline-any cline-neutral"> </span>
|
|
516
|
+
<span class="cline-any cline-no"> </span>
|
|
523
517
|
<span class="cline-any cline-neutral"> </span>
|
|
524
|
-
<span class="cline-any cline-
|
|
518
|
+
<span class="cline-any cline-no"> </span>
|
|
519
|
+
<span class="cline-any cline-no"> </span>
|
|
525
520
|
<span class="cline-any cline-neutral"> </span>
|
|
526
521
|
<span class="cline-any cline-neutral"> </span>
|
|
527
522
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -531,7 +526,11 @@
|
|
|
531
526
|
<span class="cline-any cline-neutral"> </span>
|
|
532
527
|
<span class="cline-any cline-neutral"> </span>
|
|
533
528
|
<span class="cline-any cline-no"> </span>
|
|
529
|
+
<span class="cline-any cline-no"> </span>
|
|
530
|
+
<span class="cline-any cline-no"> </span>
|
|
534
531
|
<span class="cline-any cline-neutral"> </span>
|
|
532
|
+
<span class="cline-any cline-no"> </span>
|
|
533
|
+
<span class="cline-any cline-no"> </span>
|
|
535
534
|
<span class="cline-any cline-neutral"> </span>
|
|
536
535
|
<span class="cline-any cline-neutral"> </span>
|
|
537
536
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -540,19 +539,20 @@
|
|
|
540
539
|
<span class="cline-any cline-neutral"> </span>
|
|
541
540
|
<span class="cline-any cline-neutral"> </span>
|
|
542
541
|
<span class="cline-any cline-neutral"> </span>
|
|
542
|
+
<span class="cline-any cline-no"> </span>
|
|
543
|
+
<span class="cline-any cline-no"> </span>
|
|
544
|
+
<span class="cline-any cline-no"> </span>
|
|
543
545
|
<span class="cline-any cline-neutral"> </span>
|
|
544
|
-
<span class="cline-any cline-
|
|
545
|
-
<span class="cline-any cline-neutral"> </span>
|
|
546
|
-
<span class="cline-any cline-neutral"> </span>
|
|
546
|
+
<span class="cline-any cline-no"> </span>
|
|
547
547
|
<span class="cline-any cline-no"> </span>
|
|
548
548
|
<span class="cline-any cline-neutral"> </span>
|
|
549
549
|
<span class="cline-any cline-neutral"> </span>
|
|
550
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"
|
|
551
|
-
|
|
552
|
-
|
|
550
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import _ from "lodash";
|
|
551
|
+
import { Pixwel } from "../index";
|
|
552
|
+
import axios from "axios";
|
|
553
553
|
import { cloneDeep } from "lodash";
|
|
554
|
-
|
|
555
|
-
|
|
554
|
+
import { diff } from "deep-object-diff";
|
|
555
|
+
import validate from "validate.js";
|
|
556
556
|
|
|
557
557
|
/**
|
|
558
558
|
* Model base class for reading and writing to an API
|
|
@@ -566,7 +566,7 @@ import { cloneDeep } from "lodash";
|
|
|
566
566
|
*
|
|
567
567
|
*/
|
|
568
568
|
|
|
569
|
-
var _bindings =
|
|
569
|
+
var _bindings = {
|
|
570
570
|
find: [],
|
|
571
571
|
save: []
|
|
572
572
|
};
|
|
@@ -576,8 +576,8 @@ import { cloneDeep } from "lodash";
|
|
|
576
576
|
* figured out how to reference a static class method from an instance
|
|
577
577
|
* and also from a static function.
|
|
578
578
|
*/
|
|
579
|
-
function
|
|
580
|
-
|
|
579
|
+
function connection() {
|
|
580
|
+
return axios.create({
|
|
581
581
|
baseURL: Pixwel.endpoint,
|
|
582
582
|
headers: {
|
|
583
583
|
Authorization: `Basic ${Pixwel.credentials.token}`,
|
|
@@ -589,13 +589,13 @@ function <span class="fstat-no" title="function not covered" >connection() {</sp
|
|
|
589
589
|
|
|
590
590
|
|
|
591
591
|
export default class Model {
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
592
|
+
constructor(data) {
|
|
593
|
+
Object.assign(this, data);
|
|
594
|
+
this._endpoint = Pixwel.endpoint;
|
|
595
|
+
this._api = connection();
|
|
596
|
+
this._lastState = {};
|
|
597
|
+
this._validationErrors = [];
|
|
598
|
+
this._constraints = {};
|
|
599
599
|
}
|
|
600
600
|
/**
|
|
601
601
|
* Adds a validation contraint
|
|
@@ -603,13 +603,13 @@ export default class Model {
|
|
|
603
603
|
* @param {string} name
|
|
604
604
|
* @param {object} data
|
|
605
605
|
*/
|
|
606
|
-
|
|
606
|
+
<span class="fstat-no" title="function not covered" > ad</span>dConstraint(name, data) {
|
|
607
607
|
<span class="cstat-no" title="statement not covered" > this._constraints[name] = data;</span>
|
|
608
608
|
}
|
|
609
609
|
/**
|
|
610
610
|
* Validates models data against its contraints
|
|
611
611
|
*/
|
|
612
|
-
|
|
612
|
+
<span class="fstat-no" title="function not covered" > va</span>lidates() {
|
|
613
613
|
let res = <span class="cstat-no" title="statement not covered" >validate(this.data(), this._constraints);</span>
|
|
614
614
|
<span class="cstat-no" title="statement not covered" > if (res == undefined) {</span>
|
|
615
615
|
<span class="cstat-no" title="statement not covered" > this._validationErrors = [];</span>
|
|
@@ -618,7 +618,7 @@ export default class Model {
|
|
|
618
618
|
}
|
|
619
619
|
<span class="cstat-no" title="statement not covered" > return (res == undefined) ? true : false;</span>
|
|
620
620
|
}
|
|
621
|
-
|
|
621
|
+
<span class="fstat-no" title="function not covered" > er</span>rors() {
|
|
622
622
|
<span class="cstat-no" title="statement not covered" > return this._validationErrors;</span>
|
|
623
623
|
}
|
|
624
624
|
/**
|
|
@@ -626,24 +626,24 @@ export default class Model {
|
|
|
626
626
|
*
|
|
627
627
|
* @param {object} config
|
|
628
628
|
*/
|
|
629
|
-
|
|
630
|
-
return this._api.request(config)
|
|
629
|
+
<span class="fstat-no" title="function not covered" > as</span>ync request(config) {
|
|
630
|
+
<span class="cstat-no" title="statement not covered" > return this._api.request(config);</span>
|
|
631
631
|
}
|
|
632
632
|
/**
|
|
633
633
|
* Returns data
|
|
634
634
|
*/
|
|
635
|
-
data()
|
|
636
|
-
let keys =
|
|
635
|
+
data() {
|
|
636
|
+
let keys = Object.keys(this).filter(key => {
|
|
637
637
|
// using underscore convention to not include private data
|
|
638
|
-
|
|
638
|
+
return key[0] != '_';
|
|
639
639
|
});
|
|
640
640
|
// deliberately adding _id back in even though it's "private"
|
|
641
|
-
|
|
642
|
-
let data =
|
|
643
|
-
|
|
644
|
-
|
|
641
|
+
keys.push('_id');
|
|
642
|
+
let data = {};
|
|
643
|
+
keys.forEach(key => {
|
|
644
|
+
data[key] = this[key];
|
|
645
645
|
});
|
|
646
|
-
|
|
646
|
+
return data;
|
|
647
647
|
}
|
|
648
648
|
/**
|
|
649
649
|
* Register a callback to a model method
|
|
@@ -651,7 +651,7 @@ export default class Model {
|
|
|
651
651
|
* @param {string} method
|
|
652
652
|
* @param {function} callback
|
|
653
653
|
*/
|
|
654
|
-
|
|
654
|
+
<span class="fstat-no" title="function not covered" > st</span>atic registerCallback(method, callback) {
|
|
655
655
|
<span class="cstat-no" title="statement not covered" > _bindings[method].push(callback);</span>
|
|
656
656
|
}
|
|
657
657
|
/**
|
|
@@ -660,22 +660,22 @@ export default class Model {
|
|
|
660
660
|
*
|
|
661
661
|
* @param {object} data
|
|
662
662
|
*/
|
|
663
|
-
|
|
664
|
-
let input =
|
|
663
|
+
<span class="fstat-no" title="function not covered" > as</span>ync save(data = <span class="branch-0 cbranch-no" title="branch not covered" >{})</span> {
|
|
664
|
+
let input = <span class="cstat-no" title="statement not covered" >data.length ? data : this.data();</span>
|
|
665
665
|
|
|
666
|
-
if (input._id) {
|
|
667
|
-
let inputDiff = diff(this._lastState, input)
|
|
668
|
-
this._lastState = await this.update(input._id, inputDiff)
|
|
666
|
+
<span class="cstat-no" title="statement not covered" > if (input._id) {</span>
|
|
667
|
+
let inputDiff = <span class="cstat-no" title="statement not covered" >diff(this._lastState, input);</span>
|
|
668
|
+
<span class="cstat-no" title="statement not covered" > this._lastState = await this.update(input._id, inputDiff);</span>
|
|
669
669
|
} else {
|
|
670
|
-
this._lastState = await this.create(input)
|
|
670
|
+
<span class="cstat-no" title="statement not covered" > this._lastState = await this.create(input);</span>
|
|
671
671
|
}
|
|
672
672
|
|
|
673
673
|
// fires events with the result
|
|
674
|
-
<span class="cstat-no" title="statement not covered" > _bindings.save.forEach(<span class="fstat-no" title="function not covered" >
|
|
674
|
+
<span class="cstat-no" title="statement not covered" > _bindings.save.forEach(<span class="fstat-no" title="function not covered" >ca</span>llback => {</span>
|
|
675
675
|
<span class="cstat-no" title="statement not covered" > callback(this._lastState);</span>
|
|
676
676
|
});
|
|
677
677
|
|
|
678
|
-
return this._lastState
|
|
678
|
+
<span class="cstat-no" title="statement not covered" > return this._lastState;</span>
|
|
679
679
|
}
|
|
680
680
|
/**
|
|
681
681
|
* Merges incoming data into the model data
|
|
@@ -683,12 +683,12 @@ export default class Model {
|
|
|
683
683
|
* @param {object} data
|
|
684
684
|
*/
|
|
685
685
|
set(data) {
|
|
686
|
-
|
|
686
|
+
return _.merge(this, data);
|
|
687
687
|
}
|
|
688
688
|
/**
|
|
689
689
|
* Returns a deep clone of the current object
|
|
690
690
|
*/
|
|
691
|
-
|
|
691
|
+
<span class="fstat-no" title="function not covered" > cl</span>one() {
|
|
692
692
|
<span class="cstat-no" title="statement not covered" > return cloneDeep(this);</span>
|
|
693
693
|
}
|
|
694
694
|
/**
|
|
@@ -696,7 +696,7 @@ export default class Model {
|
|
|
696
696
|
*
|
|
697
697
|
* @param {object} params
|
|
698
698
|
*/
|
|
699
|
-
|
|
699
|
+
<span class="fstat-no" title="function not covered" > st</span>atic all(params = <span class="branch-0 cbranch-no" title="branch not covered" >{})</span> {
|
|
700
700
|
<span class="cstat-no" title="statement not covered" > return this.find(params);</span>
|
|
701
701
|
}
|
|
702
702
|
/**
|
|
@@ -704,29 +704,29 @@ export default class Model {
|
|
|
704
704
|
*
|
|
705
705
|
* @param {object} params
|
|
706
706
|
*/
|
|
707
|
-
|
|
708
|
-
let api = connection()
|
|
707
|
+
<span class="fstat-no" title="function not covered" > st</span>atic async find(params = <span class="branch-0 cbranch-no" title="branch not covered" >{})</span> {
|
|
708
|
+
let api = <span class="cstat-no" title="statement not covered" >connection();</span>
|
|
709
709
|
let url;
|
|
710
710
|
<span class="cstat-no" title="statement not covered" > if (typeof params === 'string') {</span>
|
|
711
|
-
let <span class="cstat-no" title="statement not covered" >
|
|
711
|
+
let id = <span class="cstat-no" title="statement not covered" >params;</span>
|
|
712
712
|
<span class="cstat-no" title="statement not covered" > url = `${this._resource}/${id}`;</span>
|
|
713
713
|
<span class="cstat-no" title="statement not covered" > params = {};</span>
|
|
714
714
|
} else {
|
|
715
715
|
<span class="cstat-no" title="statement not covered" > url = this._resource;</span>
|
|
716
716
|
}
|
|
717
717
|
|
|
718
|
-
try {
|
|
719
|
-
var res = await api.get(url, {params})
|
|
718
|
+
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
719
|
+
var res = <span class="cstat-no" title="statement not covered" >await api.get(url, {params});</span>
|
|
720
720
|
} catch (e) {
|
|
721
|
-
throw new Error(`${e.message}: GET /${url} ${JSON.stringify(params)}`)
|
|
721
|
+
<span class="cstat-no" title="statement not covered" > throw new Error(`${e.message}: GET /${url} ${JSON.stringify(params)}`);</span>
|
|
722
722
|
}
|
|
723
723
|
|
|
724
724
|
// fires events with the result
|
|
725
|
-
<span class="cstat-no" title="statement not covered" > _bindings.find.forEach(<span class="fstat-no" title="function not covered" >
|
|
725
|
+
<span class="cstat-no" title="statement not covered" > _bindings.find.forEach(<span class="fstat-no" title="function not covered" >ca</span>llback => {</span>
|
|
726
726
|
<span class="cstat-no" title="statement not covered" > callback(res.data);</span>
|
|
727
727
|
});
|
|
728
728
|
|
|
729
|
-
return res.data
|
|
729
|
+
<span class="cstat-no" title="statement not covered" > return res.data;</span>
|
|
730
730
|
}
|
|
731
731
|
/**
|
|
732
732
|
* Creates a resource
|
|
@@ -734,17 +734,17 @@ export default class Model {
|
|
|
734
734
|
* @param {string} name
|
|
735
735
|
* @param {object} data
|
|
736
736
|
*/
|
|
737
|
-
|
|
738
|
-
let url =
|
|
739
|
-
var res = await this._api.post(url, data, {
|
|
740
|
-
validateStatus: <span class="fstat-no" title="function not covered" >(</span>
|
|
737
|
+
<span class="fstat-no" title="function not covered" > as</span>ync create(data) {
|
|
738
|
+
let url = <span class="cstat-no" title="statement not covered" >`${this._endpoint}/${this._resource}`;</span>
|
|
739
|
+
var res = <span class="cstat-no" title="statement not covered" >await this._api.post(url, data, {</span>
|
|
740
|
+
validateStatus: <span class="fstat-no" title="function not covered" >(s</span>tatus) => { <span class="cstat-no" title="statement not covered" >return true </span>}
|
|
741
741
|
});
|
|
742
|
-
switch (res.status) {
|
|
743
|
-
case 500
|
|
744
|
-
throw new Error(`HTTP 500: POST ${url}: ${res.data.type} - ${res.data.message}`)
|
|
742
|
+
<span class="cstat-no" title="statement not covered" > switch (res.status) {</span>
|
|
743
|
+
<span class="branch-0 cbranch-no" title="branch not covered" > case 500:</span>
|
|
744
|
+
<span class="cstat-no" title="statement not covered" > throw new Error(`HTTP 500: POST ${url}: ${res.data.type} - ${res.data.message}`);</span>
|
|
745
745
|
}
|
|
746
746
|
<span class="cstat-no" title="statement not covered" > Object.assign(this, res.data);</span>
|
|
747
|
-
return res.data
|
|
747
|
+
<span class="cstat-no" title="statement not covered" > return res.data;</span>
|
|
748
748
|
}
|
|
749
749
|
/**
|
|
750
750
|
* Updates a resource
|
|
@@ -752,23 +752,23 @@ export default class Model {
|
|
|
752
752
|
* @param {string} name
|
|
753
753
|
* @param {object} data
|
|
754
754
|
*/
|
|
755
|
-
|
|
756
|
-
let currentId = <span class="
|
|
757
|
-
if (!currentId) {
|
|
758
|
-
throw new Error("unable to update record without an _id")
|
|
755
|
+
<span class="fstat-no" title="function not covered" > as</span>ync update(id = <span class="branch-0 cbranch-no" title="branch not covered" >'',</span> data) {
|
|
756
|
+
let currentId = <span class="cstat-no" title="statement not covered" >id || this._id;</span>
|
|
757
|
+
<span class="cstat-no" title="statement not covered" > if (!currentId) {</span>
|
|
758
|
+
<span class="cstat-no" title="statement not covered" > throw new Error("unable to update record without an _id");</span>
|
|
759
759
|
}
|
|
760
|
-
let url =
|
|
761
|
-
var res = await this._api.patch(url, data, {
|
|
762
|
-
validateStatus: <span class="fstat-no" title="function not covered" >(</span>
|
|
760
|
+
let url = <span class="cstat-no" title="statement not covered" >`${this._endpoint}/${this._resource}/${currentId}`;</span>
|
|
761
|
+
var res = <span class="cstat-no" title="statement not covered" >await this._api.patch(url, data, {</span>
|
|
762
|
+
validateStatus: <span class="fstat-no" title="function not covered" >(s</span>tatus) => { <span class="cstat-no" title="statement not covered" >return true </span>}
|
|
763
763
|
});
|
|
764
|
-
switch (res.status) {
|
|
764
|
+
<span class="cstat-no" title="statement not covered" > switch (res.status) {</span>
|
|
765
765
|
case 500:
|
|
766
|
-
throw new Error(`HTTP 500: PATCH ${url}: ${res.data.type} - ${res.data.message}`)
|
|
766
|
+
<span class="cstat-no" title="statement not covered" > throw new Error(`HTTP 500: PATCH ${url}: ${res.data.type} - ${res.data.message}`);</span>
|
|
767
767
|
case 400:
|
|
768
|
-
throw new Error(`HTTP 400: PATCH ${url}: ${res.data.info.message} - ${JSON.stringify(data)}`)
|
|
768
|
+
<span class="cstat-no" title="statement not covered" > throw new Error(`HTTP 400: PATCH ${url}: ${res.data.info.message} - ${JSON.stringify(data)}`);</span>
|
|
769
769
|
}
|
|
770
770
|
<span class="cstat-no" title="statement not covered" > Object.assign(this, res.data);</span>
|
|
771
|
-
return res.data
|
|
771
|
+
<span class="cstat-no" title="statement not covered" > return res.data;</span>
|
|
772
772
|
}
|
|
773
773
|
/**
|
|
774
774
|
* Reads a resource
|
|
@@ -776,13 +776,13 @@ export default class Model {
|
|
|
776
776
|
* @param {string} name
|
|
777
777
|
* @param {object} opts
|
|
778
778
|
*/
|
|
779
|
-
|
|
780
|
-
let currentId = <span class="
|
|
781
|
-
if (!currentId) {
|
|
782
|
-
throw new Error("unable to read record without an _id")
|
|
779
|
+
<span class="fstat-no" title="function not covered" > as</span>ync read(id = <span class="branch-0 cbranch-no" title="branch not covered" >'',</span> opts = <span class="branch-0 cbranch-no" title="branch not covered" >{})</span> {
|
|
780
|
+
let currentId = <span class="cstat-no" title="statement not covered" >id || this._id;</span>
|
|
781
|
+
<span class="cstat-no" title="statement not covered" > if (!currentId) {</span>
|
|
782
|
+
<span class="cstat-no" title="statement not covered" > throw new Error("unable to read record without an _id");</span>
|
|
783
783
|
}
|
|
784
|
-
let url =
|
|
785
|
-
return this._api.get(url, opts).then(<span class="
|
|
784
|
+
let url = <span class="cstat-no" title="statement not covered" >`${this._endpoint}/${this._resource}/${currentId}`;</span>
|
|
785
|
+
<span class="cstat-no" title="statement not covered" > return this._api.get(url, opts).then(<span class="fstat-no" title="function not covered" >re</span>s => <span class="cstat-no" title="statement not covered" >res.data)</span>;</span>
|
|
786
786
|
}
|
|
787
787
|
/**
|
|
788
788
|
* Deletes a resource
|
|
@@ -790,13 +790,13 @@ export default class Model {
|
|
|
790
790
|
* @param {string} name
|
|
791
791
|
* @param {string} id
|
|
792
792
|
*/
|
|
793
|
-
|
|
794
|
-
let currentId = <span class="
|
|
795
|
-
if (!currentId) {
|
|
796
|
-
throw new Error("unable to delete record without an _id")
|
|
793
|
+
<span class="fstat-no" title="function not covered" > as</span>ync delete(id = <span class="branch-0 cbranch-no" title="branch not covered" >'')</span> {
|
|
794
|
+
let currentId = <span class="cstat-no" title="statement not covered" >id || this._id;</span>
|
|
795
|
+
<span class="cstat-no" title="statement not covered" > if (!currentId) {</span>
|
|
796
|
+
<span class="cstat-no" title="statement not covered" > throw new Error("unable to delete record without an _id");</span>
|
|
797
797
|
}
|
|
798
|
-
let url =
|
|
799
|
-
return this._api.delete(url).then(<span class="
|
|
798
|
+
let url = <span class="cstat-no" title="statement not covered" >`${this._endpoint}/${this._resource}/${id}`;</span>
|
|
799
|
+
<span class="cstat-no" title="statement not covered" > return this._api.delete(url).then(<span class="fstat-no" title="function not covered" >re</span>s => <span class="cstat-no" title="statement not covered" >res.data)</span>;</span>
|
|
800
800
|
}
|
|
801
801
|
}
|
|
802
802
|
</pre></td></tr>
|
|
@@ -805,7 +805,7 @@ export default class Model {
|
|
|
805
805
|
</div><!-- /wrapper -->
|
|
806
806
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
807
807
|
Code coverage
|
|
808
|
-
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at
|
|
808
|
+
generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Tue Nov 12 2019 10:11:27 GMT-0600 (Central Standard Time)
|
|
809
809
|
</div>
|
|
810
810
|
</div>
|
|
811
811
|
<script src="prettify.js"></script>
|