#include #include "hexagon.h" #include "ctap.h" void pcheck(struct HL_astar *p, int x1, int y1, int x2, int y2, int expect) { int from, to, dist; from = HL_cantor_xy(x1,y1); to = HL_cantor_xy(x2,y2); HL_astar_clear(p); p->start = from; p->goal = to; dist = HL_findpath(p,0); ok(p->error == 0, "found path from (%02d, %02d) to (%02d, %02d) with no error", x1, y1, x2, y2); ok(dist == expect, "found path from (%02d, %02d) to (%02d, %02d) path length = %d (expect %d)", x1, y1, x2, y2, dist, expect); } /* make hex 55 missing */ int neighbor55(int hex, int dir) { int neighbor; do { neighbor = HL_adjacent_hex(hex, dir++); } while (neighbor == HL_cantor_xy(5,5)); return neighbor; } int main(void) { struct HL_astar *p; #if 0 int length; #endif plan(2); p = HL_astar_init(0); pcheck(p, 1,1, 10000,10000, 14999); HL_astar_free(p); return 0; }