Fixed release pets mounts (#8545)

* Fixed release pets/mounts achievements when fully earned and added unit tests for these changes

* Fixed release pets/mounts achievements to award only when fully earned and added unit tests for these changes, also fixed linting issues

* Updated variable assignments to make more readable

* Revised releaseBoth/Pets/Mounts to include null or undefined checks, also updated unit tests

* fixed integration tests
This commit is contained in:
jerellmendoodoo
2017-07-18 16:34:54 -04:00
committed by Sabe Jones
parent ab777f7006
commit a9195f0d96
9 changed files with 199 additions and 27 deletions

View File

@@ -14,8 +14,12 @@ describe('shared.ops.releaseMounts', () => {
beforeEach(() => {
user = generateUser();
for (let k in content.pets) {
user.items.mounts[k] = content.pets[k];
user.items.mounts[k] = true;
}
user.items.currentMount = animal;
user.items.mounts[animal] = true;
user.balance = 1;
});
@@ -32,7 +36,7 @@ describe('shared.ops.releaseMounts', () => {
});
it('releases mounts', () => {
let [, message] = releaseMounts(user);
let message = releaseMounts(user)[1];
expect(message).to.equal(i18n.t('mountsReleased'));
expect(user.items.mounts[animal]).to.equal(null);
@@ -60,10 +64,27 @@ describe('shared.ops.releaseMounts', () => {
it('increases mountMasterCount achievement', () => {
releaseMounts(user);
expect(user.achievements.mountMasterCount).to.equal(1);
});
it('does not increase mountMasterCount achievement if mount is missing (null)', () => {
let mountMasterCountBeforeRelease = user.achievements.mountMasterCount;
user.items.mounts[animal] = null;
releaseMounts(user);
expect(user.achievements.mountMasterCount).to.equal(mountMasterCountBeforeRelease);
});
it('does not increase mountMasterCount achievement if mount is missing (undefined)', () => {
let mountMasterCountBeforeRelease = user.achievements.mountMasterCount;
delete user.items.mounts[animal];
releaseMounts(user);
expect(user.achievements.mountMasterCount).to.equal(mountMasterCountBeforeRelease);
});
it('subtracts gems from balance', () => {
releaseMounts(user);