Mercurial > repos > shellac > sam_consensus_v3
view env/lib/python3.9/site-packages/networkx/generators/tests/test_stochastic.py @ 0:4f3585e2f14b draft default tip
"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author | shellac |
---|---|
date | Mon, 22 Mar 2021 18:12:50 +0000 |
parents | |
children |
line wrap: on
line source
"""Unit tests for the :mod:`networkx.generators.stochastic` module.""" import pytest import networkx as nx class TestStochasticGraph: """Unit tests for the :func:`~networkx.stochastic_graph` function. """ def test_default_weights(self): G = nx.DiGraph() G.add_edge(0, 1) G.add_edge(0, 2) S = nx.stochastic_graph(G) assert nx.is_isomorphic(G, S) assert sorted(S.edges(data=True)) == [ (0, 1, {"weight": 0.5}), (0, 2, {"weight": 0.5}), ] def test_in_place(self): """Tests for an in-place reweighting of the edges of the graph. """ G = nx.DiGraph() G.add_edge(0, 1, weight=1) G.add_edge(0, 2, weight=1) nx.stochastic_graph(G, copy=False) assert sorted(G.edges(data=True)) == [ (0, 1, {"weight": 0.5}), (0, 2, {"weight": 0.5}), ] def test_arbitrary_weights(self): G = nx.DiGraph() G.add_edge(0, 1, weight=1) G.add_edge(0, 2, weight=1) S = nx.stochastic_graph(G) assert sorted(S.edges(data=True)) == [ (0, 1, {"weight": 0.5}), (0, 2, {"weight": 0.5}), ] def test_multidigraph(self): G = nx.MultiDiGraph() G.add_edges_from([(0, 1), (0, 1), (0, 2), (0, 2)]) S = nx.stochastic_graph(G) d = dict(weight=0.25) assert sorted(S.edges(data=True)) == [ (0, 1, d), (0, 1, d), (0, 2, d), (0, 2, d), ] def test_graph_disallowed(self): with pytest.raises(nx.NetworkXNotImplemented): nx.stochastic_graph(nx.Graph()) def test_multigraph_disallowed(self): with pytest.raises(nx.NetworkXNotImplemented): nx.stochastic_graph(nx.MultiGraph())