diff --git a/conformance/tests/specialtypes_optional_nested.py b/conformance/tests/specialtypes_optional_nested.py new file mode 100644 index 000000000..dec487043 --- /dev/null +++ b/conformance/tests/specialtypes_optional_nested.py @@ -0,0 +1,16 @@ +""" +Tests for behavior of nested Optional types collapsing. + +Optional[Optional[T]] should behave as Optional[T]. +""" + +from typing import Optional, assert_type + + +def test_nested_optional(x: Optional[Optional[int]]) -> None: + # Should behave like Optional[int] + assert_type(x, Optional[int]) + + +def test_nested_optional_error(x: Optional[Optional[int]]) -> int: + return x # E