From c013324c362027ed3a5fe8e04b6534c452d68193 Mon Sep 17 00:00:00 2001 From: Sam Mirazi Date: Sat, 31 May 2025 23:53:33 -0700 Subject: [PATCH] End of phase 4 --- ...fastapi_route.cpython-312-pytest-8.3.5.pyc | Bin 5521 -> 5995 bytes .../test_fastapi_route.cpython-312.pyc | Bin 4100 -> 4569 bytes ...t_flask_route.cpython-312-pytest-8.3.5.pyc | Bin 4579 -> 4586 bytes tests/test_fastapi_route.py | 9 +++++++-- 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/tests/__pycache__/test_fastapi_route.cpython-312-pytest-8.3.5.pyc b/tests/__pycache__/test_fastapi_route.cpython-312-pytest-8.3.5.pyc index d59111794cb699e712765566e5dc7cc95fb75cf1..7c2c6fff0fcc7eae6043d906bf0ca715d896128a 100644 GIT binary patch delta 1277 zcmZ8gO>7%Q6rR}~d+qo){)th3R3`=E1Zt&mgdq(rtyO3UO=3c2$wF9eW}|pX>@d46 zYUL;?jZ_J7z?wr4w^o&UNI{BPHG&JG>H(=p7-C4Z0U-nuMO<2XASd9>+O9&LcE0`Q z{mtxqZ!6FI8Ta1xcv=w17dwY$|8P~jPvCo%-Zw`P#dF@Qm&#cmC0W0OUP08hf~Z|> z(Rzgc|7A_C@3R4_te|X=IsikeL+h{HN#M5io$n;<=Xd2Fa38-y4&x~Qg|y)a-yx@f zkK5wd#}{qghsdt9cHkoIqq6|3a3PB3&>|@lP1@zvpqh<$JA-aqme(3q%s249r7|kx zvP7lp@>(M|M(0o;8E3+c?GxYx=(Cx!eoi;ZLf)7)?S-PQGJ}PLIck}iUvN<><^nMN z3#_E6(?*V!N=A+r7<(Gjx(y&Igmnt97Xs`|F$cNMsw@W))2gnsez1rd>VhnzUy1h~ zQ7)ahaN^R$g^3T3RwKPN65}t~pA0MDa1qv{k1;}H2tyeR#K%ZynnrJ5khgZhE2^PGCXw~LWZ}=sAPzuSYia4tc+#|m9LZLNG#$q*20#R z6K_N^B7CByQ=&Hh(B2_qt%LiNu2@$yoZ6d*z6XI*D2YDk{zQHk_bKD&rFfiADsLrx zrc}~dFNBy%{1{pWjkm?2t_N?yfBTs=}ba&_=p@^bRp$mNln(uT6GZ1~oFcO07o zqhAee?w{NYrk7v)%@wG%KU*Cd{d%aDK2^<3R}-{4|4z-t_;E+df9$E03*YX=DJQud z>q)t8eB}7j-u3**?7_n?=XK-ga2L`=+M8-L$rK{umn>EPvqu*(_cYypiXzGZ66kTS1|NTfu>cH+~MB$DWAkIDMut zXTU$j(tIYAa81As*_ePKel;|BATDT|fCzwTe`A)ZdCJ6yTR#gEjWNl5p1sW||0mQQ zFM&c#tF8e&kTJ%;Bea4py0?*c8+k1BZzI=FX#X~H@>ICTMerE@%k9Aa2O+)??*0!g C$T&g( delta 940 zcmX|9O-vI(6rSmBOS>)oZ$Tp3CE9}4##;PCB&jAbgD)ZRXV&#`;QGccnP;GAlfRlER#n*i-5xJiZVWJ9z@6NAhY(_xUFD2Xz- zTrRYe>;)^S8I_ds(Gir6i;{#q#6eRfN-_a9S^dNC-S89R%S*4>x4Lz<1Jx5p9B*k1 zowTJ%vbHyg3X>M5feZ;$L{^oN0OeAX0LU~)k$y%{%`vm35$}Kueq80i=gpi!rkyI1 zG~h34+irHY#5xHCaGPX2Q%y4u)M`>O1Cl0k19curFI&oKg1Ve=4`x6&I0_!|^UQVF zr0K*n+ACTeqE(Rxx9Cn@gaww)F3}RDbFoWu49Vq_>5ma}B!T=SU=LZ+Wum@=zZ2lA z-kPuT=9=4AoAVcXa)I7lG@jQBSjU|<2Q@)2T-L(iK6Y8x5cDqgamyN~zje^x79xbf zu69@P;#*t+++vBsR{X-!0sZ)!Wy#?q6$(08M8kOcnks1i JX~i8i{C`Ar?7#p3 diff --git a/tests/__pycache__/test_fastapi_route.cpython-312.pyc b/tests/__pycache__/test_fastapi_route.cpython-312.pyc index 0dc75b355a66bdf02c2472b80e40de563ea33617..f484d075d32a8e74dae8e6f121074e3b04324444 100644 GIT binary patch delta 1096 zcmYjQO>7%Q6rS0g^{&0P*X_C_G!3y++9WMlZDMMagj7u=XjJ-RLS*CvE92QHHnumN z-3FyNG;Je_5C^Q0h(K_tgj7MwA!^m0T2RFS2@Woa_*qad)bH-`nNH?|Y*^Mj{~u^6it6*?;s#v=iTL^o@5TiYr=PqjEk-Nj@Z@R}fW}5e?X+ z{1i`y%%^1$g-||B)n$~APz`j{mdejGz8=D{wFf^-IL6oHU+@6`fQ)q}0DFGN^n9u4 zu-cT(=53Z@=V~4N0hz`Lo>o%W;6)`lLPXY<1Yj5c^LQTA3e-eV1uc>~DN8NHwymu2 z`&wMD%d4$R%)h`r{Enhtkgm(Ct-Kg5paF7<2@LBIDhO&o@nv_x^~qepoAm>wnrkzU z#l>}E^P0tkEjq;^~i%H9Pt?NI%~ncy^ZxfXlERe})k{fiS$>L;Nt=Bf%51 z#KbK}-R=a1GqOn~grZdl6+&^l8|{-tqe0hEVxBS#7bqi0haq z^*H}G7z%qGZFIR4T5a|y?VOhpMejn$C(?@izM??MbzJU(G1-04)xGX^7!9-oEsQYyudsBaD#zT~*94?=vk@RqyD2Pr$Hny*5aYlW)qYnC-rs@Rsr zM3w9S|6G0Pg5-y{Qvysfr|1fn+hoLDufRN@L(HBvQvi3a#D)RU56k@!)ZggI68h8J zwUTLMR*p7~emQt8b2W2q^y=tM>9)G2-Zs{Z@3r+qlRu=__nuidvrDi3rSII>{an*b zPyUqN$WAwN#pV!gR?lwej33k{V&nTJbbPN5PXx)m{@w}w#(Ua=-2LL{?BTJOp@d^+ zCKFpMO(q vOIuT`jaD6cu40d|*WpYIk~_mcHM-?LP>|m;dUb+N;QzuJjy;O=heq;$+l~h$ delta 698 zcmXw0O=uHA7@co-v)#=mn@!V1EeXxm(h!M-n5tOQKq^*BMN&#db7%?Kl_oKb%&tGh z2({*K|ip4YqIIPj47{0^*<=Ryi}vMmH4Kz4;W%9D-}P)W(5hq^W$FOeb}ADp4^0@+ai z5FD?fDpWZG*13kzQ6WIf2oF#mp7UFikC49HpJIxkF}v-3>*^W_vnygEzQ!zR^AU15`ytnY>hjE}I2+s^}t{ zijNl>Kq}6F2u$Ol@75o&6x(~KG8~O==qgmvEINyx>aX~_5EZYGXVSbRW0rv{ZwYiXQDF)e>FKB5o z9fM5?(kFyXc`zN@m~bxhfp~H;o|?>Ab~-Z^o;C3u6OV-x delta 181 zcmaE*{8*XyG%qg~0}v!!wa!?$k++UpMBgUE(9SItodblfLIoha%U~Xa4JW~x;qnI@A)-G`8xToa7cV$;^DNvp}Dz?zk~?@O#MQi diff --git a/tests/test_fastapi_route.py b/tests/test_fastapi_route.py index 40ff1d2..f6e646a 100644 --- a/tests/test_fastapi_route.py +++ b/tests/test_fastapi_route.py @@ -6,6 +6,7 @@ import uvicorn import threading import time from multiprocessing import Process # Using Process for better isolation +import os # Server configuration HOST = "127.0.0.1" @@ -30,12 +31,16 @@ class UvicornServer(threading.Thread): # UvicornServer using Process for cleaner start/stop # This might be more robust for test isolation. -def run_server_process(app_module_str, host, port): +def run_server_process(app_module_str, host, port, project_root_dir): + # Add project root to Python path for the new process + import sys + sys.path.insert(0, project_root_dir) uvicorn.run(app_module_str, host=host, port=port, log_level="warning") async def start_server_fastapi(): + project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), "..")) # Using Process to run Uvicorn. This provides better isolation and cleanup. - proc = Process(target=run_server_process, args=("app_fastapi.app:app", HOST, PORT), daemon=True) + proc = Process(target=run_server_process, args=("app_fastapi.app:app", HOST, PORT, project_root), daemon=True) proc.start() await asyncio.sleep(2.0) # Increased sleep to ensure server is fully up if not proc.is_alive(): -- 2.25.1