()
| 1028 | |
| 1029 | |
| 1030 | def test_build_default_values_factory(): |
| 1031 | fory = Fory(xlang=False, ref=True, strict=False, compatible=False) |
| 1032 | type_hints = typing.get_type_hints(MissingDefaultFactoryFields) |
| 1033 | default_factories = build_default_values_factory( |
| 1034 | fory, |
| 1035 | type_hints, |
| 1036 | dataclasses.fields(MissingDefaultFactoryFields), |
| 1037 | ) |
| 1038 | |
| 1039 | assert callable(default_factories["required"]) |
| 1040 | assert callable(default_factories["required_float"]) |
| 1041 | assert callable(default_factories["required_str"]) |
| 1042 | assert callable(default_factories["required_bytes"]) |
| 1043 | assert callable(default_factories["required_list"]) |
| 1044 | assert callable(default_factories["required_set"]) |
| 1045 | assert callable(default_factories["required_dict"]) |
| 1046 | assert callable(default_factories["plain_default"]) |
| 1047 | assert callable(default_factories["list_default"]) |
| 1048 | assert callable(default_factories["enum_default_none"]) |
| 1049 | |
| 1050 | assert default_factories["required"]() == 0 |
| 1051 | assert default_factories["required_float"]() == 0.0 |
| 1052 | assert default_factories["required_str"]() == "" |
| 1053 | assert default_factories["required_bytes"]() == b"" |
| 1054 | list_required_one = default_factories["required_list"]() |
| 1055 | list_required_two = default_factories["required_list"]() |
| 1056 | assert list_required_one == [] |
| 1057 | assert list_required_two == [] |
| 1058 | assert list_required_one is not list_required_two |
| 1059 | set_required_one = default_factories["required_set"]() |
| 1060 | set_required_two = default_factories["required_set"]() |
| 1061 | assert set_required_one == set() |
| 1062 | assert set_required_two == set() |
| 1063 | assert set_required_one is not set_required_two |
| 1064 | dict_required_one = default_factories["required_dict"]() |
| 1065 | dict_required_two = default_factories["required_dict"]() |
| 1066 | assert dict_required_one == {} |
| 1067 | assert dict_required_two == {} |
| 1068 | assert dict_required_one is not dict_required_two |
| 1069 | assert default_factories["plain_default"]() == 7 |
| 1070 | assert default_factories["enum_default_none"]() is MissingDefaultEnum.A |
| 1071 | list_one = default_factories["list_default"]() |
| 1072 | list_two = default_factories["list_default"]() |
| 1073 | assert list_one == [] |
| 1074 | assert list_two == [] |
| 1075 | assert list_one is not list_two |
| 1076 | |
| 1077 | |
| 1078 | @dataclass |
nothing calls this directly
no test coverage detected