fix(pets): disallow hatching quest pets with Wacky potions

This commit is contained in:
Sabe Jones
2019-04-09 16:25:49 -05:00
parent 060e68ef95
commit 6b933914ef
2 changed files with 17 additions and 1 deletions

View File

@@ -93,6 +93,22 @@ describe('shared.ops.hatch', () => {
done(); done();
} }
}); });
it('does not allow hatching quest pet egg using wacky potion', (done) => {
user.items.eggs = {Bunny: 1};
user.items.hatchingPotions = {Veggie: 1};
user.items.pets = {};
try {
hatch(user, {params: {egg: 'Bunny', hatchingPotion: 'Veggie'}});
} catch (err) {
expect(err).to.be.an.instanceof(BadRequest);
expect(err.message).to.equal(i18n.t('messageInvalidEggPotionCombo'));
expect(user.items.pets).to.be.empty;
expect(user.items.eggs).to.eql({Bunny: 1});
expect(user.items.hatchingPotions).to.eql({Veggie: 1});
done();
}
});
}); });
context('successful hatching', () => { context('successful hatching', () => {

View File

@@ -20,7 +20,7 @@ module.exports = function hatch (user, req = {}) {
throw new NotFound(i18n.t('messageMissingEggPotion', req.language)); throw new NotFound(i18n.t('messageMissingEggPotion', req.language));
} }
if (content.hatchingPotions[hatchingPotion].premium && !content.dropEggs[egg]) { if ((content.hatchingPotions[hatchingPotion].premium || content.hatchingPotions[hatchingPotion].wacky) && !content.dropEggs[egg]) {
throw new BadRequest(i18n.t('messageInvalidEggPotionCombo', req.language)); throw new BadRequest(i18n.t('messageInvalidEggPotionCombo', req.language));
} }