Pokemon_server / test /sim /misc /teampreview.js
Jofthomas's picture
Jofthomas HF staff
Upload 4781 files
5c2ed06 verified
'use strict';
const assert = require('../../assert');
const common = require('../../common');
let battle;
describe('Team Preview', () => {
afterEach(() => {
battle.destroy();
});
it('should hide formes of certain Pokemon', () => {
battle = common.createBattle([[
{ species: 'Pumpkaboo-Super', ability: 'pickup', moves: ['sleeptalk'] },
{ species: 'Gourgeist-Small', ability: 'pickup', moves: ['sleeptalk'] },
{ species: 'Dudunsparce-Three-Segment', ability: 'runaway', moves: ['sleeptalk'] },
], [
{ species: 'Silvally', ability: 'rkssystem', moves: ['sleeptalk'] },
{ species: 'Urshifu-Rapid-Strike', ability: 'unseenfist', moves: ['sleeptalk'] },
{ species: 'Zacian', ability: 'intrepidsword', item: 'rustedsword', moves: ['sleeptalk'] },
]]);
for (const line of battle.log) {
if (line.startsWith('|poke|')) {
const details = line.split('|')[3];
assert(details.match(/(Pumpkaboo|Gourgeist|Silvally|Urshifu|Zacian|Dudunsparce)-\*/), `Forme was not hidden; preview details: ${details}`);
}
}
});
it('should hide Arceus formes [Gen 8]', () => {
battle = common.createBattle({ formatid: 'gen8anythinggoes' }, [[
{ species: 'Arceus-Steel', ability: 'multitype', item: 'steelplate', moves: ['sleeptalk'] },
], [
{ species: 'Arceus-Fire', ability: 'multitype', item: 'flameplate', moves: ['sleeptalk'] },
]]);
for (const line of battle.log) {
if (line.startsWith('|poke|')) {
const details = line.split('|')[3];
assert(details.match(/Arceus-\*/), `Forme was not hidden; preview details: ${details}`);
}
}
});
it('should not hide formes of hacked Zacian/Zamazenta formes', () => {
battle = common.createBattle([[
{ species: 'Zacian-Crowned', moves: ['sleeptalk'] },
], [
{ species: 'Zamazenta-Crowned', moves: ['sleeptalk'] },
]]);
for (const line of battle.log) {
if (line.startsWith('|poke|')) {
const details = line.split('|')[3];
assert.false(details.includes('-*'), `Forme was hidden; preview details: ${details}`);
}
}
});
});