43 lines
1.2 KiB
TypeScript
43 lines
1.2 KiB
TypeScript
/// <reference path="../../definitions/jasmine.d.ts"/>
|
|
|
|
module SpaceTac.Game.Specs {
|
|
"use strict";
|
|
|
|
describe("Slot", () => {
|
|
it("checks equipment type", () => {
|
|
var ship = new Ship();
|
|
var slot = ship.addSlot(SlotType.Engine);
|
|
|
|
var equipment = new Equipment();
|
|
equipment.slot = SlotType.Weapon;
|
|
|
|
expect(slot.attached).toBeNull();
|
|
slot.attach(equipment);
|
|
expect(slot.attached).toBeNull();
|
|
|
|
equipment.slot = SlotType.Engine;
|
|
|
|
slot.attach(equipment);
|
|
expect(slot.attached).toBe(equipment);
|
|
});
|
|
|
|
it("checks equipment capabilities", () => {
|
|
var ship = new Ship();
|
|
var slot = ship.addSlot(SlotType.Shield);
|
|
|
|
var equipment = new Equipment();
|
|
equipment.slot = SlotType.Shield;
|
|
equipment.requirements.push(new Attribute(AttributeCode.Cap_Gravity, 5));
|
|
|
|
expect(slot.attached).toBeNull();
|
|
slot.attach(equipment);
|
|
expect(slot.attached).toBeNull();
|
|
|
|
ship.cap_gravity.set(6);
|
|
|
|
slot.attach(equipment);
|
|
expect(slot.attached).toBe(equipment);
|
|
});
|
|
});
|
|
}
|