#!/usr/bin/env python import networkx as nx from .base_test import BaseTestAttributeMixing, BaseTestDegreeMixing class TestAttributeMixingXY(BaseTestAttributeMixing): def test_node_attribute_xy_undirected(self): attrxy = sorted(nx.node_attribute_xy(self.G, 'fish')) attrxy_result = sorted([('one', 'one'), ('one', 'one'), ('two', 'two'), ('two', 'two'), ('one', 'red'), ('red', 'one'), ('blue', 'two'), ('two', 'blue') ]) assert attrxy == attrxy_result def test_node_attribute_xy_undirected_nodes(self): attrxy = sorted(nx.node_attribute_xy(self.G, 'fish', nodes=['one', 'yellow'])) attrxy_result = sorted([ ]) assert attrxy == attrxy_result def test_node_attribute_xy_directed(self): attrxy = sorted(nx.node_attribute_xy(self.D, 'fish')) attrxy_result = sorted([('one', 'one'), ('two', 'two'), ('one', 'red'), ('two', 'blue') ]) assert attrxy == attrxy_result def test_node_attribute_xy_multigraph(self): attrxy = sorted(nx.node_attribute_xy(self.M, 'fish')) attrxy_result = [('one', 'one'), ('one', 'one'), ('one', 'one'), ('one', 'one'), ('two', 'two'), ('two', 'two') ] assert attrxy == attrxy_result def test_node_attribute_xy_selfloop(self): attrxy = sorted(nx.node_attribute_xy(self.S, 'fish')) attrxy_result = [('one', 'one'), ('two', 'two') ] assert attrxy == attrxy_result class TestDegreeMixingXY(BaseTestDegreeMixing): def test_node_degree_xy_undirected(self): xy = sorted(nx.node_degree_xy(self.P4)) xy_result = sorted([(1, 2), (2, 1), (2, 2), (2, 2), (1, 2), (2, 1)]) assert xy == xy_result def test_node_degree_xy_undirected_nodes(self): xy = sorted(nx.node_degree_xy(self.P4, nodes=[0, 1, -1])) xy_result = sorted([(1, 2), (2, 1), ]) assert xy == xy_result def test_node_degree_xy_directed(self): xy = sorted(nx.node_degree_xy(self.D)) xy_result = sorted([(2, 1), (2, 3), (1, 3), (1, 3)]) assert xy == xy_result def test_node_degree_xy_multigraph(self): xy = sorted(nx.node_degree_xy(self.M)) xy_result = sorted([(2, 3), (2, 3), (3, 2), (3, 2), (2, 3), (3, 2), (1, 2), (2, 1)]) assert xy == xy_result def test_node_degree_xy_selfloop(self): xy = sorted(nx.node_degree_xy(self.S)) xy_result = sorted([(2, 2), (2, 2)]) assert xy == xy_result def test_node_degree_xy_weighted(self): G = nx.Graph() G.add_edge(1, 2, weight=7) G.add_edge(2, 3, weight=10) xy = sorted(nx.node_degree_xy(G, weight='weight')) xy_result = sorted([(7, 17), (17, 10), (17, 7), (10, 17)]) assert xy == xy_result