2017-01-11 17:31:21 +00:00
|
|
|
/// <reference path="LootTemplate.ts" />
|
|
|
|
|
2015-01-14 00:00:00 +00:00
|
|
|
module SpaceTac.Game.Specs {
|
|
|
|
class TestTemplate extends LootTemplate {
|
|
|
|
constructor() {
|
|
|
|
super(SlotType.Shield, "Hexagrid Shield");
|
|
|
|
|
|
|
|
this.min_level = new IntegerRange(2, 100);
|
2015-01-14 00:00:00 +00:00
|
|
|
this.ap_usage = new Range(6, 15);
|
2015-01-14 00:00:00 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
describe("LootGenerator", () => {
|
|
|
|
it("generates items within a given level range", () => {
|
|
|
|
var generator = new LootGenerator();
|
|
|
|
generator.templates = [new TestTemplate()];
|
|
|
|
generator.random.forceNextValue(0.5);
|
|
|
|
|
|
|
|
var equipment = generator.generate(new IntegerRange(3, 6));
|
|
|
|
|
|
|
|
expect(equipment.slot).toBe(SlotType.Shield);
|
|
|
|
expect(equipment.name).toEqual("Hexagrid Shield");
|
|
|
|
expect(equipment.min_level).toBe(5);
|
2015-01-14 00:00:00 +00:00
|
|
|
expect(equipment.ap_usage).toBeCloseTo(6.2727, 0.00001);
|
2015-01-14 00:00:00 +00:00
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|