mirror of
https://github.com/sudoxnym/habitica.git
synced 2026-08-04 01:29:21 +00:00
Refactor armoire test no longer need to be updated when items are added to the armoire
Fixes #5739
This commit is contained in:
parent
2d59bcab61
commit
ba2753edc2
1 changed files with 9 additions and 25 deletions
|
|
@ -3,6 +3,7 @@ expect = require 'expect.js'
|
||||||
sinon = require 'sinon'
|
sinon = require 'sinon'
|
||||||
moment = require 'moment'
|
moment = require 'moment'
|
||||||
shared = require '../../common/script/index.coffee'
|
shared = require '../../common/script/index.coffee'
|
||||||
|
Content = require '../../common/script/content.coffee'
|
||||||
shared.i18n.translations = require('../../website/src/i18n.js').translations
|
shared.i18n.translations = require('../../website/src/i18n.js').translations
|
||||||
test_helper = require './test_helper'
|
test_helper = require './test_helper'
|
||||||
test_helper.addCustomMatchers()
|
test_helper.addCustomMatchers()
|
||||||
|
|
@ -514,28 +515,11 @@ describe 'User', ->
|
||||||
|
|
||||||
describe 'Enchanted Armoire', ->
|
describe 'Enchanted Armoire', ->
|
||||||
user = newUser()
|
user = newUser()
|
||||||
fullArmoire =
|
fullArmoire = {}
|
||||||
'weapon_warrior_0': true,
|
_(Content.gearTypes).each (type) ->
|
||||||
'armor_armoire_gladiatorArmor':true,
|
_(Content.gear.tree[type].armoire).each (value, gear_name) ->
|
||||||
'armor_armoire_goldenToga':true,
|
armoire_gear = "#{type}_armoire_#{gear_name}"
|
||||||
'armor_armoire_hornedIronArmor':true,
|
fullArmoire[armoire_gear] = true
|
||||||
'armor_armoire_lunarArmor':true,
|
|
||||||
'armor_armoire_rancherRobes':true,
|
|
||||||
'head_armoire_blueHairbow':true,
|
|
||||||
'head_armoire_gladiatorHelm':true,
|
|
||||||
'head_armoire_goldenLaurels':true,
|
|
||||||
'head_armoire_hornedIronHelm':true,
|
|
||||||
'head_armoire_lunarCrown':true,
|
|
||||||
'head_armoire_rancherHat':true,
|
|
||||||
'head_armoire_redHairbow':true,
|
|
||||||
'head_armoire_royalCrown':true,
|
|
||||||
'head_armoire_violetFloppyHat':true,
|
|
||||||
'shield_armoire_gladiatorShield':true,
|
|
||||||
'weapon_armoire_basicCrossbow':true,
|
|
||||||
'weapon_armoire_ironCrook':true,
|
|
||||||
'weapon_armoire_lunarSceptre':true,
|
|
||||||
'weapon_armoire_rancherLasso':true,
|
|
||||||
'weapon_armoire_mythmakerSword':true
|
|
||||||
|
|
||||||
beforeEach ->
|
beforeEach ->
|
||||||
# too many predictableRandom calls to stub, let's return the last element
|
# too many predictableRandom calls to stub, let's return the last element
|
||||||
|
|
@ -548,7 +532,7 @@ describe 'User', ->
|
||||||
|
|
||||||
it 'counts all available equipment before any are claimed', ->
|
it 'counts all available equipment before any are claimed', ->
|
||||||
sinon.stub(user.fns, 'predictableRandom').returns 0
|
sinon.stub(user.fns, 'predictableRandom').returns 0
|
||||||
expect(shared.count.remainingGearInSet(user.items.gear.owned, 'armoire')).to.eql (_.size(fullArmoire) - 1)
|
expect(shared.count.remainingGearInSet(user.items.gear.owned, 'armoire')).to.eql _.size(fullArmoire)
|
||||||
|
|
||||||
it 'does not open without paying', ->
|
it 'does not open without paying', ->
|
||||||
sinon.stub(user.fns, 'predictableRandom').returns 0
|
sinon.stub(user.fns, 'predictableRandom').returns 0
|
||||||
|
|
@ -572,7 +556,7 @@ describe 'User', ->
|
||||||
user.achievements.ultimateGearSets = {'healer':false,'wizard':false,'rogue':true,'warrior':false}
|
user.achievements.ultimateGearSets = {'healer':false,'wizard':false,'rogue':true,'warrior':false}
|
||||||
user.ops.buy({params: {key: 'armoire'}})
|
user.ops.buy({params: {key: 'armoire'}})
|
||||||
expect(user.items.gear.owned).to.eql {'weapon_warrior_0': true, 'shield_armoire_gladiatorShield':true}
|
expect(user.items.gear.owned).to.eql {'weapon_warrior_0': true, 'shield_armoire_gladiatorShield':true}
|
||||||
expect(shared.count.remainingGearInSet(user.items.gear.owned, 'armoire')).to.eql (_.size(fullArmoire) - 2)
|
expect(shared.count.remainingGearInSet(user.items.gear.owned, 'armoire')).to.eql (_.size(fullArmoire) - 1)
|
||||||
expect(user.items.food).to.eql {}
|
expect(user.items.food).to.eql {}
|
||||||
expect(user.stats.exp).to.eql 0
|
expect(user.stats.exp).to.eql 0
|
||||||
expect(user.stats.gp).to.eql 400
|
expect(user.stats.gp).to.eql 400
|
||||||
|
|
@ -597,7 +581,7 @@ describe 'User', ->
|
||||||
sinon.stub(user.fns, 'predictableRandom', cycle [.5,.5])
|
sinon.stub(user.fns, 'predictableRandom', cycle [.5,.5])
|
||||||
user.ops.buy({params: {key: 'armoire'}})
|
user.ops.buy({params: {key: 'armoire'}})
|
||||||
expect(user.items.gear.owned).to.eql {'weapon_warrior_0': true, 'shield_armoire_gladiatorShield':true, 'head_armoire_hornedIronHelm':true}
|
expect(user.items.gear.owned).to.eql {'weapon_warrior_0': true, 'shield_armoire_gladiatorShield':true, 'head_armoire_hornedIronHelm':true}
|
||||||
expect(shared.count.remainingGearInSet(user.items.gear.owned, 'armoire')).to.eql (_.size(fullArmoire) - 3)
|
expect(shared.count.remainingGearInSet(user.items.gear.owned, 'armoire')).to.eql (_.size(fullArmoire) - 2)
|
||||||
expect(user.items.food).to.eql {'Honey': 1}
|
expect(user.items.food).to.eql {'Honey': 1}
|
||||||
expect(user.stats.exp).to.eql 30
|
expect(user.stats.exp).to.eql 30
|
||||||
expect(user.stats.gp).to.eql 100
|
expect(user.stats.gp).to.eql 100
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue