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

31 lines
1 KiB
TypeScript
Raw Normal View History

/// <reference path="LootTemplate.ts" />
2017-02-09 00:00:35 +00:00
module TS.SpaceTac.Specs {
2015-01-14 00:00:00 +00:00
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()];
2017-02-26 17:44:15 +00:00
generator.random = new SkewedRandomGenerator([0.5]);
2015-01-14 00:00:00 +00:00
var equipment = generator.generate(new IntegerRange(3, 6));
2017-03-09 17:11:00 +00:00
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");
}
2015-01-14 00:00:00 +00:00
});
});
}