1
0
Fork 0
spacetac/src/core/LootGenerator.spec.ts

31 lines
1 KiB
TypeScript

/// <reference path="LootTemplate.ts" />
module TS.SpaceTac.Specs {
class TestTemplate extends LootTemplate {
constructor() {
super(SlotType.Shield, "Hexagrid Shield");
this.min_level = new IntegerRange(2, 100);
this.ap_usage = new Range(6, 15);
}
}
describe("LootGenerator", () => {
it("generates items within a given level range", () => {
var generator = new LootGenerator();
generator.templates = [new TestTemplate()];
generator.random = new SkewedRandomGenerator([0.5]);
var equipment = generator.generate(new IntegerRange(3, 6));
if (equipment) {
expect(equipment.slot).toBe(SlotType.Shield);
expect(equipment.name).toEqual("Hexagrid Shield");
expect(equipment.min_level).toBe(5);
expect(equipment.ap_usage).toBeCloseTo(6.2727, 0.00001);
} else {
fail("No equipment generated");
}
});
});
}