diff --git a/pydantic/fields.py b/pydantic/fields.py
--- a/pydantic/fields.py
+++ b/pydantic/fields.py
@@ -346,7 +346,6 @@ def prepare(self) -> None:
         Note: this method is **not** idempotent (because _type_analysis is not idempotent),
         e.g. calling it it multiple times may modify the field and configure it incorrectly.
         """
-
         self._set_default_and_type()
         if self.type_.__class__ == ForwardRef:
             # self.type_ is currently a ForwardRef and there's nothing we can do now,
@@ -448,14 +447,19 @@ def _type_analysis(self) -> None:  # noqa: C901 (ignore complexity)
             return
 
         if issubclass(origin, Tuple):  # type: ignore
-            self.shape = SHAPE_TUPLE
-            self.sub_fields = []
-            for i, t in enumerate(get_args(self.type_)):
-                if t is Ellipsis:
-                    self.type_ = get_args(self.type_)[0]
-                    self.shape = SHAPE_TUPLE_ELLIPSIS
-                    return
-                self.sub_fields.append(self._create_sub_type(t, f'{self.name}_{i}'))
+            # origin == Tuple without item type
+            if not get_args(self.type_):
+                self.type_ = Any
+                self.shape = SHAPE_TUPLE_ELLIPSIS
+            else:
+                self.shape = SHAPE_TUPLE
+                self.sub_fields = []
+                for i, t in enumerate(get_args(self.type_)):
+                    if t is Ellipsis:
+                        self.type_ = get_args(self.type_)[0]
+                        self.shape = SHAPE_TUPLE_ELLIPSIS
+                        return
+                    self.sub_fields.append(self._create_sub_type(t, f'{self.name}_{i}'))
             return
 
         if issubclass(origin, List):
@@ -605,6 +609,8 @@ def _validate_sequence_like(  # noqa: C901 (ignore complexity)
             e: errors_.PydanticTypeError
             if self.shape == SHAPE_LIST:
                 e = errors_.ListError()
+            elif self.shape in (SHAPE_TUPLE, SHAPE_TUPLE_ELLIPSIS):
+                e = errors_.TupleError()
             elif self.shape == SHAPE_SET:
                 e = errors_.SetError()
             elif self.shape == SHAPE_FROZENSET:

diff --git a/tests/test_types.py b/tests/test_types.py
--- a/tests/test_types.py
+++ b/tests/test_types.py
@@ -2309,21 +2309,24 @@ def test_generic_without_params():
     class Model(BaseModel):
         generic_list: List
         generic_dict: Dict
+        generic_tuple: Tuple
 
-    m = Model(generic_list=[0, 'a'], generic_dict={0: 'a', 'a': 0})
-    assert m.dict() == {'generic_list': [0, 'a'], 'generic_dict': {0: 'a', 'a': 0}}
+    m = Model(generic_list=[0, 'a'], generic_dict={0: 'a', 'a': 0}, generic_tuple=(1, 'q'))
+    assert m.dict() == {'generic_list': [0, 'a'], 'generic_dict': {0: 'a', 'a': 0}, 'generic_tuple': (1, 'q')}
 
 
 def test_generic_without_params_error():
     class Model(BaseModel):
         generic_list: List
         generic_dict: Dict
+        generic_tuple: Tuple
 
     with pytest.raises(ValidationError) as exc_info:
-        Model(generic_list=0, generic_dict=0)
+        Model(generic_list=0, generic_dict=0, generic_tuple=0)
     assert exc_info.value.errors() == [
         {'loc': ('generic_list',), 'msg': 'value is not a valid list', 'type': 'type_error.list'},
         {'loc': ('generic_dict',), 'msg': 'value is not a valid dict', 'type': 'type_error.dict'},
+        {'loc': ('generic_tuple',), 'msg': 'value is not a valid tuple', 'type': 'type_error.tuple'},
     ]
 
 

Tuple field triggers error checking inheritance
### 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

# Bug

Output of `python -c "import pydantic.utils; print(pydantic.utils.version_info())"`:
```
             pydantic version: 1.7.2
            pydantic compiled: True
                 install path: /home/alexv/.local/share/virtualenvs/datacrystals-F4r2dbjD/lib/python3.8/site-packages/pydantic
               python version: 3.8.2 (default, Apr 27 2020, 15:53:34)  [GCC 9.3.0]
                     platform: Linux-5.4.0-7634-generic-x86_64-with-glibc2.29
     optional deps. installed: ['typing-extensions']
```

I didn't yet investigate what is happening here, but this looks like something that should be working...
 
```py
from pydantic.dataclasses import dataclass
import typing
@dataclass
class wrappingTuple:
    field: typing.Tuple

print(wrappingTuple(field=(0,1))
```
triggers :
```    
Traceback (most recent call last):
  File "pydantic/validators.py", line 615, in pydantic.validators.find_validators
TypeError: issubclass() arg 1 must be a class
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "<input>", line 2, in <module>
  File "pydantic/dataclasses.py", line 216, in pydantic.dataclasses.dataclass
  File "pydantic/dataclasses.py", line 211, in pydantic.dataclasses.dataclass.wrap
  File "pydantic/dataclasses.py", line 147, in pydantic.dataclasses._process_class
  File "pydantic/main.py", line 925, in pydantic.main.create_model
  File "pydantic/main.py", line 262, in pydantic.main.ModelMetaclass.__new__
  File "pydantic/fields.py", line 315, in pydantic.fields.ModelField.infer
  File "pydantic/fields.py", line 284, in pydantic.fields.ModelField.__init__
  File "pydantic/fields.py", line 362, in pydantic.fields.ModelField.prepare
  File "pydantic/fields.py", line 538, in pydantic.fields.ModelField.populate_validators
  File "pydantic/validators.py", line 624, in find_validators
RuntimeError: error checking inheritance of typing.Tuple (type: Tuple)
```

However this works fine : 
```py
from pydantic.dataclasses import dataclass
import typing
@dataclass
class wrappingTuple:
    field: tuple

print(wrappingTuple(field=(0,1))
```
```
wrappingTuple(field=(0, 1))
```

and this as well : 
```py
from pydantic.dataclasses import dataclass
import typing
@dataclass
class wrappingTuple:
    field: typing.List

print(wrappingTuple(field=[0,1])
```
```
wrappingTuple(field=[0, 1])
```

tests/test_types.py::test_generic_without_params tests/test_types.py::test_generic_without_params_error
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_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_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