Spaces:
Paused
Paused
| ; | |
| const assert = require('./../../assert'); | |
| const common = require('./../../common'); | |
| let battle; | |
| describe('Conversion2', () => { | |
| afterEach(() => { | |
| battle.destroy(); | |
| }); | |
| it('should change users type to resist', () => { | |
| battle = common.createBattle([ | |
| [{ species: 'porygon2', moves: ['sleeptalk', 'conversion2', 'spore'] }], | |
| [{ species: 'raticate', moves: ['tackle'] }, | |
| { species: 'zapdos', moves: ['thundershock', 'sleeptalk'] }], | |
| ]); | |
| battle.makeChoices('move conversion2', 'move tackle'); | |
| assert(['Rock', 'Ghost', 'Steel'].includes(battle.p1.active[0].getTypes()[0])); | |
| battle.makeChoices('move spore', 'switch 2'); | |
| battle.makeChoices('move conversion2', 'move sleeptalk'); | |
| assert(['Electric', 'Grass', 'Ground', 'Dragon'].includes(battle.p1.active[0].getTypes()[0]), 'should change type based on submove'); | |
| }); | |
| it('should respect the determined type of the last move', () => { | |
| battle = common.createBattle([ | |
| [{ species: 'porygon2', moves: ['electrify', 'conversion2'] }], | |
| [{ species: 'shuckle', moves: ['tackle'] }], | |
| ]); | |
| battle.makeChoices('move electrify', 'move tackle'); | |
| battle.makeChoices('move conversion2', 'move tackle'); | |
| assert(['Electric', 'Grass', 'Ground', 'Dragon'].includes(battle.p1.active[0].getTypes()[0]), 'Tackle should be considered Electric'); | |
| }); | |
| }); | |