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

37 lines
2.1 KiB
TypeScript
Raw Permalink Normal View History

2017-09-24 22:23:22 +00:00
module TK.SpaceTac.Specs {
2017-10-26 21:47:13 +00:00
testing("Star", test => {
test.case("lists links to other stars", check => {
var universe = new Universe();
2017-07-06 22:55:29 +00:00
universe.stars.push(new Star(universe, 0, 0, "Star A"));
universe.stars.push(new Star(universe, 1, 0, "Star B"));
universe.stars.push(new Star(universe, 0, 1, "Star C"));
universe.stars.push(new Star(universe, 1, 1, "Star D"));
universe.addLink(universe.stars[0], universe.stars[1]);
universe.addLink(universe.stars[0], universe.stars[3]);
var result = universe.stars[0].getLinks();
2017-10-26 21:47:13 +00:00
check.equals(result.length, 2);
check.equals(result[0], new StarLink(universe.stars[0], universe.stars[1]));
check.equals(result[1], new StarLink(universe.stars[0], universe.stars[3]));
2017-10-26 21:47:13 +00:00
check.equals(universe.stars[0].getLinkTo(universe.stars[1]), universe.starlinks[0]);
check.equals(universe.stars[0].getLinkTo(universe.stars[2]), null);
check.equals(universe.stars[0].getLinkTo(universe.stars[3]), universe.starlinks[1]);
check.equals(universe.stars[1].getLinkTo(universe.stars[0]), universe.starlinks[0]);
check.equals(universe.stars[1].getLinkTo(universe.stars[2]), null);
check.equals(universe.stars[1].getLinkTo(universe.stars[3]), null);
check.equals(universe.stars[2].getLinkTo(universe.stars[0]), null);
check.equals(universe.stars[2].getLinkTo(universe.stars[1]), null);
check.equals(universe.stars[2].getLinkTo(universe.stars[3]), null);
check.equals(universe.stars[3].getLinkTo(universe.stars[0]), universe.starlinks[1]);
check.equals(universe.stars[3].getLinkTo(universe.stars[1]), null);
check.equals(universe.stars[3].getLinkTo(universe.stars[2]), null);
2017-07-06 22:55:29 +00:00
let neighbors = universe.stars[0].getNeighbors();
2017-10-26 21:47:13 +00:00
check.equals(neighbors.length, 2);
check.contains(neighbors, universe.stars[1]);
check.contains(neighbors, universe.stars[3]);
});
});
}