gw2e-account-statistics 3.19.0 → 3.21.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.
- package/build/static/walletIdMapping.js +4 -1
- package/build/statistics/aggregate.js +2 -2
- package/build/statistics/items.js +1 -0
- package/build/statistics/masteries.js +2 -1
- package/build/statistics/unlocks.js +12 -1
- package/package.json +1 -1
- package/tests/aggregate.spec.js +78 -25
- package/tests/items.spec.js +5 -1
- package/tests/masteries.spec.js +9 -5
- package/tests/unlocks.spec.js +6 -0
- package/tests/wallet.spec.js +8 -2
|
@@ -75,5 +75,8 @@ exports.default = {
|
|
|
75
75
|
gaetingCrystals: 77,
|
|
76
76
|
_essenceOfDespairFromWallet: 78,
|
|
77
77
|
_essenceOfGreedFromWallet: 80,
|
|
78
|
-
_essenceOfTriumphFromWallet: 79
|
|
78
|
+
_essenceOfTriumphFromWallet: 79,
|
|
79
|
+
antiquatedDucat: 81,
|
|
80
|
+
testimonyOfCastoranHeroics: 82,
|
|
81
|
+
aetherRichSap: 83
|
|
79
82
|
};
|
|
@@ -164,9 +164,9 @@ function rareRifEssenceCount(accountStatistics) {
|
|
|
164
164
|
}
|
|
165
165
|
|
|
166
166
|
function commandersChoiceChestsCount(accountStatistics) {
|
|
167
|
-
if (accountStatistics.vbHerosChoice == null || accountStatistics.tdHerosChoice == null || accountStatistics.abHerosChoice == null || accountStatistics.dsHerosChoice == null || accountStatistics.crystalOasisHerosChoice == null || accountStatistics.elonRiverlandsHerosChoice == null || accountStatistics.theDesolationHerosChoice == null || accountStatistics.domainOfVabbiHerosChoice == null || accountStatistics.seitungProvinceHerosChoice == null || accountStatistics.newKainengCityHerosChoice == null || accountStatistics.echovaldWildsHerosChoice == null || accountStatistics.dragonsEndHerosChoice == null || accountStatistics.gyalaDelveHerosChoice == null || accountStatistics.skywatchArchipelagoHerosChoice == null || accountStatistics.amnytasHerosChoice == null || accountStatistics.innerNayosEndHerosChoice == null || accountStatistics.convergenceHerosChoice == null || accountStatistics.convergenceMountBalriorWayfindersChoice == null || accountStatistics.citadelOfZakirosHerosChoice == null || accountStatistics.janthirSyntriHerosChoice == null || accountStatistics.bavaNisosCommandersChoice == null) {
|
|
167
|
+
if (accountStatistics.vbHerosChoice == null || accountStatistics.tdHerosChoice == null || accountStatistics.abHerosChoice == null || accountStatistics.dsHerosChoice == null || accountStatistics.crystalOasisHerosChoice == null || accountStatistics.elonRiverlandsHerosChoice == null || accountStatistics.theDesolationHerosChoice == null || accountStatistics.domainOfVabbiHerosChoice == null || accountStatistics.seitungProvinceHerosChoice == null || accountStatistics.newKainengCityHerosChoice == null || accountStatistics.echovaldWildsHerosChoice == null || accountStatistics.dragonsEndHerosChoice == null || accountStatistics.gyalaDelveHerosChoice == null || accountStatistics.skywatchArchipelagoHerosChoice == null || accountStatistics.amnytasHerosChoice == null || accountStatistics.innerNayosEndHerosChoice == null || accountStatistics.convergenceHerosChoice == null || accountStatistics.convergenceMountBalriorWayfindersChoice == null || accountStatistics.citadelOfZakirosHerosChoice == null || accountStatistics.janthirSyntriHerosChoice == null || accountStatistics.bavaNisosCommandersChoice == null || accountStatistics.castoraHeroesChoiceChest == null) {
|
|
168
168
|
return null;
|
|
169
169
|
}
|
|
170
170
|
|
|
171
|
-
return accountStatistics.vbHerosChoice + accountStatistics.tdHerosChoice + accountStatistics.abHerosChoice + accountStatistics.dsHerosChoice + accountStatistics.crystalOasisHerosChoice + accountStatistics.elonRiverlandsHerosChoice + accountStatistics.theDesolationHerosChoice + accountStatistics.domainOfVabbiHerosChoice + accountStatistics.seitungProvinceHerosChoice + accountStatistics.newKainengCityHerosChoice + accountStatistics.echovaldWildsHerosChoice + accountStatistics.dragonsEndHerosChoice + accountStatistics.gyalaDelveHerosChoice + accountStatistics.skywatchArchipelagoHerosChoice + accountStatistics.amnytasHerosChoice + accountStatistics.innerNayosEndHerosChoice + accountStatistics.convergenceHerosChoice + accountStatistics.convergenceMountBalriorWayfindersChoice + accountStatistics.citadelOfZakirosHerosChoice + accountStatistics.janthirSyntriHerosChoice + accountStatistics.bavaNisosCommandersChoice;
|
|
171
|
+
return accountStatistics.vbHerosChoice + accountStatistics.tdHerosChoice + accountStatistics.abHerosChoice + accountStatistics.dsHerosChoice + accountStatistics.crystalOasisHerosChoice + accountStatistics.elonRiverlandsHerosChoice + accountStatistics.theDesolationHerosChoice + accountStatistics.domainOfVabbiHerosChoice + accountStatistics.seitungProvinceHerosChoice + accountStatistics.newKainengCityHerosChoice + accountStatistics.echovaldWildsHerosChoice + accountStatistics.dragonsEndHerosChoice + accountStatistics.gyalaDelveHerosChoice + accountStatistics.skywatchArchipelagoHerosChoice + accountStatistics.amnytasHerosChoice + accountStatistics.innerNayosEndHerosChoice + accountStatistics.convergenceHerosChoice + accountStatistics.convergenceMountBalriorWayfindersChoice + accountStatistics.citadelOfZakirosHerosChoice + accountStatistics.janthirSyntriHerosChoice + accountStatistics.bavaNisosCommandersChoice + accountStatistics.castoraHeroesChoiceChest;
|
|
172
172
|
}
|
|
@@ -131,6 +131,7 @@ exports.default = function (accountData, extraInformation) {
|
|
|
131
131
|
citadelOfZakirosHerosChoice: countItems(items, [101748, 104728]),
|
|
132
132
|
janthirSyntriHerosChoice: countItems(items, [102265, 104832, 104942]),
|
|
133
133
|
bavaNisosCommandersChoice: countItems(items, 104714),
|
|
134
|
+
castoraHeroesChoiceChest: countItems(items, 105822),
|
|
134
135
|
giftsOfExploration: countItems(items, 19677),
|
|
135
136
|
giftsOfBattle: countItems(items, 19678),
|
|
136
137
|
tomesOfKnowledge: countItems(items, [43741, 43766]),
|
|
@@ -32,7 +32,8 @@ exports.default = function (accountData) {
|
|
|
32
32
|
masteryPointsCrystal: earnedMasteryPoints['Icebrood Saga'] || 0,
|
|
33
33
|
masteryPointsEndOfDragons: earnedMasteryPoints['End of Dragons'] || 0,
|
|
34
34
|
masteryPointsSecretsOfTheObscure: earnedMasteryPoints['Secrets of the Obscure'] || 0,
|
|
35
|
-
masteryPointsJanthirWilds: earnedMasteryPoints['Janthir Wilds'] || 0
|
|
35
|
+
masteryPointsJanthirWilds: earnedMasteryPoints['Janthir Wilds'] || 0,
|
|
36
|
+
masteryPointsVisionsOfEternity: earnedMasteryPoints['Visions of Eternity'] || 0
|
|
36
37
|
};
|
|
37
38
|
};
|
|
38
39
|
|
|
@@ -39,7 +39,8 @@ exports.default = function (accountData, extraInformation) {
|
|
|
39
39
|
aureneLegendaryVariantSkins: aureneLegendaryVariantSkins(accountData),
|
|
40
40
|
suffusedObsidianArmorSkins: suffusedObsidianArmorSkins(accountData),
|
|
41
41
|
coloredTitleCount: coloredTitleCount(accountData),
|
|
42
|
-
homesteadDecorationCount: homesteadDecorationCount(accountData)
|
|
42
|
+
homesteadDecorationCount: homesteadDecorationCount(accountData),
|
|
43
|
+
homesteadDecorationCountUnique: homesteadDecorationCountUnique(accountData)
|
|
43
44
|
};
|
|
44
45
|
};
|
|
45
46
|
|
|
@@ -408,4 +409,14 @@ function homesteadDecorationCount(accountData) {
|
|
|
408
409
|
return accountData.homestead.decorations.reduce(function (sum, decoration) {
|
|
409
410
|
return sum + decoration.count;
|
|
410
411
|
}, 0);
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
function homesteadDecorationCountUnique(accountData) {
|
|
415
|
+
if (!accountData.homestead || !accountData.homestead.decorations) {
|
|
416
|
+
return null;
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
return accountData.homestead.decorations.filter(function (d) {
|
|
420
|
+
return d.count > 0;
|
|
421
|
+
}).length;
|
|
411
422
|
}
|
package/package.json
CHANGED
package/tests/aggregate.spec.js
CHANGED
|
@@ -52,10 +52,13 @@ describe('statistics > aggregate', () => {
|
|
|
52
52
|
bloodstoneInfusion: 1,
|
|
53
53
|
heatCoreInfusion: 1,
|
|
54
54
|
forestWispInfusion: 1,
|
|
55
|
+
chromaticBubbles: 1,
|
|
56
|
+
etherealSeaLifeInfusion: 1,
|
|
57
|
+
agonyLens: 1,
|
|
55
58
|
|
|
56
59
|
// (!) Has to be ignored, else it's counting double
|
|
57
60
|
celestialInfusion: 999
|
|
58
|
-
}).totalAuras).to.equal(
|
|
61
|
+
}).totalAuras).to.equal(46)
|
|
59
62
|
})
|
|
60
63
|
|
|
61
64
|
it('can calculate death count per hour', () => {
|
|
@@ -281,7 +284,8 @@ describe('statistics > aggregate', () => {
|
|
|
281
284
|
convergenceMountBalriorWayfindersChoice: null,
|
|
282
285
|
citadelOfZakirosHerosChoice: null,
|
|
283
286
|
janthirSyntriHerosChoice: 1,
|
|
284
|
-
bavaNisosCommandersChoice: null
|
|
287
|
+
bavaNisosCommandersChoice: null,
|
|
288
|
+
castoraHeroesChoiceChest: null
|
|
285
289
|
}).commandersChoiceChestsCount
|
|
286
290
|
).to.equal(null)
|
|
287
291
|
|
|
@@ -307,7 +311,8 @@ describe('statistics > aggregate', () => {
|
|
|
307
311
|
convergenceMountBalriorWayfindersChoice: null,
|
|
308
312
|
citadelOfZakirosHerosChoice: 1,
|
|
309
313
|
janthirSyntriHerosChoice: null,
|
|
310
|
-
bavaNisosCommandersChoice: null
|
|
314
|
+
bavaNisosCommandersChoice: null,
|
|
315
|
+
castoraHeroesChoiceChest: null
|
|
311
316
|
}).commandersChoiceChestsCount
|
|
312
317
|
).to.equal(null)
|
|
313
318
|
|
|
@@ -333,7 +338,8 @@ describe('statistics > aggregate', () => {
|
|
|
333
338
|
convergenceMountBalriorWayfindersChoice: 1,
|
|
334
339
|
citadelOfZakirosHerosChoice: null,
|
|
335
340
|
janthirSyntriHerosChoice: null,
|
|
336
|
-
bavaNisosCommandersChoice: null
|
|
341
|
+
bavaNisosCommandersChoice: null,
|
|
342
|
+
castoraHeroesChoiceChest: null
|
|
337
343
|
}).commandersChoiceChestsCount
|
|
338
344
|
).to.equal(null)
|
|
339
345
|
|
|
@@ -359,7 +365,8 @@ describe('statistics > aggregate', () => {
|
|
|
359
365
|
convergenceMountBalriorWayfindersChoice: null,
|
|
360
366
|
citadelOfZakirosHerosChoice: null,
|
|
361
367
|
janthirSyntriHerosChoice: null,
|
|
362
|
-
bavaNisosCommandersChoice: null
|
|
368
|
+
bavaNisosCommandersChoice: null,
|
|
369
|
+
castoraHeroesChoiceChest: null
|
|
363
370
|
}).commandersChoiceChestsCount
|
|
364
371
|
).to.equal(null)
|
|
365
372
|
|
|
@@ -385,7 +392,8 @@ describe('statistics > aggregate', () => {
|
|
|
385
392
|
convergenceMountBalriorWayfindersChoice: null,
|
|
386
393
|
citadelOfZakirosHerosChoice: null,
|
|
387
394
|
janthirSyntriHerosChoice: null,
|
|
388
|
-
bavaNisosCommandersChoice: null
|
|
395
|
+
bavaNisosCommandersChoice: null,
|
|
396
|
+
castoraHeroesChoiceChest: null
|
|
389
397
|
}).commandersChoiceChestsCount
|
|
390
398
|
).to.equal(null)
|
|
391
399
|
|
|
@@ -411,7 +419,8 @@ describe('statistics > aggregate', () => {
|
|
|
411
419
|
convergenceMountBalriorWayfindersChoice: null,
|
|
412
420
|
citadelOfZakirosHerosChoice: null,
|
|
413
421
|
janthirSyntriHerosChoice: null,
|
|
414
|
-
bavaNisosCommandersChoice: null
|
|
422
|
+
bavaNisosCommandersChoice: null,
|
|
423
|
+
castoraHeroesChoiceChest: null
|
|
415
424
|
}).commandersChoiceChestsCount
|
|
416
425
|
).to.equal(null)
|
|
417
426
|
|
|
@@ -437,7 +446,8 @@ describe('statistics > aggregate', () => {
|
|
|
437
446
|
convergenceMountBalriorWayfindersChoice: null,
|
|
438
447
|
citadelOfZakirosHerosChoice: null,
|
|
439
448
|
janthirSyntriHerosChoice: null,
|
|
440
|
-
bavaNisosCommandersChoice: null
|
|
449
|
+
bavaNisosCommandersChoice: null,
|
|
450
|
+
castoraHeroesChoiceChest: null
|
|
441
451
|
}).commandersChoiceChestsCount
|
|
442
452
|
).to.equal(null)
|
|
443
453
|
|
|
@@ -463,7 +473,8 @@ describe('statistics > aggregate', () => {
|
|
|
463
473
|
convergenceMountBalriorWayfindersChoice: null,
|
|
464
474
|
citadelOfZakirosHerosChoice: null,
|
|
465
475
|
janthirSyntriHerosChoice: null,
|
|
466
|
-
bavaNisosCommandersChoice: null
|
|
476
|
+
bavaNisosCommandersChoice: null,
|
|
477
|
+
castoraHeroesChoiceChest: null
|
|
467
478
|
}).commandersChoiceChestsCount
|
|
468
479
|
).to.equal(null)
|
|
469
480
|
|
|
@@ -489,7 +500,8 @@ describe('statistics > aggregate', () => {
|
|
|
489
500
|
convergenceMountBalriorWayfindersChoice: null,
|
|
490
501
|
citadelOfZakirosHerosChoice: null,
|
|
491
502
|
janthirSyntriHerosChoice: null,
|
|
492
|
-
bavaNisosCommandersChoice: null
|
|
503
|
+
bavaNisosCommandersChoice: null,
|
|
504
|
+
castoraHeroesChoiceChest: null
|
|
493
505
|
}).commandersChoiceChestsCount
|
|
494
506
|
).to.equal(null)
|
|
495
507
|
|
|
@@ -515,7 +527,8 @@ describe('statistics > aggregate', () => {
|
|
|
515
527
|
convergenceMountBalriorWayfindersChoice: null,
|
|
516
528
|
citadelOfZakirosHerosChoice: null,
|
|
517
529
|
janthirSyntriHerosChoice: null,
|
|
518
|
-
bavaNisosCommandersChoice: null
|
|
530
|
+
bavaNisosCommandersChoice: null,
|
|
531
|
+
castoraHeroesChoiceChest: null
|
|
519
532
|
}).commandersChoiceChestsCount
|
|
520
533
|
).to.equal(null)
|
|
521
534
|
|
|
@@ -541,7 +554,8 @@ describe('statistics > aggregate', () => {
|
|
|
541
554
|
convergenceMountBalriorWayfindersChoice: null,
|
|
542
555
|
citadelOfZakirosHerosChoice: null,
|
|
543
556
|
janthirSyntriHerosChoice: null,
|
|
544
|
-
bavaNisosCommandersChoice: null
|
|
557
|
+
bavaNisosCommandersChoice: null,
|
|
558
|
+
castoraHeroesChoiceChest: null
|
|
545
559
|
}).commandersChoiceChestsCount
|
|
546
560
|
).to.equal(null)
|
|
547
561
|
|
|
@@ -567,7 +581,8 @@ describe('statistics > aggregate', () => {
|
|
|
567
581
|
convergenceMountBalriorWayfindersChoice: null,
|
|
568
582
|
citadelOfZakirosHerosChoice: null,
|
|
569
583
|
janthirSyntriHerosChoice: null,
|
|
570
|
-
bavaNisosCommandersChoice: null
|
|
584
|
+
bavaNisosCommandersChoice: null,
|
|
585
|
+
castoraHeroesChoiceChest: null
|
|
571
586
|
}).commandersChoiceChestsCount
|
|
572
587
|
).to.equal(null)
|
|
573
588
|
|
|
@@ -593,7 +608,8 @@ describe('statistics > aggregate', () => {
|
|
|
593
608
|
convergenceMountBalriorWayfindersChoice: null,
|
|
594
609
|
citadelOfZakirosHerosChoice: null,
|
|
595
610
|
janthirSyntriHerosChoice: null,
|
|
596
|
-
bavaNisosCommandersChoice: null
|
|
611
|
+
bavaNisosCommandersChoice: null,
|
|
612
|
+
castoraHeroesChoiceChest: null
|
|
597
613
|
}).commandersChoiceChestsCount
|
|
598
614
|
).to.equal(null)
|
|
599
615
|
|
|
@@ -619,7 +635,8 @@ describe('statistics > aggregate', () => {
|
|
|
619
635
|
convergenceMountBalriorWayfindersChoice: null,
|
|
620
636
|
citadelOfZakirosHerosChoice: null,
|
|
621
637
|
janthirSyntriHerosChoice: null,
|
|
622
|
-
bavaNisosCommandersChoice: null
|
|
638
|
+
bavaNisosCommandersChoice: null,
|
|
639
|
+
castoraHeroesChoiceChest: null
|
|
623
640
|
}).commandersChoiceChestsCount
|
|
624
641
|
).to.equal(null)
|
|
625
642
|
|
|
@@ -645,7 +662,8 @@ describe('statistics > aggregate', () => {
|
|
|
645
662
|
convergenceMountBalriorWayfindersChoice: null,
|
|
646
663
|
citadelOfZakirosHerosChoice: null,
|
|
647
664
|
janthirSyntriHerosChoice: null,
|
|
648
|
-
bavaNisosCommandersChoice: null
|
|
665
|
+
bavaNisosCommandersChoice: null,
|
|
666
|
+
castoraHeroesChoiceChest: null
|
|
649
667
|
}).commandersChoiceChestsCount
|
|
650
668
|
).to.equal(null)
|
|
651
669
|
|
|
@@ -671,7 +689,8 @@ describe('statistics > aggregate', () => {
|
|
|
671
689
|
convergenceMountBalriorWayfindersChoice: null,
|
|
672
690
|
citadelOfZakirosHerosChoice: null,
|
|
673
691
|
janthirSyntriHerosChoice: null,
|
|
674
|
-
bavaNisosCommandersChoice: null
|
|
692
|
+
bavaNisosCommandersChoice: null,
|
|
693
|
+
castoraHeroesChoiceChest: null
|
|
675
694
|
}).commandersChoiceChestsCount
|
|
676
695
|
).to.equal(null)
|
|
677
696
|
|
|
@@ -697,7 +716,8 @@ describe('statistics > aggregate', () => {
|
|
|
697
716
|
convergenceMountBalriorWayfindersChoice: null,
|
|
698
717
|
citadelOfZakirosHerosChoice: null,
|
|
699
718
|
janthirSyntriHerosChoice: null,
|
|
700
|
-
bavaNisosCommandersChoice: null
|
|
719
|
+
bavaNisosCommandersChoice: null,
|
|
720
|
+
castoraHeroesChoiceChest: null
|
|
701
721
|
}).commandersChoiceChestsCount
|
|
702
722
|
).to.equal(null)
|
|
703
723
|
|
|
@@ -723,7 +743,8 @@ describe('statistics > aggregate', () => {
|
|
|
723
743
|
convergenceMountBalriorWayfindersChoice: null,
|
|
724
744
|
citadelOfZakirosHerosChoice: null,
|
|
725
745
|
janthirSyntriHerosChoice: null,
|
|
726
|
-
bavaNisosCommandersChoice: null
|
|
746
|
+
bavaNisosCommandersChoice: null,
|
|
747
|
+
castoraHeroesChoiceChest: null
|
|
727
748
|
}).commandersChoiceChestsCount
|
|
728
749
|
).to.equal(null)
|
|
729
750
|
|
|
@@ -749,7 +770,8 @@ describe('statistics > aggregate', () => {
|
|
|
749
770
|
convergenceMountBalriorWayfindersChoice: null,
|
|
750
771
|
citadelOfZakirosHerosChoice: null,
|
|
751
772
|
janthirSyntriHerosChoice: null,
|
|
752
|
-
bavaNisosCommandersChoice: null
|
|
773
|
+
bavaNisosCommandersChoice: null,
|
|
774
|
+
castoraHeroesChoiceChest: null
|
|
753
775
|
}).commandersChoiceChestsCount
|
|
754
776
|
).to.equal(null)
|
|
755
777
|
|
|
@@ -775,7 +797,8 @@ describe('statistics > aggregate', () => {
|
|
|
775
797
|
convergenceMountBalriorWayfindersChoice: null,
|
|
776
798
|
citadelOfZakirosHerosChoice: null,
|
|
777
799
|
janthirSyntriHerosChoice: null,
|
|
778
|
-
bavaNisosCommandersChoice: null
|
|
800
|
+
bavaNisosCommandersChoice: null,
|
|
801
|
+
castoraHeroesChoiceChest: null
|
|
779
802
|
}).commandersChoiceChestsCount
|
|
780
803
|
).to.equal(null)
|
|
781
804
|
|
|
@@ -801,7 +824,35 @@ describe('statistics > aggregate', () => {
|
|
|
801
824
|
convergenceMountBalriorWayfindersChoice: null,
|
|
802
825
|
citadelOfZakirosHerosChoice: null,
|
|
803
826
|
janthirSyntriHerosChoice: null,
|
|
804
|
-
bavaNisosCommandersChoice: 1
|
|
827
|
+
bavaNisosCommandersChoice: 1,
|
|
828
|
+
castoraHeroesChoiceChest: null
|
|
829
|
+
}).commandersChoiceChestsCount
|
|
830
|
+
).to.equal(null)
|
|
831
|
+
|
|
832
|
+
expect(
|
|
833
|
+
aggregateStatistics({
|
|
834
|
+
vbHerosChoice: null,
|
|
835
|
+
tdHerosChoice: null,
|
|
836
|
+
abHerosChoice: null,
|
|
837
|
+
dsHerosChoice: null,
|
|
838
|
+
crystalOasisHerosChoice: null,
|
|
839
|
+
elonRiverlandsHerosChoice: null,
|
|
840
|
+
theDesolationHerosChoice: null,
|
|
841
|
+
domainOfVabbiHerosChoice: null,
|
|
842
|
+
seitungProvinceHerosChoice: null,
|
|
843
|
+
newKainengCityHerosChoice: null,
|
|
844
|
+
echovaldWildsHerosChoice: null,
|
|
845
|
+
dragonsEndHerosChoice: null,
|
|
846
|
+
gyalaDelveHerosChoice: null,
|
|
847
|
+
skywatchArchipelagoHerosChoice: null,
|
|
848
|
+
amnytasHerosChoice: null,
|
|
849
|
+
innerNayosEndHerosChoice: null,
|
|
850
|
+
convergenceHerosChoice: null,
|
|
851
|
+
convergenceMountBalriorWayfindersChoice: null,
|
|
852
|
+
citadelOfZakirosHerosChoice: null,
|
|
853
|
+
janthirSyntriHerosChoice: null,
|
|
854
|
+
bavaNisosCommandersChoice: null,
|
|
855
|
+
castoraHeroesChoiceChest: 1
|
|
805
856
|
}).commandersChoiceChestsCount
|
|
806
857
|
).to.equal(null)
|
|
807
858
|
|
|
@@ -827,7 +878,8 @@ describe('statistics > aggregate', () => {
|
|
|
827
878
|
convergenceMountBalriorWayfindersChoice: 5,
|
|
828
879
|
citadelOfZakirosHerosChoice: 3,
|
|
829
880
|
janthirSyntriHerosChoice: null,
|
|
830
|
-
bavaNisosCommandersChoice: 1
|
|
881
|
+
bavaNisosCommandersChoice: 1,
|
|
882
|
+
castoraHeroesChoiceChest: 5
|
|
831
883
|
}).commandersChoiceChestsCount
|
|
832
884
|
).to.equal(null)
|
|
833
885
|
|
|
@@ -853,8 +905,9 @@ describe('statistics > aggregate', () => {
|
|
|
853
905
|
convergenceMountBalriorWayfindersChoice: 5,
|
|
854
906
|
citadelOfZakirosHerosChoice: 3,
|
|
855
907
|
janthirSyntriHerosChoice: 1,
|
|
856
|
-
bavaNisosCommandersChoice: 1
|
|
908
|
+
bavaNisosCommandersChoice: 1,
|
|
909
|
+
castoraHeroesChoiceChest: 5
|
|
857
910
|
}).commandersChoiceChestsCount
|
|
858
|
-
).to.equal(
|
|
911
|
+
).to.equal(47)
|
|
859
912
|
})
|
|
860
913
|
})
|
package/tests/items.spec.js
CHANGED
|
@@ -89,6 +89,7 @@ describe('statistics > items', () => {
|
|
|
89
89
|
citadelOfZakirosHerosChoice: null,
|
|
90
90
|
janthirSyntriHerosChoice: null,
|
|
91
91
|
bavaNisosCommandersChoice: null,
|
|
92
|
+
castoraHeroesChoiceChest: null,
|
|
92
93
|
uniqueTonics: null,
|
|
93
94
|
bloodRubies: null,
|
|
94
95
|
petrifiedWood: null,
|
|
@@ -183,7 +184,10 @@ describe('statistics > items', () => {
|
|
|
183
184
|
infiniteWvwBlueprints: null,
|
|
184
185
|
bloodstoneInfusion: null,
|
|
185
186
|
heatCoreInfusion: null,
|
|
186
|
-
forestWispInfusion: null
|
|
187
|
+
forestWispInfusion: null,
|
|
188
|
+
chromaticBubbles: null,
|
|
189
|
+
etherealSeaLifeInfusion: null,
|
|
190
|
+
agonyLens: null
|
|
187
191
|
}
|
|
188
192
|
|
|
189
193
|
const bothPermissions = {bank: null, characters: null}
|
package/tests/masteries.spec.js
CHANGED
|
@@ -27,19 +27,21 @@ describe('statistics > masteries', () => {
|
|
|
27
27
|
{region: 'Icebrood Saga', spent: 3, earned: 12},
|
|
28
28
|
{region: 'End of Dragons', spent: 7, earned: 9},
|
|
29
29
|
{region: 'Secrets of the Obscure', spent: 4, earned: 5},
|
|
30
|
-
{region: 'Janthir Wilds', spent: 15, earned: 22}
|
|
30
|
+
{region: 'Janthir Wilds', spent: 15, earned: 22},
|
|
31
|
+
{region: 'Visions of Eternity', spent: 8, earned: 12}
|
|
31
32
|
]
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
expect(masteriesStatistics({mastery: {points: accountData}})).to.deep.equal({
|
|
35
|
-
masteryPoints: 58 + 106 + 32 + 12 + 9 + 5 + 22,
|
|
36
|
+
masteryPoints: 58 + 106 + 32 + 12 + 9 + 5 + 22 + 12,
|
|
36
37
|
masteryPointsTyria: 58,
|
|
37
38
|
masteryPointsMaguuma: 106,
|
|
38
39
|
masteryPointsDesert: 32,
|
|
39
40
|
masteryPointsCrystal: 12,
|
|
40
41
|
masteryPointsEndOfDragons: 9,
|
|
41
42
|
masteryPointsSecretsOfTheObscure: 5,
|
|
42
|
-
masteryPointsJanthirWilds: 22
|
|
43
|
+
masteryPointsJanthirWilds: 22,
|
|
44
|
+
masteryPointsVisionsOfEternity: 12
|
|
43
45
|
})
|
|
44
46
|
})
|
|
45
47
|
|
|
@@ -59,7 +61,8 @@ describe('statistics > masteries', () => {
|
|
|
59
61
|
masteryPointsCrystal: 0,
|
|
60
62
|
masteryPointsEndOfDragons: 0,
|
|
61
63
|
masteryPointsSecretsOfTheObscure: 0,
|
|
62
|
-
masteryPointsJanthirWilds: 0
|
|
64
|
+
masteryPointsJanthirWilds: 0,
|
|
65
|
+
masteryPointsVisionsOfEternity: 0
|
|
63
66
|
})
|
|
64
67
|
})
|
|
65
68
|
|
|
@@ -72,7 +75,8 @@ describe('statistics > masteries', () => {
|
|
|
72
75
|
masteryPointsCrystal: 0,
|
|
73
76
|
masteryPointsEndOfDragons: 0,
|
|
74
77
|
masteryPointsSecretsOfTheObscure: 0,
|
|
75
|
-
masteryPointsJanthirWilds: 0
|
|
78
|
+
masteryPointsJanthirWilds: 0,
|
|
79
|
+
masteryPointsVisionsOfEternity: 0
|
|
76
80
|
})
|
|
77
81
|
})
|
|
78
82
|
})
|
package/tests/unlocks.spec.js
CHANGED
|
@@ -282,4 +282,10 @@ describe('statistics > unlocks', () => {
|
|
|
282
282
|
expect(unlocksStatistics({ homestead: { decorations: [] } }, EXTRA_INFO).homesteadDecorationCount).to.equal(0)
|
|
283
283
|
expect(unlocksStatistics({ homestead: { decorations: [{ id: 1, count: 1 }, { id: 2, count: 2 }] } }, EXTRA_INFO).homesteadDecorationCount).to.equal(3)
|
|
284
284
|
})
|
|
285
|
+
|
|
286
|
+
it('can calculate homestead decoration count uniquely', () => {
|
|
287
|
+
expect(unlocksStatistics({}, EXTRA_INFO).homesteadDecorationCountUnique).to.equal(null)
|
|
288
|
+
expect(unlocksStatistics({ homestead: { decorations: [] } }, EXTRA_INFO).homesteadDecorationCountUnique).to.equal(0)
|
|
289
|
+
expect(unlocksStatistics({ homestead: { decorations: [{ id: 1, count: 1 }, { id: 2, count: 2 }] } }, EXTRA_INFO).homesteadDecorationCountUnique).to.equal(2)
|
|
290
|
+
})
|
|
285
291
|
})
|
package/tests/wallet.spec.js
CHANGED
|
@@ -79,7 +79,10 @@ describe('statistics > wallet', () => {
|
|
|
79
79
|
gaetingCrystals: null,
|
|
80
80
|
_essenceOfDespairFromWallet: null,
|
|
81
81
|
_essenceOfGreedFromWallet: null,
|
|
82
|
-
_essenceOfTriumphFromWallet: null
|
|
82
|
+
_essenceOfTriumphFromWallet: null,
|
|
83
|
+
antiquatedDucat: null,
|
|
84
|
+
testimonyOfCastoranHeroics: null,
|
|
85
|
+
aetherRichSap: null
|
|
83
86
|
})
|
|
84
87
|
})
|
|
85
88
|
|
|
@@ -204,7 +207,10 @@ describe('statistics > wallet', () => {
|
|
|
204
207
|
gaetingCrystals: 0,
|
|
205
208
|
_essenceOfDespairFromWallet: 0,
|
|
206
209
|
_essenceOfGreedFromWallet: 0,
|
|
207
|
-
_essenceOfTriumphFromWallet: 0
|
|
210
|
+
_essenceOfTriumphFromWallet: 0,
|
|
211
|
+
antiquatedDucat: 0,
|
|
212
|
+
testimonyOfCastoranHeroics: 0,
|
|
213
|
+
aetherRichSap: 0
|
|
208
214
|
})
|
|
209
215
|
})
|
|
210
216
|
|