202
207
assert_equal(sorted(G.edges()), sorted(P.edges()))
203
208
assert_equal(sorted(G.edges(data=True)), sorted(P.edges(data=True)))
205
def test_convert_node_labels_to_integers(self):
206
# test that empty graph converts fine for all options
208
H=convert_node_labels_to_integers(G,100)
209
assert_equal(H.name, '(empty_graph(0))_with_int_labels')
210
assert_equal(H.nodes(), [])
211
assert_equal(H.edges(), [])
213
for opt in ["default", "sorted", "increasing degree",
214
"decreasing degree"]:
216
H=convert_node_labels_to_integers(G,100, ordering=opt)
217
assert_equal(H.name, '(empty_graph(0))_with_int_labels')
218
assert_equal(H.nodes(), [])
219
assert_equal(H.edges(), [])
222
G.add_edges_from([('A','B'),('A','C'),('B','C'),('C','D')])
224
H=convert_node_labels_to_integers(G)
225
degH=H.degree().values()
226
degG=G.degree().values()
227
assert_equal(sorted(degH), sorted(degG))
229
H=convert_node_labels_to_integers(G,1000)
230
degH=H.degree().values()
231
degG=G.degree().values()
232
assert_equal(sorted(degH), sorted(degG))
233
assert_equal(H.nodes(), [1000, 1001, 1002, 1003])
235
H=convert_node_labels_to_integers(G,ordering="increasing degree")
236
degH=H.degree().values()
237
degG=G.degree().values()
238
assert_equal(sorted(degH), sorted(degG))
239
assert_equal(degree(H,0), 1)
240
assert_equal(degree(H,1), 2)
241
assert_equal(degree(H,2), 2)
242
assert_equal(degree(H,3), 3)
244
H=convert_node_labels_to_integers(G,ordering="decreasing degree")
245
degH=H.degree().values()
246
degG=G.degree().values()
247
assert_equal(sorted(degH), sorted(degG))
248
assert_equal(degree(H,0), 3)
249
assert_equal(degree(H,1), 2)
250
assert_equal(degree(H,2), 2)
251
assert_equal(degree(H,3), 1)
253
H=convert_node_labels_to_integers(G,ordering="increasing degree",
254
discard_old_labels=False)
255
degH=H.degree().values()
256
degG=G.degree().values()
257
assert_equal(sorted(degH), sorted(degG))
258
assert_equal(degree(H,0), 1)
259
assert_equal(degree(H,1), 2)
260
assert_equal(degree(H,2), 2)
261
assert_equal(degree(H,3), 3)
262
mapping=H.node_labels
263
assert_equal(mapping['C'], 3)
264
assert_equal(mapping['D'], 0)
265
assert_true(mapping['A']==1 or mapping['A']==2)
266
assert_true(mapping['B']==1 or mapping['B']==2)
269
G.add_edges_from([('C','D'),('A','B'),('A','C'),('B','C')])
271
H=convert_node_labels_to_integers(G,ordering="sorted")
272
degH=H.degree().values()
273
degG=G.degree().values()
274
assert_equal(sorted(degH), sorted(degG))
276
H=convert_node_labels_to_integers(G,ordering="sorted",
277
discard_old_labels=False)
278
mapping=H.node_labels
279
assert_equal(mapping['A'], 0)
280
assert_equal(mapping['B'], 1)
281
assert_equal(mapping['C'], 2)
282
assert_equal(mapping['D'], 3)
284
assert_raises(networkx.exception.NetworkXError,
285
convert_node_labels_to_integers, G,
286
ordering="increasing age")
288
def test_relabel(self):
290
G.add_edges_from([('A','B'),('A','C'),('B','C'),('C','D')])
291
mapping={'A':'aardvark','B':'bear','C':'cat','D':'dog'}
292
H=relabel_nodes(G,mapping)
293
assert_equal(sorted(H.nodes()), ['aardvark', 'bear', 'cat', 'dog'])
298
H=relabel_nodes(G,mapping)
299
assert_equal(sorted(H.nodes()), [65, 66, 67, 68])
301
"""convert_data_structure
302
G1.has_edge('B', 'A')
306
[('A', 'B'), ('A', 'C'), ('A', 'D')]
307
UG.has_edge('B', 'A')
312
DG.remove_edge('A','B')
315
UG.remove_edge('A','B')
210
def test_directed_to_undirected(self):
211
edges1 = [(0, 1), (1, 2), (2, 0)]
212
edges2 = [(0, 1), (1, 2), (0, 2)]
213
assert_true(self.edgelists_equal(nx.Graph(nx.DiGraph(edges1)).edges(),edges1))
214
assert_true(self.edgelists_equal(nx.Graph(nx.DiGraph(edges2)).edges(),edges1))
215
assert_true(self.edgelists_equal(nx.MultiGraph(nx.DiGraph(edges1)).edges(),edges1))
216
assert_true(self.edgelists_equal(nx.MultiGraph(nx.DiGraph(edges2)).edges(),edges1))
218
assert_true(self.edgelists_equal(nx.MultiGraph(nx.MultiDiGraph(edges1)).edges(),
220
assert_true(self.edgelists_equal(nx.MultiGraph(nx.MultiDiGraph(edges2)).edges(),
223
assert_true(self.edgelists_equal(nx.Graph(nx.MultiDiGraph(edges1)).edges(),edges1))
224
assert_true(self.edgelists_equal(nx.Graph(nx.MultiDiGraph(edges2)).edges(),edges1))