This repository has been archived on 2023-03-25. You can view files and clone it, but cannot push or open issues or pull requests.
mightyscape-1.1-deprecated/extensions/networkx/utils/tests/test_random_sequence.py
2020-07-30 01:16:18 +02:00

36 lines
935 B
Python

#!/usr/bin/env python
import pytest
from networkx.utils import powerlaw_sequence,\
zipf_rv, random_weighted_sample,\
weighted_choice
def test_degree_sequences():
seq = powerlaw_sequence(10, seed=1)
seq = powerlaw_sequence(10)
assert len(seq) == 10
def test_zipf_rv():
r = zipf_rv(2.3, xmin=2, seed=1)
r = zipf_rv(2.3, 2, 1)
r = zipf_rv(2.3)
assert type(r), int
pytest.raises(ValueError, zipf_rv, 0.5)
pytest.raises(ValueError, zipf_rv, 2, xmin=0)
def test_random_weighted_sample():
mapping = {'a': 10, 'b': 20}
s = random_weighted_sample(mapping, 2, seed=1)
s = random_weighted_sample(mapping, 2)
assert sorted(s) == sorted(mapping.keys())
pytest.raises(ValueError, random_weighted_sample, mapping, 3)
def test_random_weighted_choice():
mapping = {'a': 10, 'b': 0}
c = weighted_choice(mapping, seed=1)
c = weighted_choice(mapping)
assert c == 'a'