MCPcopy Create free account
hub / github.com/pybind/pybind11 / test_reference_sensitive_optional

Function test_reference_sensitive_optional

tests/test_stl.py:230–261  ·  view source on GitHub ↗
(doc)

Source from the content-addressed store, hash-verified

228
229
230def test_reference_sensitive_optional(doc):
231 assert m.double_or_zero_refsensitive(None) == 0
232 assert m.double_or_zero_refsensitive(42) == 84
233 pytest.raises(TypeError, m.double_or_zero_refsensitive, "foo")
234
235 assert (
236 doc(m.double_or_zero_refsensitive)
237 == "double_or_zero_refsensitive(arg0: typing.SupportsInt | typing.SupportsIndex | None) -> int"
238 )
239
240 assert m.half_or_none_refsensitive(0) is None
241 assert m.half_or_none_refsensitive(42) == 21
242 pytest.raises(TypeError, m.half_or_none_refsensitive, "foo")
243
244 assert m.test_nullopt_refsensitive() == 42
245 assert m.test_nullopt_refsensitive(None) == 42
246 assert m.test_nullopt_refsensitive(42) == 42
247 assert m.test_nullopt_refsensitive(43) == 43
248
249 assert m.test_no_assign_refsensitive() == 42
250 assert m.test_no_assign_refsensitive(None) == 42
251 assert m.test_no_assign_refsensitive(m.NoAssign(43)) == 43
252 pytest.raises(TypeError, m.test_no_assign_refsensitive, 43)
253
254 holder = m.OptionalRefSensitiveHolder()
255 mvalue = holder.member
256 assert mvalue.initialized
257 assert holder.member_initialized()
258
259 props = m.OptionalRefSensitiveProperties()
260 assert int(props.access_by_ref) == 42
261 assert int(props.access_by_copy) == 42
262
263
264@pytest.mark.skipif(not hasattr(m, "has_filesystem"), reason="no <filesystem>")

Callers

nothing calls this directly

Calls 3

NoAssignMethod · 0.80
member_initializedMethod · 0.80
docFunction · 0.70

Tested by

no test coverage detected