MCPcopy
hub / github.com/dmlc/dgl / _test_one

Function _test_one

tests/python/common/test_heterograph-misc.py:65–149  ·  view source on GitHub ↗
(g)

Source from the content-addressed store, hash-verified

63
64def test_query():
65 def _test_one(g):
66 assert g.num_nodes() == 10
67 assert g.num_edges() == 20
68
69 for i in range(10):
70 assert g.has_nodes(i)
71 assert not g.has_nodes(11)
72 assert F.allclose(g.has_nodes([0, 2, 10, 11]), F.tensor([1, 1, 0, 0]))
73
74 src, dst = edge_pair_input()
75 for u, v in zip(src, dst):
76 assert g.has_edges_between(u, v)
77 assert not g.has_edges_between(0, 0)
78 assert F.allclose(
79 g.has_edges_between([0, 0, 3], [0, 9, 8]), F.tensor([0, 1, 1])
80 )
81 assert set(F.asnumpy(g.predecessors(9))) == set([0, 5, 7, 4])
82 assert set(F.asnumpy(g.successors(2))) == set([7, 3])
83
84 assert g.edge_ids(4, 4) == 5
85 assert F.allclose(g.edge_ids([4, 0], [4, 9]), F.tensor([5, 0]))
86
87 src, dst = g.find_edges([3, 6, 5])
88 assert F.allclose(src, F.tensor([5, 7, 4]))
89 assert F.allclose(dst, F.tensor([9, 9, 4]))
90
91 src, dst, eid = g.in_edges(9, form="all")
92 tup = list(zip(F.asnumpy(src), F.asnumpy(dst), F.asnumpy(eid)))
93 assert set(tup) == set([(0, 9, 0), (5, 9, 3), (7, 9, 6), (4, 9, 7)])
94 src, dst, eid = g.in_edges(
95 [9, 0, 8], form="all"
96 ) # test node#0 has no in edges
97 tup = list(zip(F.asnumpy(src), F.asnumpy(dst), F.asnumpy(eid)))
98 assert set(tup) == set(
99 [(0, 9, 0), (5, 9, 3), (7, 9, 6), (4, 9, 7), (3, 8, 9), (7, 8, 12)]
100 )
101
102 src, dst, eid = g.out_edges(0, form="all")
103 tup = list(zip(F.asnumpy(src), F.asnumpy(dst), F.asnumpy(eid)))
104 assert set(tup) == set([(0, 9, 0), (0, 6, 1), (0, 4, 4)])
105 src, dst, eid = g.out_edges(
106 [0, 4, 8], form="all"
107 ) # test node#8 has no out edges
108 tup = list(zip(F.asnumpy(src), F.asnumpy(dst), F.asnumpy(eid)))
109 assert set(tup) == set(
110 [
111 (0, 9, 0),
112 (0, 6, 1),
113 (0, 4, 4),
114 (4, 3, 2),
115 (4, 4, 5),
116 (4, 9, 7),
117 (4, 1, 8),
118 ]
119 )
120
121 src, dst, eid = g.edges("all", "eid")
122 t_src, t_dst = edge_pair_input()

Callers 1

_testFunction · 0.85

Calls 15

edge_pair_inputFunction · 0.85
scipy_coo_inputFunction · 0.85
asnumpyMethod · 0.80
adj_externalMethod · 0.80
num_nodesMethod · 0.45
num_edgesMethod · 0.45
has_nodesMethod · 0.45
has_edges_betweenMethod · 0.45
predecessorsMethod · 0.45
successorsMethod · 0.45
edge_idsMethod · 0.45
find_edgesMethod · 0.45

Tested by

no test coverage detected