diff --git a/pydantic/types.py b/pydantic/types.py
--- a/pydantic/types.py
+++ b/pydantic/types.py
@@ -103,7 +103,6 @@
 
 if TYPE_CHECKING:
     from .dataclasses import Dataclass  # noqa: F401
-    from .fields import ModelField
     from .main import BaseConfig, BaseModel  # noqa: F401
     from .typing import CallableGenerator
 
@@ -159,8 +158,8 @@ def __modify_schema__(cls, field_schema: Dict[str, Any]) -> None:
         update_not_none(field_schema, minItems=cls.min_items, maxItems=cls.max_items)
 
     @classmethod
-    def list_length_validator(cls, v: 'Optional[List[T]]', field: 'ModelField') -> 'Optional[List[T]]':
-        if v is None and not field.required:
+    def list_length_validator(cls, v: 'Optional[List[T]]') -> 'Optional[List[T]]':
+        if v is None:
             return None
 
         v = list_validator(v)
@@ -201,7 +200,10 @@ def __modify_schema__(cls, field_schema: Dict[str, Any]) -> None:
         update_not_none(field_schema, minItems=cls.min_items, maxItems=cls.max_items)
 
     @classmethod
-    def set_length_validator(cls, v: 'Optional[Set[T]]', field: 'ModelField') -> 'Optional[Set[T]]':
+    def set_length_validator(cls, v: 'Optional[Set[T]]') -> 'Optional[Set[T]]':
+        if v is None:
+            return None
+
         v = set_validator(v)
         v_len = len(v)
 

diff --git a/tests/test_types.py b/tests/test_types.py
--- a/tests/test_types.py
+++ b/tests/test_types.py
@@ -156,6 +156,34 @@ class ConListModelMin(BaseModel):
     ]
 
 
+def test_constrained_list_optional():
+    class Model(BaseModel):
+        req: Optional[conlist(str, min_items=1)] = ...
+        opt: Optional[conlist(str, min_items=1)]
+
+    assert Model(req=None).dict() == {'req': None, 'opt': None}
+    assert Model(req=None, opt=None).dict() == {'req': None, 'opt': None}
+
+    with pytest.raises(ValidationError) as exc_info:
+        Model(req=[], opt=[])
+    assert exc_info.value.errors() == [
+        {
+            'loc': ('req',),
+            'msg': 'ensure this value has at least 1 items',
+            'type': 'value_error.list.min_items',
+            'ctx': {'limit_value': 1},
+        },
+        {
+            'loc': ('opt',),
+            'msg': 'ensure this value has at least 1 items',
+            'type': 'value_error.list.min_items',
+            'ctx': {'limit_value': 1},
+        },
+    ]
+
+    assert Model(req=['a'], opt=['a']).dict() == {'req': ['a'], 'opt': ['a']}
+
+
 def test_constrained_list_constraints():
     class ConListModelBoth(BaseModel):
         v: conlist(int, min_items=7, max_items=11)
@@ -307,6 +335,34 @@ class ConSetModelMin(BaseModel):
     ]
 
 
+def test_constrained_set_optional():
+    class Model(BaseModel):
+        req: Optional[conset(str, min_items=1)] = ...
+        opt: Optional[conset(str, min_items=1)]
+
+    assert Model(req=None).dict() == {'req': None, 'opt': None}
+    assert Model(req=None, opt=None).dict() == {'req': None, 'opt': None}
+
+    with pytest.raises(ValidationError) as exc_info:
+        Model(req=set(), opt=set())
+    assert exc_info.value.errors() == [
+        {
+            'loc': ('req',),
+            'msg': 'ensure this value has at least 1 items',
+            'type': 'value_error.set.min_items',
+            'ctx': {'limit_value': 1},
+        },
+        {
+            'loc': ('opt',),
+            'msg': 'ensure this value has at least 1 items',
+            'type': 'value_error.set.min_items',
+            'ctx': {'limit_value': 1},
+        },
+    ]
+
+    assert Model(req={'a'}, opt={'a'}).dict() == {'req': {'a'}, 'opt': {'a'}}
+
+
 def test_constrained_set_constraints():
     class ConSetModelBoth(BaseModel):
         v: conset(int, min_items=7, max_items=11)

BaseSetting Optional[conset(...)] not validated correctly
### Checks

* [x] I added a descriptive title to this issue
* [x] I have searched (google, github) for similar issues and couldn't find anything
* [x] I have read and followed [the docs](https://pydantic-docs.helpmanual.io/) and still think this is a bug

<!-- Sorry to sound so draconian, but every second saved replying to issues is time spend improving pydantic :-) -->

# Bug

Output of `python -c "import pydantic.utils; print(pydantic.utils.version_info())"`:
```
             pydantic version: 1.7.3
            pydantic compiled: True
                 install path: /home/mihai/.virtualenvs/pydantic/lib/python3.9/site-packages/pydantic
               python version: 3.9.1 (default, Dec 13 2020, 11:55:53)  [GCC 10.2.0]
                     platform: Linux-5.10.12-3-ck-x86_64-with-glibc2.32
     optional deps. installed: []
```

```py
from typing import Optional

from pydantic import BaseModel, BaseSettings, IPvAnyNetwork, conset


class InfoModelSet(BaseModel):
    network_segments: Optional[set[IPvAnyNetwork]]


class InfoModelConset(BaseModel):
    network_segments: Optional[conset(IPvAnyNetwork, min_items=1)]


class InfoSettingsSet(BaseSettings):
    network_segments: Optional[set[IPvAnyNetwork]]


class InfoSettingsConset(BaseSettings):
    network_segments: Optional[conset(IPvAnyNetwork, min_items=1)]


print(f"Info model set: {InfoModelSet()}")
print(f"Info model conset: {InfoModelConset()}")
print(f"Info settings set: {InfoSettingsSet()}")
print()
print(f"Info settings conset: {InfoSettingsConset()}")
```

Results in:
```
Info model set: network_segments=None
Info model conset: network_segments=None
Info settings set: network_segments=None

Traceback (most recent call last):
  File "/home/mihai/bug.py", line 25, in <module>
    print(f"Info settings conset: {InfoSettingsConset()}")
  File "pydantic/env_settings.py", line 34, in pydantic.env_settings.BaseSettings.__init__
  File "pydantic/main.py", line 362, in pydantic.main.BaseModel.__init__
pydantic.error_wrappers.ValidationError: 1 validation error for InfoSettingsConset
network_segments
  value is not a valid set (type=type_error.set)
```

I would have expected the sample to pass without raising errors and `network_segments` of the `InfoSettingsConset` instance to be `None`.

tests/test_types.py::test_constrained_list_optional tests/test_types.py::test_constrained_set_optional
tests/test_types.py::test_constrained_bytes_good tests/test_types.py::test_constrained_bytes_default tests/test_types.py::test_constrained_bytes_too_long tests/test_types.py::test_constrained_list_good tests/test_types.py::test_constrained_list_default tests/test_types.py::test_constrained_list_too_long tests/test_types.py::test_constrained_list_too_short tests/test_types.py::test_constrained_list_constraints tests/test_types.py::test_constrained_list_item_type_fails tests/test_types.py::test_conlist tests/test_types.py::test_conlist_wrong_type_default tests/test_types.py::test_constrained_set_good tests/test_types.py::test_constrained_set_default tests/test_types.py::test_constrained_set_default_invalid tests/test_types.py::test_constrained_set_too_long tests/test_types.py::test_constrained_set_too_short tests/test_types.py::test_constrained_set_constraints tests/test_types.py::test_constrained_set_item_type_fails tests/test_types.py::test_conset tests/test_types.py::test_conset_not_required tests/test_types.py::test_constrained_str_good tests/test_types.py::test_constrained_str_default tests/test_types.py::test_constrained_str_too_long tests/test_types.py::test_module_import tests/test_types.py::test_pyobject_none tests/test_types.py::test_pyobject_callable tests/test_types.py::test_default_validators[bool_check-True-True0] tests/test_types.py::test_default_validators[bool_check-1-True0] tests/test_types.py::test_default_validators[bool_check-y-True] tests/test_types.py::test_default_validators[bool_check-Y-True] tests/test_types.py::test_default_validators[bool_check-yes-True] tests/test_types.py::test_default_validators[bool_check-Yes-True] tests/test_types.py::test_default_validators[bool_check-YES-True] tests/test_types.py::test_default_validators[bool_check-true-True] tests/test_types.py::test_default_validators[bool_check-True-True1] tests/test_types.py::test_default_validators[bool_check-TRUE-True0] tests/test_types.py::test_default_validators[bool_check-on-True] tests/test_types.py::test_default_validators[bool_check-On-True] tests/test_types.py::test_default_validators[bool_check-ON-True] tests/test_types.py::test_default_validators[bool_check-1-True1] tests/test_types.py::test_default_validators[bool_check-t-True] tests/test_types.py::test_default_validators[bool_check-T-True] tests/test_types.py::test_default_validators[bool_check-TRUE-True1] tests/test_types.py::test_default_validators[bool_check-False-False0] tests/test_types.py::test_default_validators[bool_check-0-False0] tests/test_types.py::test_default_validators[bool_check-n-False] tests/test_types.py::test_default_validators[bool_check-N-False] tests/test_types.py::test_default_validators[bool_check-no-False] tests/test_types.py::test_default_validators[bool_check-No-False] tests/test_types.py::test_default_validators[bool_check-NO-False] tests/test_types.py::test_default_validators[bool_check-false-False] tests/test_types.py::test_default_validators[bool_check-False-False1] tests/test_types.py::test_default_validators[bool_check-FALSE-False0] tests/test_types.py::test_default_validators[bool_check-off-False] tests/test_types.py::test_default_validators[bool_check-Off-False] tests/test_types.py::test_default_validators[bool_check-OFF-False] tests/test_types.py::test_default_validators[bool_check-0-False1] tests/test_types.py::test_default_validators[bool_check-f-False] tests/test_types.py::test_default_validators[bool_check-F-False] tests/test_types.py::test_default_validators[bool_check-FALSE-False1] tests/test_types.py::test_default_validators[bool_check-None-ValidationError] tests/test_types.py::test_default_validators[bool_check--ValidationError] tests/test_types.py::test_default_validators[bool_check-value36-ValidationError] tests/test_types.py::test_default_validators[bool_check-value37-ValidationError] tests/test_types.py::test_default_validators[bool_check-value38-ValidationError] tests/test_types.py::test_default_validators[bool_check-value39-ValidationError] tests/test_types.py::test_default_validators[bool_check-2-ValidationError0] tests/test_types.py::test_default_validators[bool_check-2-ValidationError1] tests/test_types.py::test_default_validators[bool_check-2-ValidationError2] tests/test_types.py::test_default_validators[bool_check-\x81-ValidationError] tests/test_types.py::test_default_validators[bool_check-value44-ValidationError] tests/test_types.py::test_default_validators[str_check-s-s0] tests/test_types.py::test_default_validators[str_check- tests/test_types.py::test_default_validators[str_check-s-s1] tests/test_types.py::test_default_validators[str_check-1-1] tests/test_types.py::test_default_validators[str_check-xxxxxxxxxxx-ValidationError0] tests/test_types.py::test_default_validators[str_check-xxxxxxxxxxx-ValidationError1] tests/test_types.py::test_default_validators[bytes_check-s-s0] tests/test_types.py::test_default_validators[bytes_check- tests/test_types.py::test_default_validators[bytes_check-s-s1] tests/test_types.py::test_default_validators[bytes_check-1-1] tests/test_types.py::test_default_validators[bytes_check-value57-xx] tests/test_types.py::test_default_validators[bytes_check-True-True] tests/test_types.py::test_default_validators[bytes_check-False-False] tests/test_types.py::test_default_validators[bytes_check-value60-ValidationError] tests/test_types.py::test_default_validators[bytes_check-xxxxxxxxxxx-ValidationError0] tests/test_types.py::test_default_validators[bytes_check-xxxxxxxxxxx-ValidationError1] tests/test_types.py::test_default_validators[int_check-1-10] tests/test_types.py::test_default_validators[int_check-1.9-1] tests/test_types.py::test_default_validators[int_check-1-11] tests/test_types.py::test_default_validators[int_check-1.9-ValidationError] tests/test_types.py::test_default_validators[int_check-1-12] tests/test_types.py::test_default_validators[int_check-12-120] tests/test_types.py::test_default_validators[int_check-12-121] tests/test_types.py::test_default_validators[int_check-12-122] tests/test_types.py::test_default_validators[float_check-1-1.00] tests/test_types.py::test_default_validators[float_check-1.0-1.00] tests/test_types.py::test_default_validators[float_check-1.0-1.01] tests/test_types.py::test_default_validators[float_check-1-1.01] tests/test_types.py::test_default_validators[float_check-1.0-1.02] tests/test_types.py::test_default_validators[float_check-1-1.02] tests/test_types.py::test_default_validators[uuid_check-ebcdab58-6eb8-46fb-a190-d07a33e9eac8-result77] tests/test_types.py::test_default_validators[uuid_check-value78-result78] tests/test_types.py::test_default_validators[uuid_check-ebcdab58-6eb8-46fb-a190-d07a33e9eac8-result79] tests/test_types.py::test_default_validators[uuid_check-\x124Vx\x124Vx\x124Vx\x124Vx-result80] tests/test_types.py::test_default_validators[uuid_check-ebcdab58-6eb8-46fb-a190--ValidationError] tests/test_types.py::test_default_validators[uuid_check-123-ValidationError] tests/test_types.py::test_default_validators[decimal_check-42.24-result83] tests/test_types.py::test_default_validators[decimal_check-42.24-result84] tests/test_types.py::test_default_validators[decimal_check-42.24-result85] tests/test_types.py::test_default_validators[decimal_check- tests/test_types.py::test_default_validators[decimal_check-value87-result87] tests/test_types.py::test_default_validators[decimal_check-not tests/test_types.py::test_default_validators[decimal_check-NaN-ValidationError] tests/test_types.py::test_string_too_long tests/test_types.py::test_string_too_short tests/test_types.py::test_datetime_successful tests/test_types.py::test_datetime_errors tests/test_types.py::test_enum_successful tests/test_types.py::test_enum_fails tests/test_types.py::test_int_enum_successful_for_str_int tests/test_types.py::test_enum_type tests/test_types.py::test_int_enum_type tests/test_types.py::test_string_success tests/test_types.py::test_string_fails tests/test_types.py::test_dict tests/test_types.py::test_list_success[value0-result0] tests/test_types.py::test_list_success[value1-result1] tests/test_types.py::test_list_success[value2-result2] tests/test_types.py::test_list_success[<genexpr>-result3] tests/test_types.py::test_list_success[value4-result4] tests/test_types.py::test_list_fails[1230] tests/test_types.py::test_list_fails[1231] tests/test_types.py::test_ordered_dict tests/test_types.py::test_tuple_success[value0-result0] tests/test_types.py::test_tuple_success[value1-result1] tests/test_types.py::test_tuple_success[value2-result2] tests/test_types.py::test_tuple_success[<genexpr>-result3] tests/test_types.py::test_tuple_success[value4-result4] tests/test_types.py::test_tuple_fails[1230] tests/test_types.py::test_tuple_fails[1231] tests/test_types.py::test_tuple_variable_len_success[value0-int-result0] tests/test_types.py::test_tuple_variable_len_success[value1-int-result1] tests/test_types.py::test_tuple_variable_len_success[<genexpr>-int-result2] tests/test_types.py::test_tuple_variable_len_success[value3-str-result3] tests/test_types.py::test_tuple_variable_len_fails[value0-str-exc0] tests/test_types.py::test_tuple_variable_len_fails[value1-str-exc1] tests/test_types.py::test_set_success[value0-result0] tests/test_types.py::test_set_success[value1-result1] tests/test_types.py::test_set_success[value2-result2] tests/test_types.py::test_set_success[value3-result3] tests/test_types.py::test_set_fails[1230] tests/test_types.py::test_set_fails[1231] tests/test_types.py::test_list_type_fails tests/test_types.py::test_set_type_fails tests/test_types.py::test_sequence_success[int-value0-result0] tests/test_types.py::test_sequence_success[int-value1-result1] tests/test_types.py::test_sequence_success[int-value2-result2] tests/test_types.py::test_sequence_success[float-value3-result3] tests/test_types.py::test_sequence_success[cls4-value4-result4] tests/test_types.py::test_sequence_success[cls5-value5-result5] tests/test_types.py::test_sequence_generator_success[int-<genexpr>-result0] tests/test_types.py::test_sequence_generator_success[float-<genexpr>-result1] tests/test_types.py::test_sequence_generator_success[str-<genexpr>-result2] tests/test_types.py::test_infinite_iterable tests/test_types.py::test_invalid_iterable tests/test_types.py::test_infinite_iterable_validate_first tests/test_types.py::test_sequence_generator_fails[int-<genexpr>-errors0] tests/test_types.py::test_sequence_generator_fails[float-<genexpr>-errors1] tests/test_types.py::test_sequence_fails[int-value0-errors0] tests/test_types.py::test_sequence_fails[int-value1-errors1] tests/test_types.py::test_sequence_fails[float-value2-errors2] tests/test_types.py::test_sequence_fails[float-value3-errors3] tests/test_types.py::test_sequence_fails[float-value4-errors4] tests/test_types.py::test_sequence_fails[cls5-value5-errors5] tests/test_types.py::test_sequence_fails[cls6-value6-errors6] tests/test_types.py::test_sequence_fails[cls7-value7-errors7] tests/test_types.py::test_int_validation tests/test_types.py::test_float_validation tests/test_types.py::test_strict_bytes tests/test_types.py::test_strict_bytes_subclass tests/test_types.py::test_strict_str tests/test_types.py::test_strict_str_subclass tests/test_types.py::test_strict_bool tests/test_types.py::test_strict_int tests/test_types.py::test_strict_int_subclass tests/test_types.py::test_strict_float tests/test_types.py::test_strict_float_subclass tests/test_types.py::test_bool_unhashable_fails tests/test_types.py::test_uuid_error tests/test_types.py::test_uuid_validation tests/test_types.py::test_anystr_strip_whitespace_enabled tests/test_types.py::test_anystr_strip_whitespace_disabled tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value0-result0] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value1-result1] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value2-result2] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value3-result3] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value4-result4] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value5-result5] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value6-result6] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value7-result7] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value8-result8] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value9-result9] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value10-result10] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value11-result11] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value12-result12] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value13-result13] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value14-result14] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value15-result15] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value16-result16] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value17-result17] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value18-result18] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value19-result19] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value20-result20] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-NaN-result21] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue--NaN-result22] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-+NaN-result23] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-sNaN-result24] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue--sNaN-result25] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-+sNaN-result26] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-Inf-result27] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue--Inf-result28] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-+Inf-result29] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-Infinity-result30] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue--Infinity-result31] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue--Infinity-result32] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value33-result33] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value34-result34] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value35-result35] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value36-result36] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value37-result37] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value38-result38] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value39-result39] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value40-result40] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value41-result41] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value42-result42] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value43-result43] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value44-result44] tests/test_types.py::test_decimal_validation[ConstrainedDecimalValue-value45-result45] tests/test_types.py::test_path_validation_success[/test/path-result0] tests/test_types.py::test_path_validation_success[value1-result1] tests/test_types.py::test_path_validation_fails tests/test_types.py::test_file_path_validation_success[tests/test_types.py-result0] tests/test_types.py::test_file_path_validation_success[value1-result1] tests/test_types.py::test_file_path_validation_fails[nonexistentfile-errors0] tests/test_types.py::test_file_path_validation_fails[value1-errors1] tests/test_types.py::test_file_path_validation_fails[tests-errors2] tests/test_types.py::test_file_path_validation_fails[value3-errors3] tests/test_types.py::test_directory_path_validation_success[tests-result0] tests/test_types.py::test_directory_path_validation_success[value1-result1] tests/test_types.py::test_directory_path_validation_fails[nonexistentdirectory-errors0] tests/test_types.py::test_directory_path_validation_fails[value1-errors1] tests/test_types.py::test_directory_path_validation_fails[tests/test_types.py-errors2] tests/test_types.py::test_directory_path_validation_fails[value3-errors3] tests/test_types.py::test_number_gt tests/test_types.py::test_number_ge tests/test_types.py::test_number_lt tests/test_types.py::test_number_le tests/test_types.py::test_number_multiple_of_int_valid[10] tests/test_types.py::test_number_multiple_of_int_valid[100] tests/test_types.py::test_number_multiple_of_int_valid[20] tests/test_types.py::test_number_multiple_of_int_invalid[1337] tests/test_types.py::test_number_multiple_of_int_invalid[23] tests/test_types.py::test_number_multiple_of_int_invalid[6] tests/test_types.py::test_number_multiple_of_int_invalid[14] tests/test_types.py::test_number_multiple_of_float_valid[0.2] tests/test_types.py::test_number_multiple_of_float_valid[0.3] tests/test_types.py::test_number_multiple_of_float_valid[0.4] tests/test_types.py::test_number_multiple_of_float_valid[0.5] tests/test_types.py::test_number_multiple_of_float_valid[1] tests/test_types.py::test_number_multiple_of_float_invalid[0.07] tests/test_types.py::test_number_multiple_of_float_invalid[1.27] tests/test_types.py::test_number_multiple_of_float_invalid[1.003] tests/test_types.py::test_bounds_config_exceptions[conint] tests/test_types.py::test_bounds_config_exceptions[confloat] tests/test_types.py::test_bounds_config_exceptions[condecimal] tests/test_types.py::test_new_type_success tests/test_types.py::test_new_type_fails tests/test_types.py::test_valid_simple_json tests/test_types.py::test_invalid_simple_json tests/test_types.py::test_valid_simple_json_bytes tests/test_types.py::test_valid_detailed_json tests/test_types.py::test_invalid_detailed_json_value_error tests/test_types.py::test_valid_detailed_json_bytes tests/test_types.py::test_invalid_detailed_json_type_error tests/test_types.py::test_json_not_str tests/test_types.py::test_json_pre_validator tests/test_types.py::test_json_optional_simple tests/test_types.py::test_json_optional_complex tests/test_types.py::test_json_explicitly_required tests/test_types.py::test_json_no_default tests/test_types.py::test_pattern tests/test_types.py::test_pattern_error tests/test_types.py::test_secretstr tests/test_types.py::test_secretstr_equality tests/test_types.py::test_secretstr_idempotent tests/test_types.py::test_secretstr_error tests/test_types.py::test_secretstr_min_max_length tests/test_types.py::test_secretbytes tests/test_types.py::test_secretbytes_equality tests/test_types.py::test_secretbytes_idempotent tests/test_types.py::test_secretbytes_error tests/test_types.py::test_secretbytes_min_max_length tests/test_types.py::test_secrets_schema[no-constrains-SecretStr] tests/test_types.py::test_secrets_schema[no-constrains-SecretBytes] tests/test_types.py::test_secrets_schema[min-constraint-SecretStr] tests/test_types.py::test_secrets_schema[min-constraint-SecretBytes] tests/test_types.py::test_secrets_schema[max-constraint-SecretStr] tests/test_types.py::test_secrets_schema[max-constraint-SecretBytes] tests/test_types.py::test_secrets_schema[min-max-constraints-SecretStr] tests/test_types.py::test_secrets_schema[min-max-constraints-SecretBytes] tests/test_types.py::test_generic_without_params tests/test_types.py::test_generic_without_params_error tests/test_types.py::test_literal_single tests/test_types.py::test_literal_multiple tests/test_types.py::test_unsupported_field_type tests/test_types.py::test_frozenset_field tests/test_types.py::test_frozenset_field_conversion[value0-result0] tests/test_types.py::test_frozenset_field_conversion[value1-result1] tests/test_types.py::test_frozenset_field_conversion[value2-result2] tests/test_types.py::test_frozenset_field_conversion[value3-result3] tests/test_types.py::test_frozenset_field_not_convertible tests/test_types.py::test_bytesize_conversions[1-1-1.0B-1.0B] tests/test_types.py::test_bytesize_conversions[1.0-1-1.0B-1.0B] tests/test_types.py::test_bytesize_conversions[1b-1-1.0B-1.0B] tests/test_types.py::test_bytesize_conversions[1.5 tests/test_types.py::test_bytesize_conversions[5.1kib-5222-5.1KiB-5.2KB] tests/test_types.py::test_bytesize_conversions[6.2EiB-7148113328562451456-6.2EiB-7.1EB] tests/test_types.py::test_bytesize_to tests/test_types.py::test_bytesize_raises tests/test_types.py::test_deque_success tests/test_types.py::test_deque_generic_success[int-value0-result0] tests/test_types.py::test_deque_generic_success[int-value1-result1] tests/test_types.py::test_deque_generic_success[int-value2-result2] tests/test_types.py::test_deque_generic_success[float-value3-result3] tests/test_types.py::test_deque_generic_success[cls4-value4-result4] tests/test_types.py::test_deque_generic_success[cls5-value5-result5] tests/test_types.py::test_deque_generic_success[str-value6-result6] tests/test_types.py::test_deque_generic_success[int-value7-result7] tests/test_types.py::test_deque_fails[int-value0-errors0] tests/test_types.py::test_deque_fails[int-value1-errors1] tests/test_types.py::test_deque_fails[float-value2-errors2] tests/test_types.py::test_deque_fails[float-value3-errors3] tests/test_types.py::test_deque_fails[float-value4-errors4] tests/test_types.py::test_deque_fails[cls5-value5-errors5] tests/test_types.py::test_deque_fails[cls6-value6-errors6] tests/test_types.py::test_deque_fails[cls7-value7-errors7] tests/test_types.py::test_deque_model tests/test_types.py::test_deque_json tests/test_types.py::test_none[None] tests/test_types.py::test_none[NoneType0] tests/test_types.py::test_none[NoneType1] tests/test_types.py::test_none[value_type3]