1
0
Fork 0
spacetac/src/ui/battle/ArenaShip.spec.ts

46 lines
1.8 KiB
TypeScript

/// <reference path="../TestGame.ts"/>
module TS.SpaceTac.UI.Specs {
describe("ArenaShip", function () {
let testgame = setupBattleview();
it("adds effects display", function () {
let ship = nn(testgame.battleview.battle.playing_ship);
let sprite = nn(testgame.battleview.arena.findShipSprite(ship));
expect(sprite.effects.children.length).toBe(0);
sprite.displayValueChanged(new ValueChangeEvent(ship, ship.attributes.power_generation, -4));
expect(sprite.effects.children.length).toBe(1);
let t1 = <Phaser.Text>sprite.effects.getChildAt(0);
expect(t1.text).toBe("power generation -4");
sprite.displayValueChanged(new ValueChangeEvent(ship, ship.values.shield, 12));
expect(sprite.effects.children.length).toBe(2);
let t2 = <Phaser.Text>sprite.effects.getChildAt(1);
expect(t2.text).toBe("shield +12");
});
it("adds sticky effects display", function () {
let ship = nn(testgame.battleview.battle.playing_ship);
let sprite = nn(testgame.battleview.arena.findShipSprite(ship));
expect(sprite.sticky_effects.children.length).toBe(0);
ship.addStickyEffect(new StickyEffect(new BaseEffect("test")));
testgame.battleview.log_processor.jumpToEnd();
expect(sprite.sticky_effects.children.length).toBe(1);
ship.addStickyEffect(new StickyEffect(new BaseEffect("test")));
testgame.battleview.log_processor.jumpToEnd();
expect(sprite.sticky_effects.children.length).toBe(2);
ship.cleanStickyEffects();
testgame.battleview.log_processor.jumpToEnd();
expect(sprite.sticky_effects.children.length).toBe(0);
});
});
}