mirror of https://github.com/jab/bidict.git
Fix `assume` for BIDICT_AND_MAPPING_FROM_DIFFERENT_ITEMS hypothesis strategy.
Should not be order-sensitive. Must now suppress `too_slow` health check for `test_unequal_to_mapping_with_different_items()`
This commit is contained in:
parent
23b72434ec
commit
1eb330ae34
|
@ -172,15 +172,19 @@ def _bidict_and_mapping_from_items(
|
|||
else:
|
||||
map_cls = draw(map_types)
|
||||
bi_items_ = draw(bi_items)
|
||||
if map_items in (_SAME_AS_BI_ITEMS, _SAME_AS_BI_ITEMS_DIFF_ORDER):
|
||||
same_items = map_items in (_SAME_AS_BI_ITEMS, _SAME_AS_BI_ITEMS_DIFF_ORDER)
|
||||
if same_items:
|
||||
map_items_ = bi_items_[:]
|
||||
if map_items is _SAME_AS_BI_ITEMS_DIFF_ORDER:
|
||||
draw(RAND).shuffle(map_items_)
|
||||
assume(map_items_ != bi_items_)
|
||||
else:
|
||||
map_items_ = draw(map_items)
|
||||
assume(map_items_ != bi_items_)
|
||||
return bi_cls(bi_items_), map_cls(map_items_)
|
||||
b = bi_cls(bi_items_)
|
||||
m = map_cls(map_items_)
|
||||
if not same_items:
|
||||
assume(m.items() != b.items())
|
||||
return b, m
|
||||
|
||||
|
||||
BIDICT_AND_MAPPING_FROM_SAME_ITEMS_NODUP = _bidict_and_mapping_from_items()
|
||||
|
|
|
@ -15,7 +15,7 @@ from collections import OrderedDict
|
|||
from weakref import ref
|
||||
|
||||
import pytest
|
||||
from hypothesis import given
|
||||
from hypothesis import HealthCheck, given, settings
|
||||
|
||||
import _setup_hypothesis
|
||||
import _strategies as st
|
||||
|
@ -43,6 +43,7 @@ def test_unequal_to_non_mapping(bi, not_a_mapping):
|
|||
|
||||
|
||||
@given(st.BIDICT_AND_MAPPING_FROM_DIFFERENT_ITEMS)
|
||||
@settings(suppress_health_check=[HealthCheck.too_slow])
|
||||
def test_unequal_to_mapping_with_different_items(bidict_and_mapping_from_different_items):
|
||||
"""Bidicts should be unequal to mappings containing different items."""
|
||||
bi, mapping = bidict_and_mapping_from_different_items
|
||||
|
|
Loading…
Reference in New Issue