mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-17 06:37:23 +01:00
No Ethereal Surge on Mages (#10121)
* problem location identified (breaks code) * problem identification notes * Add class checking to ES (does not yet notify user) * Add error message * Add .gitattributes Attempting to fix line ending disaster * package stuff so I can see what's broken * add reminder and hopefully fix gitattributes * Fix lint errors * Redo surge fail notifs * exterminate rogue comment, fix gitattributes * Remove unused import As per @paglias' request. * fix(lint): remove extraneous expression * Delete .gitattributes * Fix skill key surge -> mpheal * Show notification only when there are mages in party * Fix notification being too big and appearing outside the notification div * Remove unused code * Only show the notification on parties with 2 or more mages The caster is a mage, so certainly at least 1 mage will be counted. * Automated test: mpheal does not heal other mages * Fix lint error * Fix typo in test description * Increase performance of test * Using target instead of requestion partyMembers again * Rename variable 'party' to 'partyMembers' * Update strings in English * spell -> Skill
This commit is contained in:
committed by
Matteo Pagliazzi
parent
df69208caa
commit
c21726ec61
@@ -187,6 +187,35 @@ describe('POST /user/class/cast/:spellId', () => {
|
||||
expect(group.chat[0].uuid).to.equal('system');
|
||||
});
|
||||
|
||||
it('Ethereal Surge does not recover mp of other mages', async () => {
|
||||
let group = await createAndPopulateGroup({
|
||||
groupDetails: { type: 'party', privacy: 'private' },
|
||||
members: 4,
|
||||
});
|
||||
|
||||
let promises = [];
|
||||
promises.push(group.groupLeader.update({'stats.mp': 200, 'stats.class': 'wizard', 'stats.lvl': 20}));
|
||||
promises.push(group.members[0].update({'stats.mp': 0, 'stats.class': 'warrior', 'stats.lvl': 20}));
|
||||
promises.push(group.members[1].update({'stats.mp': 0, 'stats.class': 'wizard', 'stats.lvl': 20}));
|
||||
promises.push(group.members[2].update({'stats.mp': 0, 'stats.class': 'rogue', 'stats.lvl': 20}));
|
||||
promises.push(group.members[3].update({'stats.mp': 0, 'stats.class': 'healer', 'stats.lvl': 20}));
|
||||
await Promise.all(promises);
|
||||
|
||||
await group.groupLeader.post('/user/class/cast/mpheal');
|
||||
|
||||
promises = [];
|
||||
promises.push(group.members[0].sync());
|
||||
promises.push(group.members[1].sync());
|
||||
promises.push(group.members[2].sync());
|
||||
promises.push(group.members[3].sync());
|
||||
await Promise.all(promises);
|
||||
|
||||
expect(group.members[0].stats.mp).to.be.greaterThan(0); // warrior
|
||||
expect(group.members[1].stats.mp).to.equal(0); // wizard
|
||||
expect(group.members[2].stats.mp).to.be.greaterThan(0); // rogue
|
||||
expect(group.members[3].stats.mp).to.be.greaterThan(0); // healer
|
||||
});
|
||||
|
||||
it('cast bulk', async () => {
|
||||
let { group, groupLeader } = await createAndPopulateGroup({
|
||||
groupDetails: { type: 'party', privacy: 'private' },
|
||||
|
||||
Reference in New Issue
Block a user