Coverage for tests/conftest.py: 96%
47 statements
« prev ^ index » next coverage.py v7.7.1, created at 2025-03-24 00:02 +0000
« prev ^ index » next coverage.py v7.7.1, created at 2025-03-24 00:02 +0000
1import shutil 1abcdef
2import subprocess 1abcdef
3import sys 1abcdef
4from pathlib import Path 1abcdef
5from typing import Any, Callable, Dict, List, Union 1abcdef
7import pytest 1abcdef
8from pydantic import BaseModel 1abcdef
9from sqlmodel import SQLModel 1abcdef
10from sqlmodel._compat import IS_PYDANTIC_V2 1abcdef
11from sqlmodel.main import default_registry 1abcdef
13top_level_path = Path(__file__).resolve().parent.parent 1abcdef
14docs_src_path = top_level_path / "docs_src" 1abcdef
17@pytest.fixture() 1abcdef
18def clear_sqlmodel(): 1abcdef
19 # Clear the tables in the metadata for the default base model
20 SQLModel.metadata.clear() 1abcdef
21 # Clear the Models associated with the registry, to avoid warnings
22 default_registry.dispose() 1abcdef
23 yield 1abcdef
24 SQLModel.metadata.clear() 1abcdef
25 default_registry.dispose() 1abcdef
28@pytest.fixture() 1abcdef
29def cov_tmp_path(tmp_path: Path): 1abcdef
30 yield tmp_path 1abcdef
31 for coverage_path in tmp_path.glob(".coverage*"): 1abcdef
32 coverage_destiny_path = top_level_path / coverage_path.name
33 shutil.copy(coverage_path, coverage_destiny_path)
36def coverage_run(*, module: str, cwd: Union[str, Path]) -> subprocess.CompletedProcess: 1abcdef
37 result = subprocess.run( 2yiziAiBiCiDiEiFiGiHi
38 [
39 "coverage",
40 "run",
41 "--parallel-mode",
42 "--source=docs_src,tests,sqlmodel",
43 "-m",
44 module,
45 ],
46 cwd=str(cwd),
47 capture_output=True,
48 encoding="utf-8",
49 )
50 return result 2yiziAiBiCiDiEiFiGiHi
53def get_testing_print_function( 1abcdef
54 calls: List[List[Union[str, Dict[str, Any]]]],
55) -> Callable[..., Any]:
56 def new_print(*args): 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_b0g1ghbibjbkbg h i `bGg{b|b}b~bacbcHgj k ccdcecfcgchcicjcl 2g3glbmbkclcmcnc4g5g6g7g8g9g!g#g$g%g'gocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGc(g)gnbobpbqbm n o p q r HcIgIcJcKcLcMcNcJgs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x *g+grbsb4c5c6c7c,g-g.g/g:g;g=g?g@g[g]g8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgd^g_g`g{gtbubvbwbxbybzbAby z A B C D E F G hdidKgLgjdkdldmdndodpdqdrdsdtdudMgNgH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P |g}g~gahBbCbDbEbTdUdVdWdXdYdZd0dbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhwh1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dxhyhzhAhFbGbHbIbJbKbLbMbQ R S T U V W X Y aebeOgPgcedeeefegeheiejekelemeneQgRgZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 BhChDhEhNbObPbQbMeNeOePeQeReSeTeFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWhXhYhZh0hUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]e1h2h3h4hRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) ^e_eSgTg`e{e|e}e~eafbfcfdfefffgfUgVg* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = 5h6h7h8hZb0b1b2bFfGfHfIfJfKfLfMf9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^hNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f_h`h{h|h3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | :f;fWgXg=f?f@f[f]f^f_f`f{f|f}f~fYgZg} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgb}h~haibi#b$b%b'bygzgAgBgCgDgEgFgcidieifigihiiijikiliminioipiqirisitiuiviwixi
57 data = [] 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_b0g1ghbibjbkbg h i `bGg{b|b}b~bacbcHgj k ccdcecfcgchcicjcl 2g3glbmbkclcmcnc4g5g6g7g8g9g!g#g$g%g'gocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGc(g)gnbobpbqbm n o p q r HcIgIcJcKcLcMcNcJgs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x *g+grbsb4c5c6c7c,g-g.g/g:g;g=g?g@g[g]g8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgd^g_g`g{gtbubvbwbxbybzbAby z A B C D E F G hdidKgLgjdkdldmdndodpdqdrdsdtdudMgNgH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P |g}g~gahBbCbDbEbTdUdVdWdXdYdZd0dbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhwh1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dxhyhzhAhFbGbHbIbJbKbLbMbQ R S T U V W X Y aebeOgPgcedeeefegeheiejekelemeneQgRgZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 BhChDhEhNbObPbQbMeNeOePeQeReSeTeFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWhXhYhZh0hUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]e1h2h3h4hRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) ^e_eSgTg`e{e|e}e~eafbfcfdfefffgfUgVg* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = 5h6h7h8hZb0b1b2bFfGfHfIfJfKfLfMf9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^hNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f_h`h{h|h3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | :f;fWgXg=f?f@f[f]f^f_f`f{f|f}f~fYgZg} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgb}h~haibi#b$b%b'bygzgAgBgCgDgEgFgcidieifigihiiijikiliminioipiqirisitiuiviwixi
58 for arg in args: 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_b0g1ghbibjbkbg h i `bGg{b|b}b~bacbcHgj k ccdcecfcgchcicjcl 2g3glbmbkclcmcnc4g5g6g7g8g9g!g#g$g%g'gocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGc(g)gnbobpbqbm n o p q r HcIgIcJcKcLcMcNcJgs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x *g+grbsb4c5c6c7c,g-g.g/g:g;g=g?g@g[g]g8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgd^g_g`g{gtbubvbwbxbybzbAby z A B C D E F G hdidKgLgjdkdldmdndodpdqdrdsdtdudMgNgH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P |g}g~gahBbCbDbEbTdUdVdWdXdYdZd0dbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhwh1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dxhyhzhAhFbGbHbIbJbKbLbMbQ R S T U V W X Y aebeOgPgcedeeefegeheiejekelemeneQgRgZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 BhChDhEhNbObPbQbMeNeOePeQeReSeTeFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWhXhYhZh0hUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]e1h2h3h4hRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) ^e_eSgTg`e{e|e}e~eafbfcfdfefffgfUgVg* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = 5h6h7h8hZb0b1b2bFfGfHfIfJfKfLfMf9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^hNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f_h`h{h|h3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | :f;fWgXg=f?f@f[f]f^f_f`f{f|f}f~fYgZg} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgb}h~haibi#b$b%b'bygzgAgBgCgDgEgFgcidieifigihiiijikiliminioipiqirisitiuiviwixi
59 if isinstance(arg, BaseModel): 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_b0g1ghbibjbkbg h i `bGg{b|b}b~bacbcHgj k ccdcecfcgchcicjcl 2g3glbmbkclcmcnc4g5g6g7g8g9g!g#g$g%g'gocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGc(g)gnbobpbqbm n o p q r HcIgIcJcKcLcMcNcJgs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x *g+grbsb4c5c6c7c,g-g.g/g:g;g=g?g@g[g]g8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgd^g_g`g{gtbubvbwbxbybzbAby z A B C D E F G hdidKgLgjdkdldmdndodpdqdrdsdtdudMgNgH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P |g}g~gahBbCbDbEbTdUdVdWdXdYdZd0dbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhwh1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dxhyhzhAhFbGbHbIbJbKbLbMbQ R S T U V W X Y aebeOgPgcedeeefegeheiejekelemeneQgRgZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 BhChDhEhNbObPbQbMeNeOePeQeReSeTeFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWhXhYhZh0hUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]e1h2h3h4hRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) ^e_eSgTg`e{e|e}e~eafbfcfdfefffgfUgVg* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = 5h6h7h8hZb0b1b2bFfGfHfIfJfKfLfMf9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^hNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f_h`h{h|h3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | :f;fWgXg=f?f@f[f]f^f_f`f{f|f}f~fYgZg} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgb}h~haibi#b$b%b'bygzgAgBgCgDgEgFgcidieifigihiiijikiliminioipiqirisitiuiviwixi
60 data.append(arg.model_dump()) 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_b0g1gg h i `b{b|b}b~bacbcj k ccdcecfcgchcicjcl 2g3gkclcmcnc4g5g6g7g8g9g!g#g$g%g'gocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGc(g)gm n o p q r HcIcJcKcLcMcNcs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x *g+g4c5c6c7c,g-g.g/g:g;g=g?g@g[g]g8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgd^g_g`g{gy z A B C D E F G hdidjdkdldmdndodpdqdrdsdtdudH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P |g}g~gahTdUdVdWdXdYdZd0dbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhwh1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dxhyhzhAhQ R S T U V W X Y aebecedeeefegeheiejekelemeneZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 BhChDhEhMeNeOePeQeReSeTeFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWhXhYhZh0hUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]e1h2h3h4h8 9 ! # $ % ' ( ) ^e_e`e{e|e}e~eafbfcfdfefffgf* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = 5h6h7h8hFfGfHfIfJfKfLfMf9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^hNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f_h`h{h|h? @ [ ] ^ _ ` { | :f;f=f?f@f[f]f^f_f`f{f|f}f~f} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgb}h~haibiygzgAgBgCgDgEgFgcidieifigihiiijikiliminioipiqirisitiuiviwixi
61 elif isinstance(arg, list): 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_bhbibjbkbg h i `bGg{b|b}b~bacbcHgj k ccdcecfcgchcicjcl lbmbkclcmcncocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcnbobpbqbm n o p q r HcIgIcJcKcLcMcNcJgs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x rbsb4c5c6c7c8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgdtbubvbwbxbybzbAby z A B C D E F G hdidKgLgjdkdldmdndodpdqdrdsdtdudMgNgH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P BbCbDbEbTdUdVdWdXdYdZd0d1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dFbGbHbIbJbKbLbMbQ R S T U V W X Y aebeOgPgcedeeefegeheiejekelemeneQgRgZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 NbObPbQbMeNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]eRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) ^e_eSgTg`e{e|e}e~eafbfcfdfefffgfUgVg* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = Zb0b1b2bFfGfHfIfJfKfLfMfNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | :f;fWgXg=f?f@f[f]f^f_f`f{f|f}f~fYgZg} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgb#b$b%b'bygzgAgBgCgDgEgFg
62 new_list = [] 2hbibjbkbg h i j k l lbmbnbobpbqbm n o p q r s t u v w x rbsbtbubvbwbxbybzbAby z A B C D E F G H I J K L M N O P BbCbDbEbFbGbHbIbJbKbLbMbQ R S T U V W X Y Z 0 1 2 3 4 5 6 7 NbObPbQbRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) * + , - . / : ; = Zb0b1b2b3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | } ~ abbbcbdbebfbgb#b$b%b'b
63 for item in arg: 2hbibjbkbg h i j k l lbmbnbobpbqbm n o p q r s t u v w x rbsbtbubvbwbxbybzbAby z A B C D E F G H I J K L M N O P BbCbDbEbFbGbHbIbJbKbLbMbQ R S T U V W X Y Z 0 1 2 3 4 5 6 7 NbObPbQbRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) * + , - . / : ; = Zb0b1b2b3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | } ~ abbbcbdbebfbgb#b$b%b'b
64 if isinstance(item, BaseModel): 2hbibjbkbg h i j k l lbmbnbobpbqbm n o p q r s t u v w x rbsbtbubvbwbxbybzbAby z A B C D E F G H I J K L M N O P BbCbDbEbFbGbHbIbJbKbLbMbQ R S T U V W X Y Z 0 1 2 3 4 5 6 7 NbObPbQbRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) * + , - . / : ; = Zb0b1b2b3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | } ~ abbbcbdbebfbgb#b$b%b'b
65 new_list.append(item.model_dump()) 2hbibjbkbg h i j k l lbmbnbobpbqbm n o p q r s t u v w x rbsbtbubvbwbxbybzbAby z A B C D E F G H I J K L M N O P BbCbDbEbFbGbHbIbJbKbLbMbQ R S T U V W X Y Z 0 1 2 3 4 5 6 7 NbObPbQbRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) * + , - . / : ; = Zb0b1b2b3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | } ~ abbbcbdbebfbgb#b$b%b'b
66 data.append(new_list) 2hbibjbkbg h i j k l lbmbnbobpbqbm n o p q r s t u v w x rbsbtbubvbwbxbybzbAby z A B C D E F G H I J K L M N O P BbCbDbEbFbGbHbIbJbKbLbMbQ R S T U V W X Y Z 0 1 2 3 4 5 6 7 NbObPbQbRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) * + , - . / : ; = Zb0b1b2b3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | } ~ abbbcbdbebfbgb#b$b%b'b
67 else:
68 data.append(arg) 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_bg h i `bGg{b|b}b~bacbcHgj k ccdcecfcgchcicjcl kclcmcncocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGcm n o p q r HcIgIcJcKcLcMcNcJgs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x 4c5c6c7c8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgdy z A B C D E F G hdidKgLgjdkdldmdndodpdqdrdsdtdudMgNgH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P TdUdVdWdXdYdZd0d1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dQ R S T U V W X Y aebeOgPgcedeeefegeheiejekelemeneQgRgZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 MeNeOePeQeReSeTeUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]e8 9 ! # $ % ' ( ) ^e_eSgTg`e{e|e}e~eafbfcfdfefffgfUgVg* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = FfGfHfIfJfKfLfMfNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f? @ [ ] ^ _ ` { | :f;fWgXg=f?f@f[f]f^f_f`f{f|f}f~fYgZg} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgbygzgAgBgCgDgEgFg
69 calls.append(data) 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_b0g1ghbibjbkbg h i `bGg{b|b}b~bacbcHgj k ccdcecfcgchcicjcl 2g3glbmbkclcmcnc4g5g6g7g8g9g!g#g$g%g'gocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGc(g)gnbobpbqbm n o p q r HcIgIcJcKcLcMcNcJgs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x *g+grbsb4c5c6c7c,g-g.g/g:g;g=g?g@g[g]g8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgd^g_g`g{gtbubvbwbxbybzbAby z A B C D E F G hdidKgLgjdkdldmdndodpdqdrdsdtdudMgNgH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P |g}g~gahBbCbDbEbTdUdVdWdXdYdZd0dbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhwh1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dxhyhzhAhFbGbHbIbJbKbLbMbQ R S T U V W X Y aebeOgPgcedeeefegeheiejekelemeneQgRgZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 BhChDhEhNbObPbQbMeNeOePeQeReSeTeFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWhXhYhZh0hUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]e1h2h3h4hRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) ^e_eSgTg`e{e|e}e~eafbfcfdfefffgfUgVg* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = 5h6h7h8hZb0b1b2bFfGfHfIfJfKfLfMf9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^hNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f_h`h{h|h3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | :f;fWgXg=f?f@f[f]f^f_f`f{f|f}f~fYgZg} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgb}h~haibi#b$b%b'bygzgAgBgCgDgEgFgcidieifigihiiijikiliminioipiqirisitiuiviwixi
71 return new_print 2(b)b*b+b,b-b.b/b:b;b=b?b@b[b]b^b_b0g1ghbibjbkbg h i `bGg{b|b}b~bacbcHgj k ccdcecfcgchcicjcl 2g3glbmbkclcmcnc4g5g6g7g8g9g!g#g$g%g'gocpcqcrcsctcucvcwcxcyczcAcBcCcDcEcFcGc(g)gnbobpbqbm n o p q r HcIgIcJcKcLcMcNcJgs t u v OcPcQcRcScTcUcVcWcXcYcZc0c1c2c3cw x *g+grbsb4c5c6c7c,g-g.g/g:g;g=g?g@g[g]g8c9c!c#c$c%c'c(c)c*c+c,c-c.c/c:c;c=c?c@c[c]c^c_c`c{c|c}c~cadbdcdddedfdgd^g_g`g{gtbubvbwbxbybzbAby z A B C D E F G hdidKgLgjdkdldmdndodpdqdrdsdtdudMgNgH I J K L M vdwdxdydzdAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdN O P |g}g~gahBbCbDbEbTdUdVdWdXdYdZd0dbhchdhehfhghhhihjhkhlhmhnhohphqhrhshthuhvhwh1d2d3d4d5d6d7d8d9d!d#d$d%d'd(d)d*d+d,d-d.d/d:d;d=d?d@d[d]d^d_d`d{d|d}d~dxhyhzhAhFbGbHbIbJbKbLbMbQ R S T U V W X Y aebeOgPgcedeeefegeheiejekelemeneQgRgZ 0 1 2 3 4 oepeqereseteuevewexeyezeAeBeCeDeEeFeGeHeIeJeKeLe5 6 7 BhChDhEhNbObPbQbMeNeOePeQeReSeTeFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWhXhYhZh0hUeVeWeXeYeZe0e1e2e3e4e5e6e7e8e9e!e#e$e%e'e(e)e*e+e,e-e.e/e:e;e=e?e@e[e]e1h2h3h4hRbSbTbUbVbWbXbYb8 9 ! # $ % ' ( ) ^e_eSgTg`e{e|e}e~eafbfcfdfefffgfUgVg* + , - . / hfifjfkflfmfnfofpfqfrfsftfufvfwfxfyfzfAfBfCfDfEf: ; = 5h6h7h8hZb0b1b2bFfGfHfIfJfKfLfMf9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^hNfOfPfQfRfSfTfUfVfWfXfYfZf0f1f2f3f4f5f6f7f8f9f!f#f$f%f'f(f)f*f+f,f-f.f/f_h`h{h|h3b4b5b6b7b8b9b!b? @ [ ] ^ _ ` { | :f;fWgXg=f?f@f[f]f^f_f`f{f|f}f~fYgZg} ~ abbbcbdbagbgcgdgegfggghgigjgkglgmgngogpgqgrgsgtgugvgwgxgebfbgb}h~haibi#b$b%b'bygzgAgBgCgDgEgFgcidieifigihiiijikiliminioipiqirisitiuiviwixi
74needs_pydanticv2 = pytest.mark.skipif(not IS_PYDANTIC_V2, reason="requires Pydantic v2") 1abcdef
75needs_pydanticv1 = pytest.mark.skipif(IS_PYDANTIC_V2, reason="requires Pydantic v1") 1abcdef
77needs_py39 = pytest.mark.skipif(sys.version_info < (3, 9), reason="requires python3.9+") 1abcdef
78needs_py310 = pytest.mark.skipif( 1abcdef
79 sys.version_info < (3, 10), reason="requires python3.10+"
80)