Added set::contains and generalized dict::contains (#1884)

Dynamically resolving __contains__ on each call is wasteful since set
has a public PySet_Contains function.
This commit is contained in:
Sergei Lebedev
2019-08-16 12:32:27 -07:00
committed by Wenzel Jakob
parent 5b0ea77c62
commit 08b0bda4bc
3 changed files with 26 additions and 2 deletions

View File

@@ -37,6 +37,10 @@ def test_set(capture, doc):
key: key4
"""
assert not m.set_contains(set([]), 42)
assert m.set_contains({42}, 42)
assert m.set_contains({"foo"}, "foo")
assert doc(m.get_list) == "get_list() -> list"
assert doc(m.print_list) == "print_list(arg0: list) -> None"
@@ -53,6 +57,10 @@ def test_dict(capture, doc):
key: key2, value=value2
"""
assert not m.dict_contains({}, 42)
assert m.dict_contains({42: None}, 42)
assert m.dict_contains({"foo": None}, "foo")
assert doc(m.get_dict) == "get_dict() -> dict"
assert doc(m.print_dict) == "print_dict(arg0: dict) -> None"