blob: da15b600a52d0141d55e5c9be2d676aebb3a8c1b [file] [log] [blame]
#!/usr/bin/env python
"""
ego graph
---------
"""
from nose.tools import assert_true, assert_equal
import networkx as nx
class TestGeneratorEgo():
def test_ego(self):
G=nx.star_graph(3)
H=nx.ego_graph(G,0)
assert_true(nx.is_isomorphic(G,H))
G.add_edge(1,11)
G.add_edge(2,22)
G.add_edge(3,33)
H=nx.ego_graph(G,0)
assert_true(nx.is_isomorphic(nx.star_graph(3),H))
G=nx.path_graph(3)
H=nx.ego_graph(G,0)
assert_equal(H.edges(), [(0, 1)])
H=nx.ego_graph(G,0,undirected=True)
assert_equal(H.edges(), [(0, 1)])
H=nx.ego_graph(G,0,center=False)
assert_equal(H.edges(), [])
def test_ego_distance(self):
G=nx.Graph()
G.add_edge(0,1,weight=2,distance=1)
G.add_edge(1,2,weight=2,distance=2)
G.add_edge(2,3,weight=2,distance=1)
assert_equal(sorted(nx.ego_graph(G,0,radius=3).nodes()),[0,1,2,3])
eg=nx.ego_graph(G,0,radius=3,distance='weight')
assert_equal(sorted(eg.nodes()),[0,1])
eg=nx.ego_graph(G,0,radius=3,distance='weight',undirected=True)
assert_equal(sorted(eg.nodes()),[0,1])
eg=nx.ego_graph(G,0,radius=3,distance='distance')
assert_equal(sorted(eg.nodes()),[0,1,2])