def test_repr(): """Test __repr__.""" ms = _basebag() assert ms == eval(ms.__repr__()) ms = _basebag('abracadabra') assert ms == eval(ms.__repr__()) assert repr(bag('a')) == "bag(('a',))"
def test_repr(): """Test __repr__.""" ms = _basebag() assert ms == eval(ms.__repr__()) ms = _basebag('abracadabra') assert ms == eval(ms.__repr__()) assert repr(bag('a')) == "bag(('a',))"
def test_copy(): b = _basebag() assert b.copy() == b assert b.copy() is not b b = _basebag('abc') assert b.copy() == b assert b.copy() is not b
def test_nlargest(): abra = _basebag('abracadabra') sort_key = lambda e: (-e[1], e[0]) abra_counts = [('a', 5), ('b', 2), ('r', 2), ('c', 1), ('d', 1)] assert (sorted(abra.nlargest(), key=sort_key) == abra_counts) assert sorted(abra.nlargest(3), key=sort_key) == abra_counts[:3] assert _basebag('abcaba').nlargest(3) == [('a', 3), ('b', 2), ('c', 1)]
def test_rich_comp_subset(): """Test rich comparisons for bags that are subsets of other bags.""" b1 = _basebag('abc') b2 = _basebag('aabc') assert not b1 > b2 assert not b1 >= b2 assert b1 < b2 assert b1 <= b2
def test_rich_comp_subset(): """Test rich comparisons for bags that are subsets of other bags.""" b1 = _basebag('abc') b2 = _basebag('aabc') assert not b1 > b2 assert not b1 >= b2 assert b1 < b2 assert b1 <= b2
def test_nlargest(): """Test nlargest.""" abra = _basebag('abracadabra') sort_key = lambda e: (-e[1], e[0]) abra_counts = [('a', 5), ('b', 2), ('r', 2), ('c', 1), ('d', 1)] assert sorted(abra.nlargest(), key=sort_key) == abra_counts assert sorted(abra.nlargest(3), key=sort_key) == abra_counts[:3] assert _basebag('abcaba').nlargest(3) == [('a', 3), ('b', 2), ('c', 1)]
def test_copy(): """Test copy.""" b = _basebag() assert b.copy() == b assert b.copy() is not b b = _basebag('abc') assert b.copy() == b assert b.copy() is not b
def test_copy(): """Test copy.""" b = _basebag() assert b.copy() == b assert b.copy() is not b b = _basebag('abc') assert b.copy() == b assert b.copy() is not b
def test_str(): assert str(_basebag()) == '_basebag()' assert "'a'^5" in str(_basebag('abracadabra')) assert "'b'^2" in str(_basebag('abracadabra')) assert "'c'" in str(_basebag('abracadabra')) abra_elems = set(("'a'^5", "'b'^2", "'r'^2", "'c'", "'d'")) assert compare_bag_string(bag('abracadabra')) == abra_elems if not _compat.is_py2: assert compare_bag_string(bag('abc')) == compare_bag_string(set('abc'))
def test_rich_comp_unorderable_eq_len(): """Test rich comparisons for bags of equal length but unorderable.""" b1 = _basebag('abb') b2 = _basebag('abc') assert not b1 < b2 assert not b1 <= b2 assert not b1 > b2 assert not b1 >= b2 assert not b1 == b2 assert b1 != b2
def test_rich_comp_unorderable_eq_len(): """Test rich comparisons for bags of equal length but unorderable.""" b1 = _basebag('abb') b2 = _basebag('abc') assert not b1 < b2 assert not b1 <= b2 assert not b1 > b2 assert not b1 >= b2 assert not b1 == b2 assert b1 != b2
def test_rich_comp_equal(): """Test rich comparisons for equal bags.""" assert _basebag() <= _basebag() assert not _basebag() < _basebag() assert _basebag() >= _basebag() assert not _basebag() > _basebag() b1 = _basebag('aabc') b2 = _basebag('aabc') assert not b2 > b1 assert b2 >= b1 assert not b2 < b1 assert b2 <= b1
def test_rich_comp_equal(): """Test rich comparisons for equal bags.""" assert _basebag() <= _basebag() assert not _basebag() < _basebag() assert _basebag() >= _basebag() assert not _basebag() > _basebag() b1 = _basebag('aabc') b2 = _basebag('aabc') assert not b2 > b1 assert b2 >= b1 assert not b2 < b1 assert b2 <= b1
def test_rich_comp_unorderable_diff_len(): """Test rich comparisons for bags of unequal length and unorderable.""" b1 = _basebag('abd') b2 = _basebag('aabc') assert not b1 > b2 assert not b1 >= b2 assert not b1 < b2 assert not b1 <= b2 assert not b2 > b1 assert not b2 >= b1 assert not b2 < b1 assert not b2 <= b1 assert not b1 == b2 assert b1 != b2
def test_rich_comp_unorderable_diff_len(): """Test rich comparisons for bags of unequal length and unorderable.""" b1 = _basebag('abd') b2 = _basebag('aabc') assert not b1 > b2 assert not b1 >= b2 assert not b1 < b2 assert not b1 <= b2 assert not b2 > b1 assert not b2 >= b1 assert not b2 < b1 assert not b2 <= b1 assert not b1 == b2 assert b1 != b2
def test_compare_sets(): """Test comparisons to Sets.""" assert _basebag() == set() assert _basebag('a') == set('a') assert not _basebag('ab') == set('a') assert not _basebag('a') == set('ab') assert not _basebag('aa') == set('a') assert not _basebag('aa') == set('ab') assert not _basebag('ac') == set('ab') assert not _basebag('ac') <= set('ab') assert not _basebag('ac') >= set('ab')
def test_le(): assert _basebag() <= _basebag() assert _basebag() <= _basebag('a') assert _basebag('abc') <= _basebag('aabbbc') assert not _basebag('abbc') <= _basebag('abc') with pytest.raises(TypeError): bag('abc') < set('abc') assert not bag('aabc') < bag('abc')
def test_str(): """Test __str__.""" def compare_bag_string(b): s = str(b) assert s.startswith('{') assert s.endswith('}') return set(s[1:-1].split(', ')) assert str(_basebag()) == '_basebag()' assert "'a'^5" in str(_basebag('abracadabra')) assert "'b'^2" in str(_basebag('abracadabra')) assert "'c'" in str(_basebag('abracadabra')) abra_elems = set(("'a'^5", "'b'^2", "'r'^2", "'c'", "'d'")) assert compare_bag_string(bag('abracadabra')) == abra_elems if not is_py2: assert compare_bag_string(bag('abc')) == compare_bag_string(set('abc'))
def test_str(): """Test __str__.""" def compare_bag_string(b): s = str(b) assert s.startswith('{') assert s.endswith('}') return set(s[1:-1].split(', ')) assert str(_basebag()) == '_basebag()' assert "'a'^5" in str(_basebag('abracadabra')) assert "'b'^2" in str(_basebag('abracadabra')) assert "'c'" in str(_basebag('abracadabra')) abra_elems = set(("'a'^5", "'b'^2", "'r'^2", "'c'", "'d'")) assert compare_bag_string(bag('abracadabra')) == abra_elems if not _compat.is_py2: assert compare_bag_string(bag('abc')) == compare_bag_string(set('abc'))
def test_init(): b = _basebag('abracadabra') assert b.count('a') == 5 assert b.count('b') == 2 assert b.count('r') == 2 assert b.count('c') == 1 assert b.count('d') == 1 b2 = bag(b) assert b2 == b
def test_init(): """Test __init__.""" b = _basebag('abracadabra') assert b.count('a') == 5 assert b.count('b') == 2 assert b.count('r') == 2 assert b.count('c') == 1 assert b.count('d') == 1 b2 = bag(b) assert b2 == b
def test_mul(): ms = _basebag('aab') assert ms * set('a') == _basebag(('aa', 'aa', 'ba')) assert ms * set() == _basebag()
def test_contains(): """Test __contains__.""" assert 'a' in _basebag('bbac') assert 'a' not in _basebag() assert 'a' not in _basebag('missing letter')
def test_compare_unorderable(): assert not _basebag('ac') <= set('ab') assert not _basebag('ac') >= set('ab')
def test_contains(): assert 'a' in _basebag('bbac') assert 'a' not in _basebag() assert 'a' not in _basebag('missing letter')
def test_compare_unorderable(): assert not _basebag('ac') <= set('ab') assert not _basebag('ac') >= set('ab')
def test_count(): ms = _basebag('abracadabra') assert ms.count('a') == 5 assert ms.count('x') == 0
def test_len(): """Test __len__.""" assert len(_basebag()) == 0 assert len(_basebag('abc')) == 3 assert len(_basebag('aaba')) == 4
def test_contains(): """Test __contains__.""" assert 'a' in _basebag('bbac') assert 'a' not in _basebag() assert 'a' not in _basebag('missing letter')
def test_compare_ne_set(bag_data, set_data): assert not _basebag(bag_data) == set(set_data)
def test_compare_eq_set(bag_data, set_data): """Test comparisons to Sets that should be equal.""" assert _basebag(bag_data) == set(set_data)
def test_repr(): ms = _basebag() assert ms == eval(ms.__repr__()) ms = _basebag('abracadabra') assert ms == eval(ms.__repr__())
def test_count(): """Test count.""" ms = _basebag('abracadabra') assert ms.count('a') == 5 assert ms.count('x') == 0
def test_from_map(): """Test from_mapping.""" assert _basebag.from_mapping({'a': 1, 'b': 2}) == _basebag('abb')
def test_mul(): """Test __mul__.""" ms = _basebag('aab') assert ms * set('a') == _basebag(('aa', 'aa', 'ba')) assert ms * set() == _basebag()
def test_from_map(): """Test from_mapping.""" assert _basebag.from_mapping({'a': 1, 'b': 2}) == _basebag('abb') assert _basebag.from_mapping({'a': 1, 'b': 2, 'c': 0}) == _basebag('abb')
def test_from_map(): assert _basebag._from_map({'a': 1, 'b': 2}) == _basebag('abb')
def test_count(): """Test count.""" ms = _basebag('abracadabra') assert ms.count('a') == 5 assert ms.count('x') == 0
def test_len(): assert len(_basebag()) == 0 assert len(_basebag('abc')) == 3 assert len(_basebag('aaba')) == 4
def test_len(): """Test __len__.""" assert len(_basebag()) == 0 assert len(_basebag('abc')) == 3 assert len(_basebag('aaba')) == 4
def test_compare_eq_set(bag_data, set_data): """Test comparisons to Sets that should be equal.""" assert _basebag(bag_data) == set(set_data)
def test_compare_ne_set(bag_data, set_data): assert not _basebag(bag_data) == set(set_data)