-
Notifications
You must be signed in to change notification settings - Fork 56
Expand file tree
/
Copy pathrunner.py
More file actions
161 lines (151 loc) · 3.48 KB
/
runner.py
File metadata and controls
161 lines (151 loc) · 3.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
import sys
import typing
if sys.version_info[:3] < (3, 12, 0):
print("examples require at least Python 3.12")
sys.exit(1)
def run_all() -> None:
import alias
import any
import class_var
import primitive_subclass
import collection
import mapping
import sequence
import set_abc
import custom_class_serializer
import custom_legacy_class_serializer
import custom_field_serializer
import default
import default_dict
import env
import flatten
import flatten_dict
import forward_reference
import frozen_set
import generics
import generics_pep695
import generics_nested
import nested
import init_var
import jsonfile
import lazy_type_evaluation
import literal
import msg_pack
import newtype
import pep681
import plain_dataclass
import plain_dataclass_class_attribute
import deny_unknown_fields
import python_pickle
import recursive
import recursive_list
import recursive_union
import rename
import rename_all
import simple
import skip
import skip_if_none
import skip_if_default_class
import skip_serializing_deserializing
import tomlfile
import transparent
import type_check_coerce
import type_check_disabled
import type_datetime
import type_decimal
import type_ipaddress
import type_numpy
import type_pathlib
import type_uuid
import type_alias_pep695
import union
import union_tagging
import union_directly
import user_exception
import variable_length_tuple
import type_statement
import yamlfile
import enum34
import kw_only
import self_type
run(any)
run(simple)
run(enum34)
run(frozen_set)
run(newtype)
run(collection)
run(mapping)
run(sequence)
run(set_abc)
run(default)
run(default_dict)
run(env)
run(flatten)
run(flatten_dict)
run(jsonfile)
run(rename)
run(rename_all)
run(skip)
run(skip_if_none)
run(skip_if_default_class)
run(skip_serializing_deserializing)
run(tomlfile)
run(transparent)
run(yamlfile)
run(union)
run(custom_class_serializer)
run(custom_legacy_class_serializer)
run(custom_field_serializer)
run(forward_reference)
run(type_decimal)
run(type_datetime)
run(union_tagging)
run(union_directly)
run(generics)
run(type_alias_pep695)
run(type_statement)
run(generics_pep695)
run(generics_nested)
run(nested)
run(lazy_type_evaluation)
run(literal)
run(type_check_coerce)
run(type_check_disabled)
run(user_exception)
run(pep681)
run(variable_length_tuple)
run(init_var)
run(python_pickle)
run(class_var)
run(alias)
run(recursive)
run(recursive_list)
run(recursive_union)
run(class_var)
run(plain_dataclass)
run(plain_dataclass_class_attribute)
run(deny_unknown_fields)
run(msg_pack)
run(primitive_subclass)
run(kw_only)
run(type_pathlib)
run(type_ipaddress)
run(type_uuid)
run(type_numpy)
run(self_type)
try:
import type_sqlalchemy
run(type_sqlalchemy)
except ImportError:
pass
def run(module: typing.Any) -> None:
print("-----------------")
print(f"running {module.__name__}")
module.main()
if __name__ == "__main__":
try:
run_all()
print("-----------------")
print("all examples completed successfully!")
except Exception:
sys.exit(1)