START: ptest-runner 2024-04-26T02:10 BEGIN: /usr/lib/python3-attrs/ptest SKIP: tests/test_3rd_party.py:tests/test_3rd_party.py # SKIP could not import 'cloudpickle': No module named 'cloudpickle' PASS: tests/test_abc.py:TestUpdateAbstractMethods.test_abc_implementation[True] PASS: tests/test_abc.py:TestUpdateAbstractMethods.test_abc_implementation[False] PASS: tests/test_abc.py:TestUpdateAbstractMethods.test_remain_abstract[True] PASS: tests/test_abc.py:TestUpdateAbstractMethods.test_remain_abstract[False] PASS: tests/test_annotations.py:TestAnnotations.test_basic_annotations PASS: tests/test_annotations.py:TestAnnotations.test_catches_basic_type_conflict PASS: tests/test_annotations.py:TestAnnotations.test_typing_annotations PASS: tests/test_annotations.py:TestAnnotations.test_only_attrs_annotations_collected PASS: tests/test_annotations.py:TestAnnotations.test_auto_attribs[True] PASS: tests/test_annotations.py:TestAnnotations.test_auto_attribs[False] PASS: tests/test_annotations.py:TestAnnotations.test_auto_attribs_unannotated[True] PASS: tests/test_annotations.py:TestAnnotations.test_auto_attribs_unannotated[False] PASS: tests/test_annotations.py:TestAnnotations.test_auto_attribs_subclassing[True] PASS: tests/test_annotations.py:TestAnnotations.test_auto_attribs_subclassing[False] PASS: tests/test_annotations.py:TestAnnotations.test_converter_annotations PASS: tests/test_annotations.py:TestAnnotations.test_converter_attrib_annotations PASS: tests/test_annotations.py:TestAnnotations.test_non_introspectable_converter PASS: tests/test_annotations.py:TestAnnotations.test_nullary_converter PASS: tests/test_annotations.py:TestAnnotations.test_pipe PASS: tests/test_annotations.py:TestAnnotations.test_pipe_empty PASS: tests/test_annotations.py:TestAnnotations.test_pipe_non_introspectable PASS: tests/test_annotations.py:TestAnnotations.test_pipe_nullary PASS: tests/test_annotations.py:TestAnnotations.test_optional PASS: tests/test_annotations.py:TestAnnotations.test_optional_non_introspectable PASS: tests/test_annotations.py:TestAnnotations.test_optional_nullary PASS: tests/test_annotations.py:TestAnnotations.test_annotations_strings[True] PASS: tests/test_annotations.py:TestAnnotations.test_annotations_strings[False] PASS: tests/test_annotations.py:TestAnnotations.test_typing_extensions_classvar[True] PASS: tests/test_annotations.py:TestAnnotations.test_typing_extensions_classvar[False] PASS: tests/test_annotations.py:TestAnnotations.test_keyword_only_auto_attribs PASS: tests/test_annotations.py:TestAnnotations.test_base_class_variable PASS: tests/test_annotations.py:TestAnnotations.test_removes_none_too PASS: tests/test_annotations.py:TestAnnotations.test_non_comparable_defaults PASS: tests/test_annotations.py:TestAnnotations.test_basic_resolve PASS: tests/test_annotations.py:TestAnnotations.test_extra_resolve PASS: tests/test_annotations.py:TestAnnotations.test_resolve_types_auto_attrib[True] PASS: tests/test_annotations.py:TestAnnotations.test_resolve_types_auto_attrib[False] PASS: tests/test_annotations.py:TestAnnotations.test_resolve_types_decorator[True] PASS: tests/test_annotations.py:TestAnnotations.test_resolve_types_decorator[False] PASS: tests/test_annotations.py:TestAnnotations.test_self_reference[True] PASS: tests/test_annotations.py:TestAnnotations.test_self_reference[False] PASS: tests/test_annotations.py:TestAnnotations.test_forward_reference[True] PASS: tests/test_annotations.py:TestAnnotations.test_forward_reference[False] PASS: tests/test_annotations.py:TestAnnotations.test_init_type_hints PASS: tests/test_annotations.py:TestAnnotations.test_init_type_hints_fake_module PASS: tests/test_annotations.py:TestAnnotations.test_inheritance PASS: tests/test_annotations.py:TestAnnotations.test_resolve_twice PASS: tests/test_annotations.py:test_is_class_var[ClassVar] PASS: tests/test_annotations.py:test_is_class_var[typing.ClassVar] PASS: tests/test_annotations.py:test_is_class_var['typing.ClassVar[dict]'] PASS: tests/test_annotations.py:test_is_class_var[t.ClassVar[int]] PASS: tests/test_cmp.py:TestEqOrder.test_equal_same_type[EqCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_same_type[EqCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_unequal_same_type[EqCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_unequal_same_type[EqCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_unequal_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_unequal_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_unequal_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_different_type[EqCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_different_type[EqCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_different_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_different_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_equal_different_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_lt_unorderable[EqCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_lt_unorderable[EqCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_lt_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_lt_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_lt_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_not_lt_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_not_lt_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_not_lt_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_lt_different_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_lt_different_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_lt_different_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_le_unorderable[EqCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_le_unorderable[EqCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_le_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_le_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_le_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_not_le_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_not_le_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_not_le_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_le_different_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_le_different_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_le_different_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_gt_unorderable[EqCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_gt_unorderable[EqCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_gt_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_gt_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_gt_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_not_gt_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_not_gt_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_not_gt_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_gt_different_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_gt_different_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_gt_different_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_ge_unorderable[EqCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_ge_unorderable[EqCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_ge_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_ge_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_ge_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_not_ge_same_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_not_ge_same_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_not_ge_same_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_ge_different_type[PartialOrderCSameType] PASS: tests/test_cmp.py:TestEqOrder.test_ge_different_type[PartialOrderCAnyType] PASS: tests/test_cmp.py:TestEqOrder.test_ge_different_type[FullOrderCSameType] PASS: tests/test_cmp.py:TestDundersUnnamedClass.test_class PASS: tests/test_cmp.py:TestDundersUnnamedClass.test_eq PASS: tests/test_cmp.py:TestDundersUnnamedClass.test_ne PASS: tests/test_cmp.py:TestTotalOrderingException.test_eq_must_specified PASS: tests/test_cmp.py:TestNotImplementedIsPropagated.test_not_implemented_is_propagated PASS: tests/test_cmp.py:TestDundersPartialOrdering.test_class PASS: tests/test_cmp.py:TestDundersPartialOrdering.test_eq PASS: tests/test_cmp.py:TestDundersPartialOrdering.test_ne PASS: tests/test_cmp.py:TestDundersPartialOrdering.test_lt PASS: tests/test_cmp.py:TestDundersPartialOrdering.test_le PASS: tests/test_cmp.py:TestDundersPartialOrdering.test_gt PASS: tests/test_cmp.py:TestDundersPartialOrdering.test_ge PASS: tests/test_cmp.py:TestDundersFullOrdering.test_class PASS: tests/test_cmp.py:TestDundersFullOrdering.test_eq PASS: tests/test_cmp.py:TestDundersFullOrdering.test_ne PASS: tests/test_cmp.py:TestDundersFullOrdering.test_lt PASS: tests/test_cmp.py:TestDundersFullOrdering.test_le PASS: tests/test_cmp.py:TestDundersFullOrdering.test_gt PASS: tests/test_cmp.py:TestDundersFullOrdering.test_ge PASS: tests/test_compat.py:TestMetadataProxy.test_repr PASS: tests/test_compat.py:TestMetadataProxy.test_immutable PASS: tests/test_compat.py:test_attrsinstance_subclass_protocol PASS: tests/test_config.py:TestConfig.test_default PASS: tests/test_config.py:TestConfig.test_set_run_validators PASS: tests/test_config.py:TestConfig.test_get_run_validators PASS: tests/test_config.py:TestConfig.test_wrong_type PASS: tests/test_converters.py:TestOptional.test_success_with_type PASS: tests/test_converters.py:TestOptional.test_success_with_none PASS: tests/test_converters.py:TestOptional.test_fail PASS: tests/test_converters.py:TestDefaultIfNone.test_missing_default PASS: tests/test_converters.py:TestDefaultIfNone.test_too_many_defaults PASS: tests/test_converters.py:TestDefaultIfNone.test_factory_takes_self PASS: tests/test_converters.py:TestDefaultIfNone.test_not_none[1] PASS: tests/test_converters.py:TestDefaultIfNone.test_not_none[0] PASS: tests/test_converters.py:TestDefaultIfNone.test_not_none[True] PASS: tests/test_converters.py:TestDefaultIfNone.test_not_none[False] PASS: tests/test_converters.py:TestDefaultIfNone.test_not_none[foo] PASS: tests/test_converters.py:TestDefaultIfNone.test_not_none[] PASS: tests/test_converters.py:TestDefaultIfNone.test_not_none[val6] PASS: tests/test_converters.py:TestDefaultIfNone.test_none_value PASS: tests/test_converters.py:TestDefaultIfNone.test_none_factory PASS: tests/test_converters.py:TestPipe.test_success PASS: tests/test_converters.py:TestPipe.test_fail PASS: tests/test_converters.py:TestPipe.test_sugar PASS: tests/test_converters.py:TestPipe.test_empty PASS: tests/test_converters.py:TestToBool.test_unhashable PASS: tests/test_converters.py:TestToBool.test_truthy PASS: tests/test_converters.py:TestToBool.test_falsy PASS: tests/test_dunders.py:TestEqOrder.test_eq_ignore_attrib PASS: tests/test_dunders.py:TestEqOrder.test_equal[C0] PASS: tests/test_dunders.py:TestEqOrder.test_equal[C1] PASS: tests/test_dunders.py:TestEqOrder.test_equal_callable[EqCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_equal_callable[EqCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_unequal_same_class[C0] PASS: tests/test_dunders.py:TestEqOrder.test_unequal_same_class[C1] PASS: tests/test_dunders.py:TestEqOrder.test_unequal_same_class_callable[EqCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_unequal_same_class_callable[EqCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_unequal_different_class[C0] PASS: tests/test_dunders.py:TestEqOrder.test_unequal_different_class[C1] PASS: tests/test_dunders.py:TestEqOrder.test_unequal_different_class[EqCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_unequal_different_class[EqCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_lt[C0] PASS: tests/test_dunders.py:TestEqOrder.test_lt[C1] PASS: tests/test_dunders.py:TestEqOrder.test_lt_callable[OrderCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_lt_callable[OrderCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_lt_unordable[C0] PASS: tests/test_dunders.py:TestEqOrder.test_lt_unordable[C1] PASS: tests/test_dunders.py:TestEqOrder.test_lt_unordable[OrderCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_lt_unordable[OrderCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_le[C0] PASS: tests/test_dunders.py:TestEqOrder.test_le[C1] PASS: tests/test_dunders.py:TestEqOrder.test_le_callable[OrderCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_le_callable[OrderCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_le_unordable[C0] PASS: tests/test_dunders.py:TestEqOrder.test_le_unordable[C1] PASS: tests/test_dunders.py:TestEqOrder.test_le_unordable[OrderCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_le_unordable[OrderCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_gt[C0] PASS: tests/test_dunders.py:TestEqOrder.test_gt[C1] PASS: tests/test_dunders.py:TestEqOrder.test_gt_callable[OrderCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_gt_callable[OrderCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_gt_unordable[C0] PASS: tests/test_dunders.py:TestEqOrder.test_gt_unordable[C1] PASS: tests/test_dunders.py:TestEqOrder.test_gt_unordable[OrderCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_gt_unordable[OrderCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_ge[C0] PASS: tests/test_dunders.py:TestEqOrder.test_ge[C1] PASS: tests/test_dunders.py:TestEqOrder.test_ge_callable[OrderCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_ge_callable[OrderCallableCSlots] PASS: tests/test_dunders.py:TestEqOrder.test_ge_unordable[C0] PASS: tests/test_dunders.py:TestEqOrder.test_ge_unordable[C1] PASS: tests/test_dunders.py:TestEqOrder.test_ge_unordable[OrderCallableC] PASS: tests/test_dunders.py:TestEqOrder.test_ge_unordable[OrderCallableCSlots] PASS: tests/test_dunders.py:TestAddRepr.test_repr[True] PASS: tests/test_dunders.py:TestAddRepr.test_repr[False] PASS: tests/test_dunders.py:TestAddRepr.test_repr_works[C0] PASS: tests/test_dunders.py:TestAddRepr.test_repr_works[C1] PASS: tests/test_dunders.py:TestAddRepr.test_custom_repr_works PASS: tests/test_dunders.py:TestAddRepr.test_infinite_recursion PASS: tests/test_dunders.py:TestAddRepr.test_infinite_recursion_long_cycle PASS: tests/test_dunders.py:TestAddRepr.test_underscores PASS: tests/test_dunders.py:TestAddRepr.test_repr_uninitialized_member PASS: tests/test_dunders.py:TestAddRepr.test_str PASS: tests/test_dunders.py:TestAddRepr.test_str_no_repr PASS: tests/test_dunders.py:TestAddHash.test_enforces_type PASS: tests/test_dunders.py:TestAddHash.test_enforce_no_cache_hash_without_hash PASS: tests/test_dunders.py:TestAddHash.test_enforce_no_cached_hash_without_init PASS: tests/test_dunders.py:TestAddHash.test_hash_attribute PASS: tests/test_dunders.py:TestAddHash.test_hash_attribute_mirrors_eq PASS: tests/test_dunders.py:TestAddHash.test_hash_mirrors_eq PASS: tests/test_dunders.py:TestAddHash.test_hash_works[C0] PASS: tests/test_dunders.py:TestAddHash.test_hash_works[C1] PASS: tests/test_dunders.py:TestAddHash.test_hash_works[C2] PASS: tests/test_dunders.py:TestAddHash.test_hash_works[C3] PASS: tests/test_dunders.py:TestAddHash.test_hash_works[C4] PASS: tests/test_dunders.py:TestAddHash.test_hash_default PASS: tests/test_dunders.py:TestAddHash.test_cache_hashing PASS: tests/test_dunders.py:TestAddHash.test_copy_hash_cleared[True-True-True] PASS: tests/test_dunders.py:TestAddHash.test_copy_hash_cleared[True-True-False] PASS: tests/test_dunders.py:TestAddHash.test_copy_hash_cleared[True-False-True] PASS: tests/test_dunders.py:TestAddHash.test_copy_hash_cleared[True-False-False] PASS: tests/test_dunders.py:TestAddHash.test_copy_hash_cleared[False-True-True] PASS: tests/test_dunders.py:TestAddHash.test_copy_hash_cleared[False-True-False] PASS: tests/test_dunders.py:TestAddHash.test_copy_hash_cleared[False-False-True] PASS: tests/test_dunders.py:TestAddHash.test_copy_hash_cleared[False-False-False] PASS: tests/test_dunders.py:TestAddHash.test_cache_hash_serialization_hash_cleared[HashCacheSerializationTestUncached-False] PASS: tests/test_dunders.py:TestAddHash.test_cache_hash_serialization_hash_cleared[HashCacheSerializationTestCached-True] PASS: tests/test_dunders.py:TestAddHash.test_cache_hash_serialization_hash_cleared[HashCacheSerializationTestCachedSlots-True] PASS: tests/test_dunders.py:TestAddHash.test_copy_two_arg_reduce[True] PASS: tests/test_dunders.py:TestAddHash.test_copy_two_arg_reduce[False] PASS: tests/test_dunders.py:TestAddInit.test_init PASS: tests/test_dunders.py:TestAddInit.test_no_init_default PASS: tests/test_dunders.py:TestAddInit.test_no_init_order PASS: tests/test_dunders.py:TestAddInit.test_sets_attributes PASS: tests/test_dunders.py:TestAddInit.test_default PASS: tests/test_dunders.py:TestAddInit.test_factory PASS: tests/test_dunders.py:TestAddInit.test_validator PASS: tests/test_dunders.py:TestAddInit.test_validator_slots PASS: tests/test_dunders.py:TestAddInit.test_validator_others PASS: tests/test_dunders.py:TestAddInit.test_underscores PASS: tests/test_dunders.py:TestNothing.test_copy PASS: tests/test_dunders.py:TestNothing.test_deepcopy PASS: tests/test_dunders.py:TestNothing.test_eq PASS: tests/test_dunders.py:TestNothing.test_false PASS: tests/test_dunders.py:TestFilenames.test_filenames PASS: tests/test_filters.py:TestSplitWhat.test_splits PASS: tests/test_filters.py:TestInclude.test_allow[incl0-42] PASS: tests/test_filters.py:TestInclude.test_allow[incl1-hello] PASS: tests/test_filters.py:TestInclude.test_allow[incl2-42] PASS: tests/test_filters.py:TestInclude.test_allow[incl3-hello] PASS: tests/test_filters.py:TestInclude.test_allow[incl4-42] PASS: tests/test_filters.py:TestInclude.test_allow[incl5-hello] PASS: tests/test_filters.py:TestInclude.test_allow[incl6-42] PASS: tests/test_filters.py:TestInclude.test_allow[incl7-hello] PASS: tests/test_filters.py:TestInclude.test_drop_class[incl0-42] PASS: tests/test_filters.py:TestInclude.test_drop_class[incl1-hello] PASS: tests/test_filters.py:TestInclude.test_drop_class[incl2-42] PASS: tests/test_filters.py:TestInclude.test_drop_class[incl3-hello] PASS: tests/test_filters.py:TestInclude.test_drop_class[incl4-42] PASS: tests/test_filters.py:TestInclude.test_drop_class[incl5-hello] PASS: tests/test_filters.py:TestInclude.test_drop_class[incl6-42] PASS: tests/test_filters.py:TestInclude.test_drop_class[incl7-hello] PASS: tests/test_filters.py:TestExclude.test_allow[excl0-42] PASS: tests/test_filters.py:TestExclude.test_allow[excl1-hello] PASS: tests/test_filters.py:TestExclude.test_allow[excl2-42] PASS: tests/test_filters.py:TestExclude.test_allow[excl3-hello] PASS: tests/test_filters.py:TestExclude.test_allow[excl4-42] PASS: tests/test_filters.py:TestExclude.test_allow[excl5-hello] PASS: tests/test_filters.py:TestExclude.test_allow[excl6-42] PASS: tests/test_filters.py:TestExclude.test_allow[excl7-hello] PASS: tests/test_filters.py:TestExclude.test_drop_class[excl0-42] PASS: tests/test_filters.py:TestExclude.test_drop_class[excl1-hello] PASS: tests/test_filters.py:TestExclude.test_drop_class[excl2-42] PASS: tests/test_filters.py:TestExclude.test_drop_class[excl3-hello] PASS: tests/test_filters.py:TestExclude.test_drop_class[excl4-42] PASS: tests/test_filters.py:TestExclude.test_drop_class[excl5-hello] PASS: tests/test_filters.py:TestExclude.test_drop_class[excl6-42] PASS: tests/test_filters.py:TestExclude.test_drop_class[excl7-hello] PASS: tests/test_funcs.py:TestAsDict.test_shallow PASS: tests/test_funcs.py:TestAsDict.test_recurse PASS: tests/test_funcs.py:TestAsDict.test_nested_lists PASS: tests/test_funcs.py:TestAsDict.test_nested_dicts PASS: tests/test_funcs.py:TestAsDict.test_recurse_property PASS: tests/test_funcs.py:TestAsDict.test_filter PASS: tests/test_funcs.py:TestAsDict.test_lists_tuples PASS: tests/test_funcs.py:TestAsDict.test_lists_tuples_retain_type PASS: tests/test_funcs.py:TestAsDict.test_sets_no_retain PASS: tests/test_funcs.py:TestAsDict.test_dicts PASS: tests/test_funcs.py:TestAsDict.test_roundtrip PASS: tests/test_funcs.py:TestAsDict.test_asdict_preserve_order PASS: tests/test_funcs.py:TestAsDict.test_retain_keys_are_tuples PASS: tests/test_funcs.py:TestAsDict.test_tuple_keys PASS: tests/test_funcs.py:TestAsDict.test_named_tuple_retain_type PASS: tests/test_funcs.py:TestAsDict.test_type_error_with_retain_type PASS: tests/test_funcs.py:TestAsTuple.test_shallow PASS: tests/test_funcs.py:TestAsTuple.test_recurse PASS: tests/test_funcs.py:TestAsTuple.test_recurse_property PASS: tests/test_funcs.py:TestAsTuple.test_recurse_retain PASS: tests/test_funcs.py:TestAsTuple.test_filter PASS: tests/test_funcs.py:TestAsTuple.test_lists_tuples PASS: tests/test_funcs.py:TestAsTuple.test_dicts PASS: tests/test_funcs.py:TestAsTuple.test_lists_tuples_retain_type PASS: tests/test_funcs.py:TestAsTuple.test_dicts_retain_type PASS: tests/test_funcs.py:TestAsTuple.test_roundtrip PASS: tests/test_funcs.py:TestAsTuple.test_sets_no_retain PASS: tests/test_funcs.py:TestAsTuple.test_named_tuple_retain_type PASS: tests/test_funcs.py:TestAsTuple.test_type_error_with_retain_type PASS: tests/test_funcs.py:TestHas.test_positive PASS: tests/test_funcs.py:TestHas.test_positive_empty PASS: tests/test_funcs.py:TestHas.test_negative PASS: tests/test_funcs.py:TestHas.test_generics PASS: tests/test_funcs.py:TestHas.test_generics_negative PASS: tests/test_funcs.py:TestAssoc.test_empty PASS: tests/test_funcs.py:TestAssoc.test_no_changes PASS: tests/test_funcs.py:TestAssoc.test_change SKIP: tests/test_funcs.py:TestAssoc.test_unknown # SKIP Broken with pytest 8. See https://github.com/python-attrs/attrs/issues/1233 PASS: tests/test_funcs.py:TestAssoc.test_frozen PASS: tests/test_funcs.py:TestEvolve.test_empty PASS: tests/test_funcs.py:TestEvolve.test_no_changes PASS: tests/test_funcs.py:TestEvolve.test_change PASS: tests/test_funcs.py:TestEvolve.test_unknown PASS: tests/test_funcs.py:TestEvolve.test_validator_failure PASS: tests/test_funcs.py:TestEvolve.test_private PASS: tests/test_funcs.py:TestEvolve.test_non_init_attrs PASS: tests/test_funcs.py:TestEvolve.test_regression_attrs_classes PASS: tests/test_funcs.py:TestEvolve.test_dicts PASS: tests/test_funcs.py:TestEvolve.test_inst_kw PASS: tests/test_funcs.py:TestEvolve.test_no_inst PASS: tests/test_funcs.py:TestEvolve.test_too_many_pos_args PASS: tests/test_funcs.py:TestEvolve.test_can_change_inst PASS: tests/test_functional.py:TestFunctional.test_fields[C2] PASS: tests/test_functional.py:TestFunctional.test_fields[C2Slots] PASS: tests/test_functional.py:TestFunctional.test_asdict[C1] PASS: tests/test_functional.py:TestFunctional.test_asdict[C1Slots] PASS: tests/test_functional.py:TestFunctional.test_validator[C1] PASS: tests/test_functional.py:TestFunctional.test_validator[C1Slots] PASS: tests/test_functional.py:TestFunctional.test_renaming PASS: tests/test_functional.py:TestFunctional.test_programmatic PASS: tests/test_functional.py:TestFunctional.test_subclassing_with_extra_attrs[Sub] PASS: tests/test_functional.py:TestFunctional.test_subclassing_with_extra_attrs[SubSlots] PASS: tests/test_functional.py:TestFunctional.test_subclass_without_extra_attrs[Base] PASS: tests/test_functional.py:TestFunctional.test_subclass_without_extra_attrs[BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_frozen_instance[Frozen] PASS: tests/test_functional.py:TestFunctional.test_frozen_instance[FrozenToo] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-C1] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-C1Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-C2] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-C2Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-Base] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-Sub] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-SubSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-Frozen] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-FrozenNoSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[2-FromMakeClass] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-C1] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-C1Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-C2] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-C2Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-Base] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-Sub] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-SubSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-Frozen] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-FrozenNoSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[3-FromMakeClass] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-C1] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-C1Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-C2] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-C2Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-Base] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-Sub] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-SubSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-Frozen] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-FrozenNoSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[4-FromMakeClass] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-C1] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-C1Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-C2] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-C2Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-Base] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-Sub] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-SubSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-Frozen] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-FrozenNoSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_attributes[5-FromMakeClass] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-C1] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-C1Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-C2] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-C2Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-Base] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-Sub] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-SubSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-Frozen] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-FrozenNoSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[2-FromMakeClass] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-C1] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-C1Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-C2] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-C2Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-Base] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-Sub] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-SubSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-Frozen] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-FrozenNoSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[3-FromMakeClass] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-C1] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-C1Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-C2] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-C2Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-Base] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-Sub] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-SubSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-Frozen] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-FrozenNoSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[4-FromMakeClass] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-C1] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-C1Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-C2] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-C2Slots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-Base] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-BaseSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-Sub] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-SubSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-Frozen] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-FrozenNoSlots] PASS: tests/test_functional.py:TestFunctional.test_pickle_object[5-FromMakeClass] PASS: tests/test_functional.py:TestFunctional.test_subclassing_frozen_gives_frozen PASS: tests/test_functional.py:TestFunctional.test_metaclass_preserved[WithMeta] PASS: tests/test_functional.py:TestFunctional.test_metaclass_preserved[WithMetaSlots] PASS: tests/test_functional.py:TestFunctional.test_default_decorator PASS: tests/test_functional.py:TestFunctional.test_attrib_overwrite[True-True-True] PASS: tests/test_functional.py:TestFunctional.test_attrib_overwrite[True-True-False] PASS: tests/test_functional.py:TestFunctional.test_attrib_overwrite[True-False-True] PASS: tests/test_functional.py:TestFunctional.test_attrib_overwrite[True-False-False] PASS: tests/test_functional.py:TestFunctional.test_attrib_overwrite[False-True-True] PASS: tests/test_functional.py:TestFunctional.test_attrib_overwrite[False-True-False] PASS: tests/test_functional.py:TestFunctional.test_attrib_overwrite[False-False-True] PASS: tests/test_functional.py:TestFunctional.test_attrib_overwrite[False-False-False] PASS: tests/test_functional.py:TestFunctional.test_dict_patch_class PASS: tests/test_functional.py:TestFunctional.test_hash_by_id PASS: tests/test_functional.py:TestFunctional.test_handles_different_defaults PASS: tests/test_functional.py:TestFunctional.test_hash_false_eq_false[True] PASS: tests/test_functional.py:TestFunctional.test_hash_false_eq_false[False] PASS: tests/test_functional.py:TestFunctional.test_eq_false[True] PASS: tests/test_functional.py:TestFunctional.test_eq_false[False] PASS: tests/test_functional.py:TestFunctional.test_overwrite_base PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-True-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-True-False-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-True-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-True-False-False-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-True-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-True-False-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-True-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[True-False-False-False-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-True-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-True-False-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-True-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-True-False-False-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-True-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-True-False-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-True-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-True-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-True-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-True-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-True-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-True-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-True-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-True-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-True-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-False-True-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-False-True-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-False-True-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-False-True-False-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-False-False-True-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-False-False-True-False] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-False-False-False-True] PASS: tests/test_functional.py:TestFunctional.test_frozen_slots_combo[False-False-False-False-False-False-False-False] PASS: tests/test_functional.py:TestFunctional.test_tuple_class_aliasing PASS: tests/test_functional.py:TestFunctional.test_auto_exc[True-True] PASS: tests/test_functional.py:TestFunctional.test_auto_exc[True-False] PASS: tests/test_functional.py:TestFunctional.test_auto_exc[False-True] PASS: tests/test_functional.py:TestFunctional.test_auto_exc[False-False] PASS: tests/test_functional.py:TestFunctional.test_auto_exc_one_attrib[True-True] PASS: tests/test_functional.py:TestFunctional.test_auto_exc_one_attrib[True-False] PASS: tests/test_functional.py:TestFunctional.test_auto_exc_one_attrib[False-True] PASS: tests/test_functional.py:TestFunctional.test_auto_exc_one_attrib[False-False] PASS: tests/test_functional.py:TestFunctional.test_eq_only[True-True] PASS: tests/test_functional.py:TestFunctional.test_eq_only[True-False] PASS: tests/test_functional.py:TestFunctional.test_eq_only[False-True] PASS: tests/test_functional.py:TestFunctional.test_eq_only[False-False] PASS: tests/test_functional.py:TestFunctional.test_attrib_cmp_shortcut[True-True] PASS: tests/test_functional.py:TestFunctional.test_attrib_cmp_shortcut[True-False] PASS: tests/test_functional.py:TestFunctional.test_attrib_cmp_shortcut[False-True] PASS: tests/test_functional.py:TestFunctional.test_attrib_cmp_shortcut[False-False] PASS: tests/test_functional.py:TestFunctional.test_no_setattr_if_validate_without_validators[True] PASS: tests/test_functional.py:TestFunctional.test_no_setattr_if_validate_without_validators[False] PASS: tests/test_functional.py:TestFunctional.test_no_setattr_if_convert_without_converters[True] PASS: tests/test_functional.py:TestFunctional.test_no_setattr_if_convert_without_converters[False] PASS: tests/test_functional.py:TestFunctional.test_no_setattr_with_ng_defaults[True] PASS: tests/test_functional.py:TestFunctional.test_no_setattr_with_ng_defaults[False] PASS: tests/test_functional.py:TestFunctional.test_on_setattr_detect_inherited_validators PASS: tests/test_functional.py:TestFunctional.test_unsafe_hash[True] PASS: tests/test_functional.py:TestFunctional.test_unsafe_hash[False] PASS: tests/test_hooks.py:TestTransformHook.test_hook_applied PASS: tests/test_hooks.py:TestTransformHook.test_hook_applied_auto_attrib PASS: tests/test_hooks.py:TestTransformHook.test_hook_applied_modify_attrib PASS: tests/test_hooks.py:TestTransformHook.test_hook_remove_field PASS: tests/test_hooks.py:TestTransformHook.test_hook_add_field PASS: tests/test_hooks.py:TestTransformHook.test_hook_override_alias PASS: tests/test_hooks.py:TestTransformHook.test_hook_with_inheritance PASS: tests/test_hooks.py:TestTransformHook.test_attrs_attrclass PASS: tests/test_hooks.py:TestAsDictHook.test_asdict PASS: tests/test_hooks.py:TestAsDictHook.test_asdict_calls PASS: tests/test_import.py:TestImportStar.test_from_attr_import_star PASS: tests/test_init_subclass.py:test_init_subclass_vanilla[True] PASS: tests/test_init_subclass.py:test_init_subclass_vanilla[False] PASS: tests/test_init_subclass.py:test_init_subclass_attrs PASS: tests/test_init_subclass.py:test_init_subclass_slots_workaround PASS: tests/test_make.py:TestCountingAttr.test_returns_Attr PASS: tests/test_make.py:TestCountingAttr.test_validators_lists_to_wrapped_tuples PASS: tests/test_make.py:TestCountingAttr.test_validator_decorator_single PASS: tests/test_make.py:TestCountingAttr.test_validator_decorator[0] PASS: tests/test_make.py:TestCountingAttr.test_validator_decorator[1] PASS: tests/test_make.py:TestCountingAttr.test_validator_decorator[2] PASS: tests/test_make.py:TestCountingAttr.test_default_decorator_already_set PASS: tests/test_make.py:TestCountingAttr.test_default_decorator_sets PASS: tests/test_make.py:TestTransformAttrs.test_no_modifications PASS: tests/test_make.py:TestTransformAttrs.test_normal PASS: tests/test_make.py:TestTransformAttrs.test_empty PASS: tests/test_make.py:TestTransformAttrs.test_transforms_to_attribute PASS: tests/test_make.py:TestTransformAttrs.test_conflicting_defaults PASS: tests/test_make.py:TestTransformAttrs.test_kw_only PASS: tests/test_make.py:TestTransformAttrs.test_these PASS: tests/test_make.py:TestTransformAttrs.test_these_leave_body PASS: tests/test_make.py:TestTransformAttrs.test_these_ordered PASS: tests/test_make.py:TestTransformAttrs.test_multiple_inheritance_old PASS: tests/test_make.py:TestTransformAttrs.test_overwrite_proper_mro PASS: tests/test_make.py:TestTransformAttrs.test_multiple_inheritance_proper_mro PASS: tests/test_make.py:TestTransformAttrs.test_mro PASS: tests/test_make.py:TestTransformAttrs.test_inherited PASS: tests/test_make.py:TestAttributes.test_sets_attrs PASS: tests/test_make.py:TestAttributes.test_empty PASS: tests/test_make.py:TestAttributes.test_immutable PASS: tests/test_make.py:TestAttributes.test_adds_all_by_default[__repr__] PASS: tests/test_make.py:TestAttributes.test_adds_all_by_default[__eq__] PASS: tests/test_make.py:TestAttributes.test_adds_all_by_default[__hash__] PASS: tests/test_make.py:TestAttributes.test_adds_all_by_default[__init__] PASS: tests/test_make.py:TestAttributes.test_respects_add_arguments[repr-__repr__] PASS: tests/test_make.py:TestAttributes.test_respects_add_arguments[eq-__eq__] PASS: tests/test_make.py:TestAttributes.test_respects_add_arguments[order-__le__] PASS: tests/test_make.py:TestAttributes.test_respects_add_arguments[hash-__hash__] PASS: tests/test_make.py:TestAttributes.test_respects_add_arguments[init-__init__] PASS: tests/test_make.py:TestAttributes.test_respects_init_attrs_init[True] PASS: tests/test_make.py:TestAttributes.test_respects_init_attrs_init[False] PASS: tests/test_make.py:TestAttributes.test_repr_qualname PASS: tests/test_make.py:TestAttributes.test_repr_fake_qualname PASS: tests/test_make.py:TestAttributes.test_name_not_overridden PASS: tests/test_make.py:TestAttributes.test_pre_init[True] PASS: tests/test_make.py:TestAttributes.test_pre_init[False] PASS: tests/test_make.py:TestAttributes.test_pre_init_args[True] PASS: tests/test_make.py:TestAttributes.test_pre_init_args[False] PASS: tests/test_make.py:TestAttributes.test_pre_init_kwargs[True] PASS: tests/test_make.py:TestAttributes.test_pre_init_kwargs[False] PASS: tests/test_make.py:TestAttributes.test_pre_init_kwargs_only[True] PASS: tests/test_make.py:TestAttributes.test_pre_init_kwargs_only[False] PASS: tests/test_make.py:TestAttributes.test_post_init[True] PASS: tests/test_make.py:TestAttributes.test_post_init[False] PASS: tests/test_make.py:TestAttributes.test_pre_post_init_order[True] PASS: tests/test_make.py:TestAttributes.test_pre_post_init_order[False] PASS: tests/test_make.py:TestAttributes.test_types PASS: tests/test_make.py:TestAttributes.test_clean_class[True] PASS: tests/test_make.py:TestAttributes.test_clean_class[False] PASS: tests/test_make.py:TestAttributes.test_factory_sugar PASS: tests/test_make.py:TestAttributes.test_sugar_factory_mutex PASS: tests/test_make.py:TestAttributes.test_sugar_callable PASS: tests/test_make.py:TestAttributes.test_inherited_does_not_affect_hashing_and_equality PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_adds_keyword_only_arguments PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_ignores_kw_only_when_init_is_false PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_keyword_only_attributes_presence PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_keyword_only_attributes_unexpected PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_keyword_only_attributes_can_come_in_any_order PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_keyword_only_attributes_allow_subclassing PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_keyword_only_class_level PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_keyword_only_class_level_subclassing PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_init_false_attribute_after_keyword_attribute PASS: tests/test_make.py:TestKeywordOnlyAttributes.test_init_false_attribute_after_keyword_attribute_with_inheritance PASS: tests/test_make.py:TestMakeClass.test_simple[list] PASS: tests/test_make.py:TestMakeClass.test_simple[tuple] PASS: tests/test_make.py:TestMakeClass.test_dict PASS: tests/test_make.py:TestMakeClass.test_attr_args PASS: tests/test_make.py:TestMakeClass.test_catches_wrong_attrs_type PASS: tests/test_make.py:TestMakeClass.test_bases PASS: tests/test_make.py:TestMakeClass.test_additional_class_body PASS: tests/test_make.py:TestMakeClass.test_clean_class[True] PASS: tests/test_make.py:TestMakeClass.test_clean_class[False] PASS: tests/test_make.py:TestMakeClass.test_missing_sys_getframe PASS: tests/test_make.py:TestMakeClass.test_make_class_ordered PASS: tests/test_make.py:TestMakeClass.test_generic_dynamic_class PASS: tests/test_make.py:TestFields.test_instance PASS: tests/test_make.py:TestFields.test_handler_non_attrs_class PASS: tests/test_make.py:TestFields.test_handler_non_attrs_generic_class PASS: tests/test_make.py:TestFields.test_fields PASS: tests/test_make.py:TestFields.test_fields_properties PASS: tests/test_make.py:TestFields.test_generics PASS: tests/test_make.py:TestFieldsDict.test_instance PASS: tests/test_make.py:TestFieldsDict.test_handler_non_attrs_class PASS: tests/test_make.py:TestFieldsDict.test_fields_dict PASS: tests/test_make.py:TestConverter.test_convert PASS: tests/test_make.py:TestConverter.test_convert_property PASS: tests/test_make.py:TestConverter.test_converter_factory_property PASS: tests/test_make.py:TestConverter.test_factory_takes_self PASS: tests/test_make.py:TestConverter.test_factory_hashable PASS: tests/test_make.py:TestConverter.test_convert_before_validate PASS: tests/test_make.py:TestConverter.test_frozen PASS: tests/test_make.py:TestValidate.test_success PASS: tests/test_make.py:TestValidate.test_propagates PASS: tests/test_make.py:TestValidate.test_run_validators PASS: tests/test_make.py:TestValidate.test_multiple_validators PASS: tests/test_make.py:TestValidate.test_multiple_empty PASS: tests/test_make.py:TestMetadata.test_metadata_present PASS: tests/test_make.py:TestMetadata.test_metadata_immutability PASS: tests/test_make.py:TestMetadata.test_empty_metadata_singleton PASS: tests/test_make.py:TestMetadata.test_empty_countingattr_metadata_independent PASS: tests/test_make.py:TestMetadata.test_not_none_metadata PASS: tests/test_make.py:TestMetadata.test_metadata PASS: tests/test_make.py:TestClassBuilder.test_repr_str PASS: tests/test_make.py:TestClassBuilder.test_repr PASS: tests/test_make.py:TestClassBuilder.test_returns_self PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__init__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__hash__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__repr__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__str__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__eq__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__ne__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__lt__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__le__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__gt__] PASS: tests/test_make.py:TestClassBuilder.test_attaches_meta_dunders[__ge__] PASS: tests/test_make.py:TestClassBuilder.test_handles_missing_meta_on_class PASS: tests/test_make.py:TestClassBuilder.test_weakref_setstate PASS: tests/test_make.py:TestClassBuilder.test_no_references_to_original PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs0] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs1] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs2] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs3] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs4] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs5] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs6] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs7] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs8] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs9] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs10] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs11] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs12] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs13] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs14] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs15] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs16] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs17] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs18] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs19] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs20] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs21] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs22] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs23] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs24] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs25] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs26] PASS: tests/test_make.py:TestClassBuilder.test_copy[kwargs27] PASS: tests/test_make.py:TestClassBuilder.test_copy_custom_setstate[kwargs0] PASS: tests/test_make.py:TestClassBuilder.test_copy_custom_setstate[kwargs1] PASS: tests/test_make.py:TestClassBuilder.test_copy_custom_setstate[kwargs2] PASS: tests/test_make.py:TestClassBuilder.test_copy_custom_setstate[kwargs3] PASS: tests/test_make.py:TestClassBuilder.test_copy_custom_setstate[kwargs4] PASS: tests/test_make.py:TestClassBuilder.test_copy_custom_setstate[kwargs5] PASS: tests/test_make.py:TestClassBuilder.test_copy_custom_setstate[kwargs6] PASS: tests/test_make.py:TestInitAlias.test_default_and_specify PASS: tests/test_make.py:TestInitAlias.test_evolve PASS: tests/test_make.py:TestMakeOrder.test_subclasses_cannot_be_compared PASS: tests/test_make.py:TestDetermineAttrsEqOrder.test_default PASS: tests/test_make.py:TestDetermineAttrsEqOrder.test_order_mirrors_eq_by_default[True] PASS: tests/test_make.py:TestDetermineAttrsEqOrder.test_order_mirrors_eq_by_default[False] PASS: tests/test_make.py:TestDetermineAttrsEqOrder.test_order_without_eq PASS: tests/test_make.py:TestDetermineAttrsEqOrder.test_mix PASS: tests/test_make.py:TestDetermineAttribEqOrder.test_default PASS: tests/test_make.py:TestDetermineAttribEqOrder.test_eq_callable_order_boolean PASS: tests/test_make.py:TestDetermineAttribEqOrder.test_eq_callable_order_callable PASS: tests/test_make.py:TestDetermineAttribEqOrder.test_eq_boolean_order_callable PASS: tests/test_make.py:TestDetermineAttribEqOrder.test_order_mirrors_eq_by_default[True] PASS: tests/test_make.py:TestDetermineAttribEqOrder.test_order_mirrors_eq_by_default[False] PASS: tests/test_make.py:TestDetermineAttribEqOrder.test_order_without_eq PASS: tests/test_make.py:TestDetermineAttribEqOrder.test_mix PASS: tests/test_make.py:TestDocs.test_docs[__init__] PASS: tests/test_make.py:TestDocs.test_docs[__repr__] PASS: tests/test_make.py:TestDocs.test_docs[__eq__] PASS: tests/test_make.py:TestDocs.test_docs[__ne__] PASS: tests/test_make.py:TestDocs.test_docs[__lt__] PASS: tests/test_make.py:TestDocs.test_docs[__le__] PASS: tests/test_make.py:TestDocs.test_docs[__gt__] PASS: tests/test_make.py:TestDocs.test_docs[__ge__] PASS: tests/test_make.py:TestAutoDetect.test_determine_detects_non_presence_correctly[BareC] PASS: tests/test_make.py:TestAutoDetect.test_determine_detects_non_presence_correctly[BareSlottedC] PASS: tests/test_make.py:TestAutoDetect.test_make_all_by_default[True-True] PASS: tests/test_make.py:TestAutoDetect.test_make_all_by_default[True-False] PASS: tests/test_make.py:TestAutoDetect.test_make_all_by_default[False-True] PASS: tests/test_make.py:TestAutoDetect.test_make_all_by_default[False-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_init[True-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_init[True-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_init[False-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_init[False-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_repr[True-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_repr[True-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_repr[False-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_repr[False-False] PASS: tests/test_make.py:TestAutoDetect.test_hash_uses_eq[True-True] PASS: tests/test_make.py:TestAutoDetect.test_hash_uses_eq[True-False] PASS: tests/test_make.py:TestAutoDetect.test_hash_uses_eq[False-True] PASS: tests/test_make.py:TestAutoDetect.test_hash_uses_eq[False-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_hash[True-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_hash[True-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_hash[False-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_hash[False-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_eq[True-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_eq[True-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_eq[False-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_eq[False-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_order[True-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_order[True-False] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_order[False-True] PASS: tests/test_make.py:TestAutoDetect.test_detect_auto_order[False-False] PASS: tests/test_make.py:TestAutoDetect.test_override_init[True-True] PASS: tests/test_make.py:TestAutoDetect.test_override_init[True-False] PASS: tests/test_make.py:TestAutoDetect.test_override_init[False-True] PASS: tests/test_make.py:TestAutoDetect.test_override_init[False-False] PASS: tests/test_make.py:TestAutoDetect.test_override_repr[True-True] PASS: tests/test_make.py:TestAutoDetect.test_override_repr[True-False] PASS: tests/test_make.py:TestAutoDetect.test_override_repr[False-True] PASS: tests/test_make.py:TestAutoDetect.test_override_repr[False-False] PASS: tests/test_make.py:TestAutoDetect.test_override_hash[True-True] PASS: tests/test_make.py:TestAutoDetect.test_override_hash[True-False] PASS: tests/test_make.py:TestAutoDetect.test_override_hash[False-True] PASS: tests/test_make.py:TestAutoDetect.test_override_hash[False-False] PASS: tests/test_make.py:TestAutoDetect.test_override_eq[True-True] PASS: tests/test_make.py:TestAutoDetect.test_override_eq[True-False] PASS: tests/test_make.py:TestAutoDetect.test_override_eq[False-True] PASS: tests/test_make.py:TestAutoDetect.test_override_eq[False-False] PASS: tests/test_make.py:TestAutoDetect.test_override_order[True-True-True-None-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[True-True-True-True-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[True-True-None-True-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[True-True-None-None-True] PASS: tests/test_make.py:TestAutoDetect.test_override_order[True-False-True-None-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[True-False-True-True-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[True-False-None-True-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[True-False-None-None-True] PASS: tests/test_make.py:TestAutoDetect.test_override_order[False-True-True-None-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[False-True-True-True-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[False-True-None-True-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[False-True-None-None-True] PASS: tests/test_make.py:TestAutoDetect.test_override_order[False-False-True-None-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[False-False-True-True-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[False-False-None-True-None] PASS: tests/test_make.py:TestAutoDetect.test_override_order[False-False-None-None-True] PASS: tests/test_make.py:TestAutoDetect.test_total_ordering[True-True] PASS: tests/test_make.py:TestAutoDetect.test_total_ordering[True-False] PASS: tests/test_make.py:TestAutoDetect.test_total_ordering[False-True] PASS: tests/test_make.py:TestAutoDetect.test_total_ordering[False-False] PASS: tests/test_make.py:TestAutoDetect.test_detects_setstate_getstate[True] PASS: tests/test_make.py:TestAutoDetect.test_detects_setstate_getstate[False] SKIP: tests/test_make.py:TestAutoDetect.test_match_args_pre_310 # SKIP Pre-3.10 only. PASS: tests/test_make.py:TestMatchArgs.test_match_args PASS: tests/test_make.py:TestMatchArgs.test_explicit_match_args PASS: tests/test_make.py:TestMatchArgs.test_match_args_attr_set[True] PASS: tests/test_make.py:TestMatchArgs.test_match_args_attr_set[False] PASS: tests/test_make.py:TestMatchArgs.test_match_args_kw_only PASS: tests/test_make.py:TestMatchArgs.test_match_args_argument PASS: tests/test_make.py:TestMatchArgs.test_make_class PASS: tests/test_next_gen.py:TestNextGen.test_simple PASS: tests/test_next_gen.py:TestNextGen.test_field_type PASS: tests/test_next_gen.py:TestNextGen.test_no_slots PASS: tests/test_next_gen.py:TestNextGen.test_validates PASS: tests/test_next_gen.py:TestNextGen.test_no_order PASS: tests/test_next_gen.py:TestNextGen.test_override_auto_attribs_true PASS: tests/test_next_gen.py:TestNextGen.test_override_auto_attribs_false PASS: tests/test_next_gen.py:TestNextGen.test_auto_attribs_detect PASS: tests/test_next_gen.py:TestNextGen.test_auto_attribs_detect_fields_and_annotations PASS: tests/test_next_gen.py:TestNextGen.test_auto_attribs_partially_annotated PASS: tests/test_next_gen.py:TestNextGen.test_auto_attribs_detect_annotations PASS: tests/test_next_gen.py:TestNextGen.test_exception PASS: tests/test_next_gen.py:TestNextGen.test_frozen PASS: tests/test_next_gen.py:TestNextGen.test_auto_detect_eq PASS: tests/test_next_gen.py:TestNextGen.test_subclass_frozen PASS: tests/test_next_gen.py:TestNextGen.test_catches_frozen_on_setattr PASS: tests/test_next_gen.py:TestNextGen.test_discard_context[decorator0] PASS: tests/test_next_gen.py:TestNextGen.test_discard_context[decorator1] PASS: tests/test_next_gen.py:TestNextGen.test_discard_context[define0] PASS: tests/test_next_gen.py:TestNextGen.test_discard_context[define1] PASS: tests/test_next_gen.py:TestNextGen.test_setting_traceback_on_exception[decorator0] PASS: tests/test_next_gen.py:TestNextGen.test_setting_traceback_on_exception[decorator1] PASS: tests/test_next_gen.py:TestNextGen.test_setting_traceback_on_exception[define0] PASS: tests/test_next_gen.py:TestNextGen.test_setting_traceback_on_exception[define1] PASS: tests/test_next_gen.py:TestNextGen.test_converts_and_validates_by_default PASS: tests/test_next_gen.py:TestNextGen.test_mro_ng PASS: tests/test_next_gen.py:TestAsTuple.test_smoke PASS: tests/test_next_gen.py:TestAsDict.test_smoke PASS: tests/test_next_gen.py:TestImports.test_converters PASS: tests/test_next_gen.py:TestImports.test_exceptions PASS: tests/test_next_gen.py:TestImports.test_filters PASS: tests/test_next_gen.py:TestImports.test_setters PASS: tests/test_next_gen.py:TestImports.test_validators PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_title[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_title[attrs] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_copyright[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_copyright[attrs] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_version[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_version[attrs] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_description[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_description[attrs] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_uri[attr-__uri__] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_uri[attr-__url__] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_uri[attrs-__uri__] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_uri[attrs-__url__] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_author[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_author[attrs] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_email[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_email[attrs] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_license[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_license[attrs] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_does_not_exist[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_does_not_exist[attrs] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_version_info[attr] PASS: tests/test_packaging.py:TestLegacyMetadataHack.test_version_info[attrs] PASS: tests/test_pattern_matching.py:TestPatternMatching.test_simple_match_case[attrs] PASS: tests/test_pattern_matching.py:TestPatternMatching.test_simple_match_case[define] PASS: tests/test_pattern_matching.py:TestPatternMatching.test_simple_match_case[dec2] PASS: tests/test_pattern_matching.py:TestPatternMatching.test_explicit_match_args PASS: tests/test_pattern_matching.py:TestPatternMatching.test_match_args_kw_only SKIP: tests/test_pyright.py:test_pyright_baseline # SKIP Requires pyright. SKIP: tests/test_pyright.py:test_pyright_attrsinstance_compat # SKIP Requires pyright. PASS: tests/test_setattr.py:TestSetAttr.test_change PASS: tests/test_setattr.py:TestSetAttr.test_frozen_attribute PASS: tests/test_setattr.py:TestSetAttr.test_validator[validate] PASS: tests/test_setattr.py:TestSetAttr.test_validator[on_setattr1] PASS: tests/test_setattr.py:TestSetAttr.test_validator[wrapped_pipe] PASS: tests/test_setattr.py:TestSetAttr.test_pipe PASS: tests/test_setattr.py:TestSetAttr.test_make_class PASS: tests/test_setattr.py:TestSetAttr.test_no_validator_no_converter PASS: tests/test_setattr.py:TestSetAttr.test_validate_respects_run_validators_config PASS: tests/test_setattr.py:TestSetAttr.test_frozen_on_setattr_class_is_caught PASS: tests/test_setattr.py:TestSetAttr.test_frozen_on_setattr_attribute_is_caught PASS: tests/test_setattr.py:TestSetAttr.test_setattr_reset_if_no_custom_setattr[True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_reset_if_no_custom_setattr[False] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset[True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset[False] PASS: tests/test_setattr.py:TestSetAttr.test_pickling_retains_attrs_own[True] PASS: tests/test_setattr.py:TestSetAttr.test_pickling_retains_attrs_own[False] PASS: tests/test_setattr.py:TestSetAttr.test_slotted_class_can_have_custom_setattr XFAIL: tests/test_setattr.py:TestSetAttr.test_slotted_confused # XFAIL PASS: tests/test_setattr.py:TestSetAttr.test_setattr_auto_detect_if_no_custom_setattr[True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_auto_detect_if_no_custom_setattr[False] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_restore_respects_auto_detect[True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_restore_respects_auto_detect[False] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_auto_detect_frozen[True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_auto_detect_frozen[False] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_auto_detect_on_setattr[True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_auto_detect_on_setattr[False] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset_intermediate[True-True-True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset_intermediate[True-True-False] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset_intermediate[True-False-True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset_intermediate[True-False-False] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset_intermediate[False-True-True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset_intermediate[False-True-False] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset_intermediate[False-False-True] PASS: tests/test_setattr.py:TestSetAttr.test_setattr_inherited_do_not_reset_intermediate[False-False-False] PASS: tests/test_setattr.py:TestSetAttr.test_docstring PASS: tests/test_slots.py:test_slots_being_used PASS: tests/test_slots.py:test_basic_attr_funcs PASS: tests/test_slots.py:test_inheritance_from_nonslots PASS: tests/test_slots.py:test_nonslots_these PASS: tests/test_slots.py:test_inheritance_from_slots PASS: tests/test_slots.py:test_inheritance_from_slots_with_attribute_override PASS: tests/test_slots.py:test_inherited_slot_reuses_slot_descriptor PASS: tests/test_slots.py:test_bare_inheritance_from_slots PASS: tests/test_slots.py:TestClosureCellRewriting.test_closure_cell_rewriting PASS: tests/test_slots.py:TestClosureCellRewriting.test_inheritance PASS: tests/test_slots.py:TestClosureCellRewriting.test_cls_static[True] PASS: tests/test_slots.py:TestClosureCellRewriting.test_cls_static[False] PASS: tests/test_slots.py:test_not_weakrefable SKIP: tests/test_slots.py:test_implicitly_weakrefable # SKIP slots without weakref_slot should only work on PyPy PASS: tests/test_slots.py:test_weakrefable PASS: tests/test_slots.py:test_weakref_does_not_add_a_field PASS: tests/test_slots.py:tests_weakref_does_not_add_when_inheriting_with_weakref PASS: tests/test_slots.py:tests_weakref_does_not_add_with_weakref_attribute PASS: tests/test_slots.py:test_slots_empty_cell PASS: tests/test_slots.py:TestPickle.test_pickleable_by_default[0] PASS: tests/test_slots.py:TestPickle.test_pickleable_by_default[1] PASS: tests/test_slots.py:TestPickle.test_pickleable_by_default[2] PASS: tests/test_slots.py:TestPickle.test_pickleable_by_default[3] PASS: tests/test_slots.py:TestPickle.test_pickleable_by_default[4] PASS: tests/test_slots.py:TestPickle.test_no_getstate_setstate_for_dict_classes PASS: tests/test_slots.py:TestPickle.test_no_getstate_setstate_if_option_false PASS: tests/test_slots.py:TestPickle.test_getstate_set_state_force_true[cls0] PASS: tests/test_slots.py:TestPickle.test_getstate_set_state_force_true[cls1] PASS: tests/test_slots.py:test_slots_super_property_get PASS: tests/test_slots.py:test_slots_super_property_get_shortcut PASS: tests/test_slots.py:test_slots_cached_property_allows_call PASS: tests/test_slots.py:test_slots_cached_property_class_does_not_have__dict__ PASS: tests/test_slots.py:test_slots_cached_property_works_on_frozen_isntances PASS: tests/test_slots.py:test_slots_cached_property_infers_type PASS: tests/test_slots.py:test_slots_cached_property_with_empty_getattr_raises_attribute_error_of_requested PASS: tests/test_slots.py:test_slots_cached_property_with_getattr_calls_getattr_for_missing_attributes PASS: tests/test_slots.py:test_slots_getattr_in_superclass__is_called_for_missing_attributes_when_cached_property_present PASS: tests/test_slots.py:test_slots_getattr_in_subclass_gets_superclass_cached_property PASS: tests/test_slots.py:test_slots_sub_class_with_independent_cached_properties_both_work PASS: tests/test_slots.py:test_slots_with_multiple_cached_property_subclasses_works PASS: tests/test_slots.py:test_slots_sub_class_avoids_duplicated_slots PASS: tests/test_slots.py:test_slots_sub_class_with_actual_slot PASS: tests/test_slots.py:test_slots_cached_property_is_not_called_at_construction PASS: tests/test_slots.py:test_slots_cached_property_repeat_call_only_once PASS: tests/test_slots.py:test_slots_cached_property_called_independent_across_instances PASS: tests/test_slots.py:test_slots_cached_properties_work_independently PASS: tests/test_slots.py:test_slots_unpickle_after_attr_removed PASS: tests/test_slots.py:test_slots_unpickle_after_attr_added[True] PASS: tests/test_slots.py:test_slots_unpickle_after_attr_added[False] PASS: tests/test_slots.py:test_slots_unpickle_is_backward_compatible[True] PASS: tests/test_slots.py:test_slots_unpickle_is_backward_compatible[False] PASS: tests/test_utils.py:TestSimpleClass.test_returns_class PASS: tests/test_utils.py:TestSimpleClass.test_returns_distinct_classes PASS: tests/test_validators.py:TestDisableValidators.test_default PASS: tests/test_validators.py:TestDisableValidators.test_set_validators_disabled[True-False] PASS: tests/test_validators.py:TestDisableValidators.test_set_validators_disabled[False-True] PASS: tests/test_validators.py:TestDisableValidators.test_disabled[True-False] PASS: tests/test_validators.py:TestDisableValidators.test_disabled[False-True] PASS: tests/test_validators.py:TestDisableValidators.test_disabled_ctx PASS: tests/test_validators.py:TestDisableValidators.test_disabled_ctx_with_errors PASS: tests/test_validators.py:TestInstanceOf.test_in_all PASS: tests/test_validators.py:TestInstanceOf.test_success PASS: tests/test_validators.py:TestInstanceOf.test_subclass PASS: tests/test_validators.py:TestInstanceOf.test_fail PASS: tests/test_validators.py:TestInstanceOf.test_repr PASS: tests/test_validators.py:TestMatchesRe.test_in_all PASS: tests/test_validators.py:TestMatchesRe.test_match PASS: tests/test_validators.py:TestMatchesRe.test_flags PASS: tests/test_validators.py:TestMatchesRe.test_precompiled_pattern PASS: tests/test_validators.py:TestMatchesRe.test_precompiled_pattern_no_flags PASS: tests/test_validators.py:TestMatchesRe.test_different_func PASS: tests/test_validators.py:TestMatchesRe.test_catches_invalid_func PASS: tests/test_validators.py:TestMatchesRe.test_accepts_all_valid_func[None] PASS: tests/test_validators.py:TestMatchesRe.test_accepts_all_valid_func[fullmatch] PASS: tests/test_validators.py:TestMatchesRe.test_accepts_all_valid_func[match] PASS: tests/test_validators.py:TestMatchesRe.test_accepts_all_valid_func[search] PASS: tests/test_validators.py:TestMatchesRe.test_repr PASS: tests/test_validators.py:TestAnd.test_in_all PASS: tests/test_validators.py:TestAnd.test_success PASS: tests/test_validators.py:TestAnd.test_fail PASS: tests/test_validators.py:TestAnd.test_sugar PASS: tests/test_validators.py:TestProvides.test_in_all SKIP: tests/test_validators.py:TestProvides.test_success # SKIP zope-related tests skipped when zope.interface is not installed SKIP: tests/test_validators.py:TestProvides.test_fail # SKIP zope-related tests skipped when zope.interface is not installed SKIP: tests/test_validators.py:TestProvides.test_repr # SKIP zope-related tests skipped when zope.interface is not installed PASS: tests/test_validators.py:TestOptional.test_in_all[validator0] PASS: tests/test_validators.py:TestOptional.test_in_all[validator1] PASS: tests/test_validators.py:TestOptional.test_in_all[validator2] PASS: tests/test_validators.py:TestOptional.test_success[validator0] PASS: tests/test_validators.py:TestOptional.test_success[validator1] PASS: tests/test_validators.py:TestOptional.test_success[validator2] PASS: tests/test_validators.py:TestOptional.test_success_with_none[validator0] PASS: tests/test_validators.py:TestOptional.test_success_with_none[validator1] PASS: tests/test_validators.py:TestOptional.test_success_with_none[validator2] PASS: tests/test_validators.py:TestOptional.test_fail[validator0] PASS: tests/test_validators.py:TestOptional.test_fail[validator1] PASS: tests/test_validators.py:TestOptional.test_fail[validator2] PASS: tests/test_validators.py:TestOptional.test_repr[validator0] PASS: tests/test_validators.py:TestOptional.test_repr[validator1] PASS: tests/test_validators.py:TestOptional.test_repr[validator2] PASS: tests/test_validators.py:TestIn_.test_in_all PASS: tests/test_validators.py:TestIn_.test_success_with_value PASS: tests/test_validators.py:TestIn_.test_fail PASS: tests/test_validators.py:TestIn_.test_fail_with_string PASS: tests/test_validators.py:TestIn_.test_repr PASS: tests/test_validators.py:TestDeepIterable.test_in_all PASS: tests/test_validators.py:TestDeepIterable.test_success_member_only[member_validator0] PASS: tests/test_validators.py:TestDeepIterable.test_success_member_and_iterable[member_validator0] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_member[member_validator0] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_iterable[member_validator0] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_member_and_iterable[member_validator0] PASS: tests/test_validators.py:TestDeepIterable.test_success_member_only[member_validator1] PASS: tests/test_validators.py:TestDeepIterable.test_success_member_and_iterable[member_validator1] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_member[member_validator1] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_iterable[member_validator1] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_member_and_iterable[member_validator1] PASS: tests/test_validators.py:TestDeepIterable.test_success_member_only[member_validator2] PASS: tests/test_validators.py:TestDeepIterable.test_success_member_and_iterable[member_validator2] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_member[member_validator2] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_iterable[member_validator2] PASS: tests/test_validators.py:TestDeepIterable.test_fail_invalid_member_and_iterable[member_validator2] PASS: tests/test_validators.py:TestDeepIterable.test_noncallable_validators[member_validator0-42] PASS: tests/test_validators.py:TestDeepIterable.test_noncallable_validators[42-iterable_validator1] PASS: tests/test_validators.py:TestDeepIterable.test_noncallable_validators[42-42] PASS: tests/test_validators.py:TestDeepIterable.test_noncallable_validators[42-None] PASS: tests/test_validators.py:TestDeepIterable.test_noncallable_validators[member_validator4-42] PASS: tests/test_validators.py:TestDeepIterable.test_noncallable_validators[member_validator5-42] PASS: tests/test_validators.py:TestDeepIterable.test_repr_member_only PASS: tests/test_validators.py:TestDeepIterable.test_repr_member_only_sequence PASS: tests/test_validators.py:TestDeepIterable.test_repr_member_and_iterable PASS: tests/test_validators.py:TestDeepIterable.test_repr_sequence_member_and_iterable PASS: tests/test_validators.py:TestDeepMapping.test_in_all PASS: tests/test_validators.py:TestDeepMapping.test_success PASS: tests/test_validators.py:TestDeepMapping.test_noncallable_validators[42-value_validator0-None] PASS: tests/test_validators.py:TestDeepMapping.test_noncallable_validators[key_validator1-42-None] PASS: tests/test_validators.py:TestDeepMapping.test_noncallable_validators[key_validator2-value_validator2-42] PASS: tests/test_validators.py:TestDeepMapping.test_noncallable_validators[42-42-None] PASS: tests/test_validators.py:TestDeepMapping.test_noncallable_validators[42-42-42] PASS: tests/test_validators.py:TestDeepMapping.test_fail_invalid_mapping PASS: tests/test_validators.py:TestDeepMapping.test_fail_invalid_key PASS: tests/test_validators.py:TestDeepMapping.test_fail_invalid_member PASS: tests/test_validators.py:TestDeepMapping.test_repr PASS: tests/test_validators.py:TestIsCallable.test_in_all PASS: tests/test_validators.py:TestIsCallable.test_success PASS: tests/test_validators.py:TestIsCallable.test_fail PASS: tests/test_validators.py:TestIsCallable.test_repr PASS: tests/test_validators.py:TestIsCallable.test_exception_repr PASS: tests/test_validators.py:test_hashability PASS: tests/test_validators.py:TestLtLeGeGt.test_in_all PASS: tests/test_validators.py:TestLtLeGeGt.test_retrieve_bound[lt] PASS: tests/test_validators.py:TestLtLeGeGt.test_retrieve_bound[le] PASS: tests/test_validators.py:TestLtLeGeGt.test_retrieve_bound[ge] PASS: tests/test_validators.py:TestLtLeGeGt.test_retrieve_bound[gt] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_valid[lt-3] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_valid[le-3] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_valid[le-4] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_valid[ge-4] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_valid[ge-5] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_valid[gt-5] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_invalid[lt-4] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_invalid[le-5] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_invalid[ge-3] PASS: tests/test_validators.py:TestLtLeGeGt.test_check_invalid[gt-4] PASS: tests/test_validators.py:TestLtLeGeGt.test_repr[lt] PASS: tests/test_validators.py:TestLtLeGeGt.test_repr[le] PASS: tests/test_validators.py:TestLtLeGeGt.test_repr[ge] PASS: tests/test_validators.py:TestLtLeGeGt.test_repr[gt] PASS: tests/test_validators.py:TestMaxLen.test_in_all PASS: tests/test_validators.py:TestMaxLen.test_retrieve_max_len PASS: tests/test_validators.py:TestMaxLen.test_check_valid[] PASS: tests/test_validators.py:TestMaxLen.test_check_valid[foo] PASS: tests/test_validators.py:TestMaxLen.test_check_valid[spam] PASS: tests/test_validators.py:TestMaxLen.test_check_valid[value3] PASS: tests/test_validators.py:TestMaxLen.test_check_valid[value4] PASS: tests/test_validators.py:TestMaxLen.test_check_valid[value5] PASS: tests/test_validators.py:TestMaxLen.test_check_invalid[bacon] PASS: tests/test_validators.py:TestMaxLen.test_check_invalid[value1] PASS: tests/test_validators.py:TestMaxLen.test_repr PASS: tests/test_validators.py:TestMinLen.test_in_all PASS: tests/test_validators.py:TestMinLen.test_retrieve_min_len PASS: tests/test_validators.py:TestMinLen.test_check_valid[foo] PASS: tests/test_validators.py:TestMinLen.test_check_valid[spam] PASS: tests/test_validators.py:TestMinLen.test_check_valid[value2] PASS: tests/test_validators.py:TestMinLen.test_check_valid[value3] PASS: tests/test_validators.py:TestMinLen.test_check_invalid[] PASS: tests/test_validators.py:TestMinLen.test_check_invalid[value1] PASS: tests/test_validators.py:TestMinLen.test_repr PASS: tests/test_validators.py:TestSubclassOf.test_success PASS: tests/test_validators.py:TestSubclassOf.test_subclass PASS: tests/test_validators.py:TestSubclassOf.test_fail PASS: tests/test_validators.py:TestSubclassOf.test_repr PASS: tests/test_validators.py:TestNot_.test_not_all PASS: tests/test_validators.py:TestNot_.test_repr PASS: tests/test_validators.py:TestNot_.test_success_because_fails PASS: tests/test_validators.py:TestNot_.test_fails_because_success PASS: tests/test_validators.py:TestNot_.test_composable_with_in_pass PASS: tests/test_validators.py:TestNot_.test_composable_with_in_fail PASS: tests/test_validators.py:TestNot_.test_composable_with_matches_re_pass PASS: tests/test_validators.py:TestNot_.test_composable_with_matches_re_fail PASS: tests/test_validators.py:TestNot_.test_composable_with_instance_of_pass PASS: tests/test_validators.py:TestNot_.test_composable_with_instance_of_fail PASS: tests/test_validators.py:TestNot_.test_custom_capture_match PASS: tests/test_validators.py:TestNot_.test_custom_capture_miss PASS: tests/test_validators.py:TestNot_.test_custom_msg PASS: tests/test_validators.py:TestNot_.test_bad_exception_args PASS: tests/test_version_info.py:TestVersionInfo.test_from_string_no_releaselevel PASS: tests/test_version_info.py:TestVersionInfo.test_suffix_is_preserved PASS: tests/test_version_info.py:TestVersionInfo.test_wrong_len[other0] PASS: tests/test_version_info.py:TestVersionInfo.test_wrong_len[other1] PASS: tests/test_version_info.py:TestVersionInfo.test_wrong_type[other0] PASS: tests/test_version_info.py:TestVersionInfo.test_order ============================================================================ Testsuite summary # TOTAL: 1327 # PASS: 1317 # SKIP: 9 # XFAIL: 1 # FAIL: 0 # XPASS: 0 # ERROR: 0 DURATION: 27 END: /usr/lib/python3-attrs/ptest 2024-04-26T02:11 STOP: ptest-runner TOTAL: 1 FAIL: 0