def testTiny(self): g = astar.Graph(n=2) assert g.CountEdges() == 0 assert g.CountMissingEdges() == 1 assert not g.HasEdge(0, 1) assert 0 == g.CountEdgesByNode(0) assert 0 == g.CountEdgesByNode(1) assert 1 == g.CountMissingEdgesByNode(0) assert 1 == g.CountMissingEdgesByNode(1)
def testSmallEmpty(self): g = astar.Graph(n=3) assert g.CountEdges() == 0 assert g.CountMissingEdges() == 3 for i in xrange(3): assert 0 == g.CountEdgesByNode(i) assert 2 == g.CountMissingEdgesByNode(i) for j in xrange(i): assert not g.HasEdge(i, j) assert not g.HasEdge(j, i)
def testCopyIsDeep(self): g1 = astar.Graph(n=3) g1.SetEdge(1, 2) g2 = g1.Copy() assert g2.HasEdge(1, 2) g2.SetEdge(1, 2, set=False) assert not g2.HasEdge(1, 2) assert 0 == g2.CountEdges() assert 3 == g2.CountMissingEdges() assert 2 == g2.CountMissingEdgesByNode(0) assert 2 == g2.CountMissingEdgesByNode(1) assert 2 == g2.CountMissingEdgesByNode(2) assert g1.HasEdge(1, 2) assert 1 == g1.CountEdges() assert 2 == g1.CountMissingEdges() assert 2 == g1.CountMissingEdgesByNode(0) assert 1 == g1.CountMissingEdgesByNode(1) assert 1 == g1.CountMissingEdgesByNode(2)
def main(): g = astar.Graph([{ 'lat': 0, 'lng': 0 }, { 'lat': 5, 'lng': 0 }, { 'lat': -1, 'lng': 0 }, { 'lat': -2, 'lng': 0 }, { 'lat': -3, 'lng': 0 }, { 'lat': -4, 'lng': 0 }], [{ 'a': 0, 'b': 2 }, { 'a': 0, 'b': 1 }, { 'a': 2, 'b': 3 }, { 'a': 3, 'b': 4 }, { 'a': 4, 'b': 5 }], 0, 1) print(g.astar())
def testSymmetry(self): g = astar.Graph(n=3) g.SetEdge(1, 2) assert g.HasEdge(2, 1)
def testSetUnset(self): g = astar.Graph(n=3) g.SetEdge(1, 2) assert g.HasEdge(1, 2) g.SetEdge(1, 2, set=False) assert not g.HasEdge(1, 2)