From 9c51b5087583439473f9283a80f86472edbe02ff Mon Sep 17 00:00:00 2001 From: Mrkazik99 Date: Sun, 25 Jun 2023 21:26:56 +0200 Subject: [PATCH 1/4] Create tests for parcels object --- .gitignore | 7 + inpost/__pycache__/__init__.cpython-311.pyc | Bin 0 -> 220 bytes inpost/__pycache__/api.cpython-311.pyc | Bin 0 -> 71614 bytes .../__pycache__/__init__.cpython-311.pyc | Bin 0 -> 3637 bytes .../__pycache__/endpoints.cpython-311.pyc | Bin 0 -> 3672 bytes .../__pycache__/exceptions.cpython-311.pyc | Bin 0 -> 5729 bytes .../__pycache__/friends.cpython-311.pyc | Bin 0 -> 4050 bytes .../__pycache__/headers.cpython-311.pyc | Bin 0 -> 229 bytes .../__pycache__/notifications.cpython-311.pyc | Bin 0 -> 2630 bytes .../__pycache__/parcels.cpython-311.pyc | Bin 0 -> 68105 bytes .../__pycache__/statuses.cpython-311.pyc | Bin 0 -> 11966 bytes tests/static_tests.py | 8 + tests/test_data.py | 319 ++++++++++++++++++ tests/test_parcels.py | 239 +++++++++++++ 14 files changed, 573 insertions(+) create mode 100644 inpost/__pycache__/__init__.cpython-311.pyc create mode 100644 inpost/__pycache__/api.cpython-311.pyc create mode 100644 inpost/static/__pycache__/__init__.cpython-311.pyc create mode 100644 inpost/static/__pycache__/endpoints.cpython-311.pyc create mode 100644 inpost/static/__pycache__/exceptions.cpython-311.pyc create mode 100644 inpost/static/__pycache__/friends.cpython-311.pyc create mode 100644 inpost/static/__pycache__/headers.cpython-311.pyc create mode 100644 inpost/static/__pycache__/notifications.cpython-311.pyc create mode 100644 inpost/static/__pycache__/parcels.cpython-311.pyc create mode 100644 inpost/static/__pycache__/statuses.cpython-311.pyc create mode 100644 tests/static_tests.py create mode 100644 tests/test_data.py create mode 100644 tests/test_parcels.py diff --git a/.gitignore b/.gitignore index 5c000e3..232dc67 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,10 @@ /.mypy_cache/ /dist/ /venv/ +/.idea/ +/tests/.pytest_cache +/tests/__pycache__/ +/tests/api_tests.py +/tests/data.json +/tests/data.py +/tests/data_responses.py diff --git a/inpost/__pycache__/__init__.cpython-311.pyc b/inpost/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d81aef5aab92ec94fb6aa7e02cd93f3ae4b76013 GIT binary patch literal 220 zcmZ3^%ge<81lQlRq(}hi#~=<2FhLogg@BCd3@HpLj5!Rsj8Tk?3@J>(44TX@8G#a- zjJMc4^9u5dOZ+sMZZRhoWEL?4g;z3s25J9g?`#zlTAW%`9Fv<^l3E%QP??;OSd<%3 zl%JKFTv8m93D&AxP+5|Zp9kf|#K&jmWtPOp>lIY~;;_lhPbtkwwJYKPng_D6SQbcp TU}j`wyul!T0UIh}1F8T3-mf}4 literal 0 HcmV?d00001 diff --git a/inpost/__pycache__/api.cpython-311.pyc b/inpost/__pycache__/api.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a4e2c208b7c84d8d9dc87178c24b1eee2fcc1e48 GIT binary patch literal 71614 zcmeIb33OZ6nI;GjAPJHn0fPG`ff7j(5=l|JMakNz#ac|!BDGPnNr(@WAQ2?}0Lm5u zjh)0*p*)@n?PIr@lvBl2$BA54ol?@ZsJfFrsyS74luTyoLH+6&jT-i7rpHs2>8T#3 zojQ}FGpA?1|K7I)(C);}G5C1jcK3Jh{rCTVue7w-hTnfbIw!pUf7xvRk#5wVQ@Qx0 z#cs2`YZGjOecU!g=e%)yByT9sPS=icN5nbgjN}jHvwP=wL8Ne~kX`4GyCOwHMUmp6 z;z-F*NyI(mj+73SM#_fDBAy{n#5?4Tln<3hd_%rS#ZX10a;P#=HB=R;9;%Mi4An$x zhiW5rLv@k*q54R}P(!3~s4>zs)D&4Vv?Q{0XlcYh8+9E54Rz%u|+9QFXKxF06%E+prRgsRNj!5TFXQXSWE3$fMb)T$>mwV6HbgcKZH#Oh+7x+e=&8u&q0Nz=p`OT=p)Gb>o^78^D0s~#6n;0) zX8RET{5P~!un*V*uAk9uU%;Mr9tuZefxL8C?|3*g5jzr!PEAfkL+Mg}KM;yW!;=$; z=o*NLhsC2u4h7bw>v|_6Q$aBnL5e*uPlZNfAz>gEj7>+=?%kpB@WqgLY4FliC|$5u zM6N>G_iPyXOq}fxior;9k0?%x>C(PQ+>VCE`E6C-WNhbj>>RQTj|P#U7Av-Qa(Y6! zE#OJg<^0?m6j6XU5RQk^UjFFNXLN%kc_EgNZ8rGpGPbVPEDPUPEMpfXU4-9hNG;h!_(q;x@2^6d>kK< z-Bgb1-*$L%Dm1~KRvVuhk|OrRSXhh_Kb=le8OQ?5S37@JfQ2cF*YWm z=zbQtczp8gEA?1g<+=vfmCAK3 zuB$@T=WEnVg*xO{A1V*ISWXS0YQ!uF)zV$4j)nCUjui-vs3G1P(iRHzS2va~P`aj2 zV+j9sYSuQEBX9c>)U_$(%KC0;XbIje$@G2u?vLdi0v=32?J=k+K0TJEumWFYqe_M$Q!C1a|vxo(=5?;%sU7?ld zSE;oT3h>2NV;u5!b%#2Xt2Nry+EBT$F0@k6d#cmYuVun|l;5R{oed~!wXiYNEo=&{ z39V&c_o+~aGIBPD)(JhK^}?1=CygMb1!clkq}qU14+`6~xaf6ZJN~^wVW@=L@BC3eVvAHay>t8XwR`)Isfv^4qGk^AO^0 z7oOGHMrn8}^_2Xc#+gg#L!EXQ;#*@;dLHvIV(w%yjrA+WIOxZlT|yynj-%;<{S#A@ z(O5jxe+d9W_qw zT!{K(lm19>B6v3BM+|>>0x$}&($679bW}rnFfjA+@4){jzhEe0459i<*kgv6W^_sP z#3-fmOW41QbRTMIFWX~Sp46Z9tzf^v@)au+_IVXWRU@;rd5Miy#7gwnLSDlDyFgmM zyle#z9K$dcItJYCOkk^}F*v_4-G_l8jT%4rgNku4``o|{4NHFF{g~Cz)#AM7bgwKX!T3$b+uNQB~nXtznukyD? z&rME`3;r`9|7M;(8tA)g?*h`EKOVXm8jp8`C&Dz12t~v^p-JeUJaZl>pZ}$B?3}qu zfy#7o7|1#>po!5?+5vnk?LY(5j`7e$x-cANRTQgHv$WgTUul<$1g47#CFMw1x|nb> zel5~uN;?U0N*4m{JB#U>E;<{E9l|y6-lE~*(eYq3Iy{_q4G&KQBOzQlhY=HbBNjC# zoxgj}uA}?X&hW(8BnTJeHa;fqLB>&4(Oa>i;!}6Iye>Xnz}^AQeO=Z$31)@>QW!_wdm4NK+{$%YQOp=0LI$KHzBLrHJ5>}{TZ?zXp0^0r;w`q8TGw^waXuG%TD z+KC4XzGc#K;btQOek6S%*%y-Bp*zi;Gfvr6muhLBalTQSYFmkuM>#Dl@Ba4o?`+4D zqJ_!^xw7?Y<+UYpV29N99FCh?`8ip6M6NtSk?y$MZxnsxs=w{3f4}BCO_HlV=~^wj zR!gqcDSGwwve(O`n!%gn2yi4_M`hPhNj*M6du^lIf`=Pg$k;;Kjf;0_QsT^i=e2lP z7_dm4*Opb>=Y5MNp`$Ne)@~d#Pv5l%0uJ#IauA=TfIj30cJT;KQOeIR4j`oOLeRqW zUHF5O6tfw@tG1M{`t2^+7mz&9;N!H8L%NQ zwJ%m%@-mJBEjz)*ax1c86?U5ugGrQJD>lRVuh@kWrOsXWj(UynRf;=HDH?%lL;W*L zDWXyGV7ZrO$=!foWy?KK7A(OaI;L&F_%cFnmZ24bALs$Sp5_Pz&|xD0wW1UHLQo1tY)93 zWUM(#^_5Ed@x+px#Tig|mijxT>R7LO{Db0j$RE~P?pN?Atgf+Oc*3u;)i`y+7dL-s zJR0)v4Io{5<>w?(OLmQ7#Ll`-vb&S$8V07RP6FnFc@jr=C%UG(o1jCO$ zCitCrNKDlzufh86HGU(H)X!OaY$RH$Whyn>r@Zh|P&|uX4C-I;Ur{N^q@MNsZRZVE*6{0oN6L*j^W6b!bU6UYLDD~4%vl&e5qA3bB-|&T$>Cp!~ z^Bkaz7)FqG5-U9XCh&xx-NJo5-;aqGiu*?y8 z8_DA(9eU5jeH8Z`YD6vM11(URF4o(hE|{Le=nskes4DxZDuqgm(*-<1y41wQ7W*ht zz7RSyeKwsRBH4-Pr^G~^i_HiEZiWYn0zC*(Fh;>y3bYoBgs6)b5TpzEFiyLao&k+T zLp18fOF|aaA43|&X*`XWDd?h7)iZb&EdVylk;TP6yUp!gwB;3@w$JY4=ags3{0hkf zWIV7??U$N|lGUf=>Qj>U)SWv2+|t>#vum%OopIeM@euvA!=7?ie*N(4hv$Z`3fCs3 z#%)RWcGAB<53ukai$Jn@XQ4x{M$IR|KWxh8qq{=I2E8eP@#b3%>`F7E}p0_;n8zp}? zKa$=xvUiQ-U6ZP5m@UZ`S@IveehdLWlHNnI_mJd0v{1d`YD}tLpR8UlSFe}6>yeg< z(F&3L&rrH&_>uJPm%aNX@BW4Aki_!LB1e*DSc=W$?QMhyFg1 zM+6D~;f>SuM#Jv$Cg1c%t3x7B$K>ZVOkT~A&O#=KDGwxSVelZbAL%7N1P6&D1ZQ*( ziob{PD0)Wtlo&B_QV67VY3t{J#+aFoVm){XD>Rn38023UiBZX9XJ@CmT+%-#PDU7_ zcP1DOb!A{}9AwgZzapwKN$HuNqg+O!x`Qw+CXMT0>m+Bsbf9RJ5o5(5ba<@Qy+?&! zyqRh%SuKHRUW9~EVAzBq1&3lhf%ce@^Z`3NiF?uUeCc}zSMgfCTfx7&#QI>E`Y@1h ziON<%@i`<4IMR;M@hDr*h&weErGbVuOQCV8hAfY`O5NT_=^TPnNBh%hu00F!AON$Tcfw9B;T&bxm{Qa@{Iiml?0`xJuq|eZBPcQkpof zHL`1sxsUQyZIi zEBlSy*a+8BhyC+%c{i&A>7J>1)uE@2Jhx&R*(<_5qT>=mcb_klt_8Hn4W zk81{K#kKV8B7zU{I8aaETH$Q+0nRF+$*|*fSy5*6CD5U8-W)g10$UUY)9}P5GA2 z@0MFONX?t1@~2X@O^Y5|^|GJaT-C+DpkUGF^5za^oQsvH#v5On8@=smmR!wjuCQrt z64ekBjZK(iSj-=O!k7g%F>R=V;ez}=)BpsSN(RP&Rd@r@4%I{XS>FnI7uZycl4!?J zf*Rk-+=*7kG@%J5xr2#zoZoU>%eS&HFd1EHF7t-^sn4>4E!(_dQX66x3a%K9G36%| z8AUC|X%8@3ER?+G5Q?t3Gp2s2HuduWR5g*1P^K_jjwkZwHQ|t27M;I~{|~hXSVZ)k z&;t+>X?>D#2p$6%H;RuOg4gs$6Cs&;N)sDt#ord6u7QI%?mFH)ikrIp47TBH>t?p5Asoxe9-xN|}fC&L1Wzt<2Y zU5K(sc`9AVKE&Yx@wf1}kFCpTw?cRg5;GxPL^LM5jQg}2YCSv{s4%SJJCKRElY(6o z^ir^!f~6D?1;=m~zQ(Vh+hr8cLN88Iu$KbDi8yxjGOiT%K7U1EAnleE(z;MnKljv|m*2iT z^UTL3Wiu~ddHRi~=XTyMX_88s=1+Xoy5V-~hGgp|xpfmBEclj4ZNs3F+J=?GHac!zjIJpvf6UY98NX1%HGs}u5)r*VClt}n<-de}9x+D`@>-;tz@) z8o{36xaKsMKp5w|CdE)oqO$;OF-9x`{M?P-GROfj~A`=?2BmJx5z9p#I<0q$5)Xl2IhD}|py24!V4@#gLU z29z4H)lXqHs))3blTs0tSEK@htU9ng{v)AIs*%E>1P|Ol5ek8V)PRDTJ{ynIz75R@CQ6=gsmmk9!CJPx5) zfk00QB_K_7$mGJE29Y3}whe3Wm)&WkmkADN&;jFA`w4C<)FH)4p%ieSEchC_9%@j~ zgpXpyhg64g+LT2O+DV`zxFpB0&M`5UF2}_B%9Db7Lc&#$0m#k}{~ilI7R#ObI-*z- zJcfMf^Sh3hsB&ra-Q5OST&)0ES+VcJf+ePQba+Bvz|#fD0;vc4*hm7B4Bms=JLT*mFdt^6phZcM*uD&AqwkLhtWgnNusGOns z_CGDYS$Qi)qL}fiMF(RAJ1?3393UWbUWWdG!%Vu`V?xxfdoC(q9r$#^S zp4BQgcPQx&$nJpT4%}-sBi0PVwEvsW>1vjN>*lL#mbeA0Oaa=*e)HPur9Po^?$k{C zMvIzVlP6OuLTi+1ZKM9p_zA9zwT&1p#qqx%AkA%NilhqiIii6H!nhQp<52!!>lOqX zicQTu@LRSvnie>gi;|GkXjz6ZEy$v&p>Qjn)MA$|)s^vp_KEMHTf~1s0Wm82(r*1V z5T`hdrASYga8Lck-at|ArGTb27ZT^QR*7u(pTJXtW}--vGEF5>&v_3m0Dpsb$^uZP z;YhQuBwZ_H*9ytC0*ZuE8r=Vs=%5EnME-e=4K9@OKAE*cm((DY%f8O@ z5{0r%9mB-^M$$oyBuBJ9kw0%36?*$KAc$7qiO$$^J>J8oH@51U$1IQ`O;OWGv5v{d zsdek8S8G$9t)u(EBlq))Pp`%gG*7$_Fi*;J&68NbSo_R*6z~Nrfky0Av{{M4H4d8^ zwvcneM^iCSmwVL=M<-_#iHjK=^!WQ(E`&=cZ`70;tBN3n_Et0YftUrt7KmJ|B^cm~ zn!8ciRpjQ~0<y(bwb!8s2j4#3zMR zeeOAdY6Eyb(Kl9=H771iOujUs_AwuZA+o$TFhb+4;Mc~8iHPq7?+DyN%QBXsQ)@FaIxU8;QfJN0t;^4sOh zC3YCNg1fJON%HT;k@W77y?Z3@o`ve>S;wp+RqlVM{_Ul2EuF>ReG)981PkR2S{e6= zuM}WZ72J1YmE_-t!@#9%l{$~!DnUR;^|562F}eDfo871feA zFy}#lBUN5SDklhQ8y{ZJL}M-_OPVxVLux#FV><$VB;Chk_c6(REahuTRjqhuNUmCO zyK05Rj@0_iQp5TA%G``v@NIu|@z(CY-T#yQKR)==gVNsP)?-AFN5azf^U3Y!OXnA|75cNl-z$xI*@S)=VT!wZJ$VPpOCjt zNR<-{RZF#|uu`V(S4u)Ua_plcr*0oPl|1sieB^oQP{uKKULKp2wofIuPs!V-q{^vO z6{!Thz5m_AZylCe_TFeffFoJCPp;f2Rqk7;4@hf{-D*HUNB!|+{c*YexKw#OyZR_& zcEO-DJbGbzio5wpm#WJivu+dr5VLZWrl$JSD7<1&cwe)9E$?fNuQ@rTcg2W5V}54- zth#n~8`2nPJW~$Yc^(!WR!9*woE1{PY_e6m1;^D|qtjica&ysmWObccx&fQNT<{$4IYt_~t zjvs2dLa|G0t5B}X;V-+c>{3>$f=d|SKjIF#!eoo})oN*$*%Ix_i@}bS!sppWe@I)s{ zXKYAal`ZvX9^)32m}%m#;;A~0?6v{ha@!i4@mbXQQr^psleU-acH2pt9e)BWE(6uU zt6+qw)D=0$2wn_^$AhrDQLsvGAxIQPRux^wQk|UQ#%eIO8ViqeQ?YZQh=Df?jEH4UF&*ttj zyvbEJ43h^VY*`~!LY9Ayk>@#iYkI|K+~+M7S4zoFRgB~^T%0)jl^w-LlkkVc*AMuIfn-m3{& z3{m_7OnosYnN2FQq4UR!RLa#Kcd1!HEtJjwsL4+RuuB`!o1cszc*m~F5}t2|nmC@Q zKj^My$24tb*_aL^ujE~{{c%ge4le>&!QTil=Ztv_74Cz^PX%&j&4tZNURQUzP@zFt z1VvTmRYsxSE!uh(mX|M2iQD3>iWpcYP@`R2$0uPn8{O8WMf>-tYIFw*_$8-WrG^NO ztA#&G+}iiI2Y+%xvqIjIkV$?qC@_I>kLKI>{wWpLiPCLZA2hIEg=?;2Hu`cZmNAPad!% z{ukn6z76_-SdTkwXgcX(z2-rjGif$LXk#siO|*9kpn4Hu_j_r*`Q=P2lQ^ z>s|87opQ~tzZPyio!om;-g{E2p<^-MR@HciT`CU>)ufqyMSK&o_*7@FdDkS*+L7*B}QFFsHP5uwP8CuAB# zcZ;`D2a<<{ZSl5yPAV7!uv0c|sN&a0plHOj~+bel{7plP=J96_B0y?S(lGOup^?>9Z zxKr2k`;FghOjXp*H(l?&A>7(69X}<7BT%uaZ~M6|ubxzF>Pfq%@?L?z=%Rhm_MqXN z(sEJ-P>i!Y%?AG8iCgP`x<&Gzz>)Nxl)Wb<@5zPgmDgLO>P^Y&O>*@n$-C)}u08bh z)e@=kX?`T#+hq4P$-NCKJ-;9RX80Qy-n$^x1}w+b&2r6#nP={Jsw7YILPgWu*!$zj zigj|uIv5<3x22Y}%$=CsdxwD=4yUd^g>$kYA~!^4U3Z`{=~+SP#{Z}{S zQii2&`KrZyJpMT?e!rk#*0t!itppEq`knQ2t~a;6y=``zHn-_wJccm2ep+5Xy|~k! z{e%3ReW+hN@aKB)4}0&Jn2-04z~4q`@%Zb~-M;;69Y0=Mynk!qkGIL$!Mq$4#xs&ck6o5{2R{{FS_@KjFx(hn2x& z(P|Pf z-E#hI(NBtgT=LTrY1e@DIQoLTa~P45RU>lM$YP`zG?3}>96cc7+HGHegU#5cx zqm6rZF_Ti3ot0&Oh_Wme=@4ldfEqw#rn#V3`+!FU5b_#yuJ z4}u1}29BK*=tU8xf9P4~tKL|t8VhJcah6&d#es$v8B&!boVr0`Hc<=eY7p-kQo4oG zm_Zx{Wk5Uf(p13`jxXmW91{h2MvDRa31u*lbU_6Ubul^G&|65Vfm*8suOcAqHLB3% z=N z@hca%pUXEe<9jlct`slI;4Ds_VNL^y&%pToI@o6jiN0*8-1Ho!scXtTx%ZDFSI`Sk z^tsIL0#$p`2jZ3UF4vo?Fvb;AQM^@md+CAJJG@>iZYG)MN_d-u3qSHxpw@`cFC>5~ zy%0&9;6g1U=K-cE$TC)xs`iFM>ha7p{2xw0rlr&e zMpF^88X(VRRIiL8pR`_^Y1zJ1ecSkw-Gvd*D%J^RVox^bCBoW9B)(hv>~-a172+PD9g>0mne~Q#01lo96;l% zq+Mr2lZ&~)3e&XP250aksgn9RK`QCij`{Q2CBHCW(y*^NEV~a& z?!ybd7OCTyU{KAmY-lThb1;-jnp7mi?!t zdh0QBaOPmDw1&AFN!7Q^9E2A~m>DhjmP#x3OTGh1-vQZoKyn{2cn^90W{JGxlvMLP zj-=}a+4X|tdO=e%gcGZE3*H7!sNAV&cmXWoc|S56odFj;Wv5aB{e=%jR-KH~1$1 zRkW6{pXMyQ-MZwk$Btlct8l zR!-HaWG-DBhKu&Is0yy20YC0MTL&8|x~WG{F+A0Ul(8y+DpBS*+=K`b2Ag3x@P*dD z$<^`QTE*Xb#;3LN(1*a-+L`Y*R9N!Aegmy-k2C zD^#pysj>{&!9Gy5DUAPgnfmd$imnbK<4aj$3yd_DNYF0eHR##ogqLlI$>62<_jL7V z6fjuH2u5rYpp8^z2#Um0W)$NGd{ZWoLDK&~PZ>BRyqN|tm*((x8Ud=3PkgB&&|z)K z5`nzFM2`TCRN(6}1AIMpW2M}KUA&IrNV<;8uH%yH_+!D>&INCqLN+Z8$V+#~OP@_G zTO%*q_-PSLLpRRL+fGQ0LpYM|Q?mP%Pc*s=yFIt)-E_`~@JnKOl)~ zUB_Vw;~lDQf*9qT6_C_v9S&e(N&{taf+I$_p~WSn$rPCtVDi{b4<;%q* z%f953C*2$?w2=ix*Nld0(P=2V*a6Y-g9z3wyDflim5=W<)w+dSDWr37%zmL8d_@-jO+U|fXQVMhZkij<^JOEV$f(VwME&P zgxSU62?)EdS?$;iJ4n0?WeBkc?bBFsYAJM1IN>h`efgo*pAh?NtrM3Zokj^hM7q2L zgw{dXeKKA|vjZLHwvn5;r8FmOJ>={I0+U$^VE9#s7(NU7-MSLQ*(R znbmKLAEr5sFeE7=wmGJ26}@1hPA27K99+h{{g4Wv_0Ayb{5!f`px|Q!*eHoHZW&&p zWi85h70pM$Mg=E23za%*o4G0XHwmSf!g{Nq6kRrV1B?rb&f4eV{A>{GS)_m=$v2kt zjmf?-$vyV)q-IIIRMK{}M_ToCYU%Rdf90F6z+1|(p}AL*OHav5Pf2ywW9Gn}k}9^V zz&(Y5_43XPVW7X|BY*F0fA6ihB#cY`-lRVw`y*0)#!(WP*+PB{SEQ=yKB`)IyK3e2 z3sTj}WYsRYYM11(9_XRc71$i=qq>c^>o(q8CDmAlrf!sfISGvJG7| z6Jr{qCW2E#X9z`ok}Tou&hTOyfVbK7t&0neTSSu8pk01_Z?^EnMeO&1EmOvTb*mJBK9Mu9fKP*FG*(h!S!s1; z+}!9ib9_HG&GtT3sYy=r>V8wRJ3Y-pXU1#EpQx2RM|?S~P>gFuYe}E@GlYYCv0)Wc zXnqcNT(5+d9>()Z7xW%FJOKYp|9~e*t4WcJ?upao%zLSkofWTD8C~T5)%fN=({l86 z)ko!Bx68Z!Zu<#&`>-^AQ7Z3BmcJyIza*7d4_eR~+00&dyK3Ey zxKy<+S#?0J!cOtl1Jkv%k@jJX8MgF5<+R@y(s!FK()k=n-~S$~&XEvd`JZk1yU6PJ zg#0Xbw2@p|5I*;ch|OrpCrJiZC$&=Q!zA`<^S=DbK7IA-DI_;@bH zB`jX2EN+>vY#=^!$;bPzACT8WIR2RK;tcZf{a1(NP6)^Mf|WU&pYZHYz96y2aAI@Nb zO{_s3m!ghMIn#kP1cy;22?y9hjx0HNW93@oY=Ya06@JAIGfhovOOFXnu~MPTWJ%$H z*=8Yh!aUc!-vzGvp@y#lv(%j8Uxu?NgL*)@VkvRv0s7cy?c+oN+#1UySpu2pqF6U8IreLTP1r) zjZfKHnzZX*3c|lJ>{Rd&T^&)JPxT(zvvY7yhaWCgcU!-%mR?mMWUAbU)m)=`wRq78 z$vT#uXyciwX;@m|qfWvpvav~|cc`Z&;)JKk&@fb76RWPEn7=31ogy~P%s#vsyMyt; zIMG9C^s+uBzfGCkM?Q73*|u=ImJYKS%Dv1_K0RBSN3{vQOSY&+55-gLdstAczIa2n zUQl)pk9R0+xGZsa7cthGVg^Ab1$YYb9R8U?Vn6T!@#g>>=`t}y3&O<^cNlut-XZ=N z&$)}Ja++5djpRg`uZV*ISMEKU!<3MqvUq`lDFk=R&yvlBk_Bt!r)9y6CKj_w4r`uj zKuwcIF(bVdFFx>8Jc&uqsO&68&K(NciH0lgSa`n}{Xc02&H`bg?I_@vWZ(=I7aceE zyc3$AzCQRTC#CA`$?ENL^>*zYV^_hpgK7{Blo?n8jA6-aGZ@#Bn3(DOi@|YNc#(fB zk&ra*n7NCtG))?AVxc&pp${tl7YaV1fMlHFKU46B2)OGj7>99f8p0k%)Va>NoAkBK zjn-HU8E=+T)Bh8wLDevNn}NrmZ#(h`{7kP@(m3BPE!%iwv$Un(z&AB+sRZkZ6O!*_ z(sxq!os`@s?=-c&H+-X3@?k5wT{DGuN+_3$OtXJ{&jp^Rv|OOwzqycJG(i@o|Rjhh`lC%kDO|#W&NPt*9q? zFI+B{GZTm+GJ!y_Xe%NUh#Udi+FNtEY}T1wopg80?rzE5t(k9++h>J$!*7M(yzuq~ z$=jTH+);-kjlIDW9}PZ#d+_<>;IKS6EcIm^!La=7dBjXsU689T+|zv9GGQs!0i~qgC3&y4g zYkRG2YHJ`-n$jY%Opt z((X65mIJXG7M*vC@$Fz=pddFa(;!&7fcIlu@7Nq2v^S95bp_-3GV{9S7zKv4o2~c1 zjb|oKZwXaWRc7=l@W}8iOiS-SB9+43^*y{x3bsR3+3RIe&CaB2m+aalxpo;>vyKJt zQblP6>sTpU#|mj3L$GKoq;)JufOX8QrgC-gk5B&L$q!ClJ0-1n%5vOjm)m;HYu&b_ zd%NtWZSpMp(_y2q&^U&(c!{~m)$9kO;dlrzoiK}Z0k#hjfZ@0lx0GVKOiRRIu8HsA zK^L;ci}nxxO?XWA-y7`Vbl6iUX7?p={LC8x+Mbf2OBbilTV|f|5>56L0h!WJTKkDU`9Egcr$E zsPs7)6M6)mC!b^*!-L=IkytKjoB=i=^_M&cb$V)fs1NjrEEn}LZGO#mNXe*+*6VC~ zYx${?7zJrLZwz6cLk|GPMpy7U_^Q zKvl3)K2#Yp`J#91?IYmZhFQn4`^*PlS-w$ zixg@}+hE)D^lJpCmmw1cPWLI1eFnVg=8rCp=bq8OSOy=3wXMUaHSY?4WQmSA@Ft==An?10jzJ>d|FXnTzJ@&Q%d z_kgPK*km9=luZxCO(r5jgXrip?I)DwsHro%JmH@3xJt{Gluk2TNdg|Pg-EHF))_Dx zjkq_1MKn$Cp(MfwLXV%H2}VZX(Bl&Kx36zaFcr*jU8ttK7Z5W$9|0Uz9%S;InSX!q z7te&KvZ%BHSa4vMkyj?rR7Z1Ay{fsfhAr^;aW>Oc1;Evw4C(_Q|!@Ktc^3!GN7w%(11+j*f_gVyCh>DZohDXz- zQ^8BLFYdF@rqfx!fvK6xn)DieE?NE<_L#8jM^jXH_o$Dv<_J{nCcYPZ}6JDI<7-V9{1a@FYh7c;Yw16Wtxi{u>^t zaX*fv8wP9S!vu9|mRKLr?yypp4+WjE#o{r{>|% zVe)W@&&hu|*l3wv2Q_LBQsIKk)mbZxJRCZvjUEo~S5~1_=4+CxyRwxf?lr-t0<|^9 zGtB6+ZoCXAsxjP*@e_H*Etz%d7Tya>zKbvSA^!OfY&WOo_b?xR4;}D(=sHok-Hu*@r7fNBC^BTDr;lvBHn1m2f z5PoRX!hxPq=1VC%C#SIQ5Tn9%a*<&G)_hH1TcMgWkOTl4RWPQ4rU%?-H@CI`uO0d8 z1MXlb01vQ7s-@P($ODMn&!u#^^Z~fnuO5F_SC=KD2Q*HhGSn6`dYX$VP0C}se=ofZ zg~-;cXn6I7@d^n$Gdd)j$Xj*Kr~2W`KzT{n&c}r6JrQ^J@g|9>H?3~Ys}$TfZOX~tB}A4)mVf))0Ox3D;HVf9bw>VKf%rw9hYqF@-+@6i*Iea35bACZdx zKHkvgcun?NH^(a>eGQ{?6{H_qkUhrf$6^Q~5-s_Bxc#WEuz%!##=s!@M6|p3?t<{kqEtz~b6GB`>KNS$AE5=b9OjfueTz*`tHihM` zF-1&I{|U==l*AnhZo2W|annHOXV!mT!2|m5OZiv-Xy}K-5X@pnlICvgNYY$}9Z8yj zG3Pbp4#=+`M8IXWSv~vhgy=iz+a*H=?%oBDe{xByRMNTNYm}NcCViV^-zLeu$>8zt z;MEIq*M6zyAdaN#knB1nxeghTdzdaab14uCU9nbf+nH+ZmRongb43GoEuz3>Yidm` z>wdD_BOTixxPC$2_?*-@fFtQ1l-+}pd+^h6{`VT@OeUgFOs32qTvLDH{13{j3aa?T zod0o2c5o#+9U5{L1A|FTW|4&*qk}&Nu#^RvV?q5Ksktu##N+8XS(z;+>mfzfY&1D~ z(!z1J54=EreA^@8D6=yPPRGs-$6#nRq3aonA7Ox6AR`A-^;Ag?Q;hW_*pi{0f45O- z5rb#e=z9Yt22CXf4;XV^S65=-rITvHUMnK&m)|W5L_>gq$~2=Hh4^ztJOa!G`LzRfD!q zgGKmlvT!82{;T-^({hu#h3EhXt=d?$;q~&iT^hSea6xywxR1EaD{3`2KQf~6q}}uRVcnh zVYw;EkZO+NNV<;6u49tx*uyJF{`%~a9%z-)_-*KCB2?Ha zWpFEFwAlGvqE=SNU)kM$ec_rD-yR=dSDG|B{L~q!x@%6M3~psS!8b@+_*rznnQgJ< zOSfuKnaz);ZgS7<(e;IzF%9pPbk7$qI3bbi(0fd`JJ}2M070>6?LS8wODI-Cw7J6= zz064U$a2U#7{}Q_QM`%kloALqu`l_D29Ww+DdlfbKvod(78W1CH%AK2Tq2ZtZ@}{) z$o2-xT1U43jBa&K&VQs^;?IcxJAx$nM&!C_o22{moolpd}t2e?2&t)mm0C}z;Mz%BD+T<_sFN?L(||G!3YvH zB!31^ADlB`7D(B#?X$j3fyLXJ5m;k<@L!gV(u`unEMAizM#V+Zt;fJLZP=wNi)PoY zUyoL(70hMoTawZ8ht|i3xT!)b#+K=dDjA{`3YhR`RAAB|ID*bIdix)HVHTIRTBx|d&`2XT1 zboH5XA>)x}V`r?UT=gZjnQng@fk{`NO2D2pG!EkB%EGBX`Yx@K{~2kNRkHdC*+{8m z0PK#IYCKxS=*YtqEnK8%fnd?*B1MZFL58xv!P-hUI(jq(i|j0me~sz$*>*7i!+N7C z2tFSFWwjJ?K~1kHL%6Q5XS7`kfnoO3Y=sUzfLVR!dY1RF_C?rl*&d~B6D#x`j*W6{m9pSJ7}h^#Ff<0$^9k%8M|?%g!jO&6@dS4ZHY;dDo9@2#QFVBG3~Jkk zmHLbASWMfo#64Kalnv6@H_p1ome3lj3bg!1(t0nj9R8#ZspZw;@Z=8A$4hq{X$ILUDiR_qt)-~(8qkba#9?zYWhDPP* z1Y9SpLUL8;-j=RL3|Yg++duP8avl_d{Vs4^Qrlu1g53|2(f%=+knEL5f@F?|hGb5` zop4^nhR=ySKs4t>JA-JYueso)r%Y!kSs@yWiHV$0m)FfaRb;G@`$5h$*uU>$-iE-yL_fREQ+1tHns zpBvb5G@!u0<>L}Rj-Gmd@AZo}g}(|*E&a)sez~Pzd9!?+0YGsB3jchxu+-SX6;X*F zCx`#2;Ks&VEk6xN?SskoLAiZUd9xzQS_suIY9mb1*cTlp4ad(%gUhMGDoWEBlGt%; z>|4jK7u<;b@RHQDKiRZjZi3dm@{WJejcBdOce0M3*hS_!nGh2NGoiVm`W8{fzUJaD z^VL5Pp7KrPpAAo0opg1}u5QWI{TO&ks$#`L1^i~LpWluEha%?Zo;x0rh|Ve7?@qec z$nG_gdrhjkKDWP)nVl(5!`zFK$BzRDOk?w+BfqM8cIWI)+_gmP+FX)`N2K6+dH4dJ zB$toN%g0mN2*t&yAcbC(M@5Xx?_rW&*f_=&^c`we^Xh{A!C-wmMn1S}t2HxmNQr!1&I42qkrr zGNH+eq8N{v1n?{PnxADBrqOyKVe#fCF{2`_*7^M*cAYm-I4U#r1HXRJw&_webBHHAMzpyD6mpZ^AI6aUrJ^Cs&M zb6iW$TlU_)oOjQjC*MrUk9wZ$Hp$-Nk^269V~etT7#A}8{-OK*GORoVpN;|x6^inn zKjDnR>WH^sqSo|vl&8iTX7;%yU)6qODe}!r6in0`b3E@=`z=vm%C*Y;b%2Z;8UC78 zi<+9wi3010jJ4|T6Zu*EJXQyLK+)|Kz^pQ|B_4=#MOGnjM@Y6Iz{1C-Mdol_;dgO( zrsJ>-_vR_Gq1q&~)Np(?E1rjc${^6RWXN7=>9`4q$#DU2H#nD|Ww?hLD3BG)1T$he z7la$2po)gW5QW9U{bYpRL*blpMl1#LoN^X~;+`PMU}olV>kx&rD1<;qj2nC<{$_CR zjzWH->~Jv^8YKt(up}^ie)9VGgyq?)UG6c1(MBJQ>G9CSS@^dIy*wHUVS23X#@>?{ zO`~uZsP}u^7ZjKpn_>1?=%AmGDZ*V3%QH4P$vlVl`0rNw+b7|<$DA+MQY}WF%J751 zZW%Tb2*+S^F*(sowh6z5?6?5E9P!XW#-jfvUIOWUjp8sogt%tulAT8f4-fC`?cLKq zn65suXYlBezTy3S$Mz5I9Nd4nZI{7DpIF*gVbqN($yimIwV)eL*vdLmz2%Ku55l|^Q`## zwwZ0ru3-Pw7^nk&Bz*^D9~tD{De)}Yx{3k|p1Qe~_Z>-3i|lEkodB8_YU=0Kzj^8H zOS8^9u-a|>CiVtsO4Tf1s9c5p1mH3+Ro!;gDOGi*8vTnNTYcNlZLWG4Mj(I;t1@>m zvwN|U3`xE;H+tLCEP0w!-paR&-u1lYk^JkD-t{s^@w+!jHDhywx!H%{CjMySE$81B z{iNu}B|j~Zb`4mM(IHPXwi=Gs&hia?=@b zP^+pJ-L~qQ*_YowCADn5UA0xJ+L~$!NDb%b*37N>ql@zDJ<_q`(ug3Bgr(KzldI3m ztItc7=TTf$-P`*=s%*Vo**YIgR<_HP?NViX4(}k&X>7M{at5ODWUpbce=YB8j?XfY zk+8p7c_r^v-xUW;j>%3-`N1^XvgONH>_$@Kio>XMXhxKP#u|{LD;5Icb;$o-#SY&O z=-5MZ#eLanEI;8ix)V2-9|iAtz;?wUE{l{Wyo;#-hh#~Zm=zQ6vUbQHEJ2= zK-|6NHo{+HDYoxHj|IwuXMlyCL($}yLUm3?{&IC~i;{h323)rMy?R-PcmPJDUISeXW8 zheCmge1Is#5V72ISSiOV*#IXQgb{Om2Qydv7ZkjRppV%Q?=|siF*|MR@c+pU1n<~Y zz(N9Q(8@M_S-XMvBRLAYA~bb)i@&j@@Wz6)=vNK?5aH!C#wb5tGiY zMVXA)pjMjUDSY>|lf-0cC%$5g6A?r(Fd_neX_@^s^%f^>XpE%oW8CnXbSM1&kr9;~ zC^Zcc&FOMd+yNH(^BWog$yUz zAD2|kj=$fVENPcZ+R1LYbD?3$Tq4=fAvbi)9Ae4A9RH}g?RIrrvbtTaZkN2)V`k?< zMbljH{mNuTn_SUG_%-N;#@XpR9_+K|C>^yg)HLvc&%+zdH}?Oq1J}vMDH&nSi*n72 zv(8!P#}tpgIX~2R!DM4lZVV=C&d4=qK%J->b`7eWATSRhK>)|6A}3grbgz}&YbEzu ztKlDGKI41SPs4XFGJIEElni(XzHjDFu&}g$6qbr-Pgg+eDx48M4FEozwhG7huTx4=?bu6BRk(|WV~l!!$r^u&|!dWM#Ez7hy9{n zSy|}}b8XZrW;0-}E{FlLVXnINAz`js-JbyFiq-*hUBKWwIt5YwBVewNgriQg!X6Dr zg=f>Oc&a5g4LjAJb5z%iQr;IW&01A+9*=^S@@&6AOGR-~?C~EZya(Qlzz)o@jh%{E zJ|ds9lJ)n!kw&qXVDoMY_8{o{6wybqpGqOLQG5^eJ zL=~&&3*K9zv2hQ4lWWL!Hp>i-qAO zi_C)*5uz1<-iQChXPTafiB2{Clm47TV^twilY;g$jY`_Q+3dYnPx!!kkXEJ;N+e}X zFon22m!9RXmM8RxdW&AFHGweRjvl{7Qpcrl@QI5LtHpt~;vZu^sZPukt@@+jyhL>Z zSUiORu@~Eb8=~Q9uAO?IiXl zhp^2`Bi%SH41i8FiXKp6ue8pFa^vB-S_CKi~>^g5oza5k;p2M zOg%(eyG8OfD&C~vuPFFC3Kl3JDQCLiaQ~h@Y=!3rtkn{V;vK#zz86u2m!mjWVwM53NVBFe-ndP~+1VhaT;CA64200;#3M+Qo^Sc*q6yEVxEatP@0$X|IVj;V9!OQYu z5xXq5c`6o5*rnU%tDbYd*|1p3Zp&=tRkN`-OBOxs){BUrTw1i@@&;nzWDN%GZTVG{15VbU-`uwCAL zOnPB-(XpL+7C{OE+<|XgVh>WAcCz!GqSD!dD@}9t$)e@+kHl-CR7O3G}MC~ux7adzE8w5%ZUR|GDx|%&r?LKg8@Gqa`*TOmJ!emmIWOsLpJd62i zI+mCR341fD0~J=BZtP|!Yw(QS)(_-JK8&0KR5Aj%B4;Ncr;bFymlVjumXEO&dAUuHCyy#d(?+{?}&5gc!fjvmA z-^9!1(QFx~o(b;W*tsXP?8}*BY?AB$g zS~_2utZZE@V)w}_Wh?6zgVP8rQ z5nOj(kKNe&Cy8WtFT1w}yX>756TuC~jnTg-Vwcjuadx%_FW8@Dy-MNyz@m-LYBIXM zRdFl&<2wFaqSfNXr0^oY%@V$lw+Z0GaaH&LeT2&!%WpdWVkNtj29HZa*!_~0u;d`7 z6JAT<2s>K?(Y{X42A4ON-*WtA;Fgfwb!5?odt}7VXYjRfZw=1dmtz7%X>F{!F>rI; zUz}u@w=gB}Bxk^daD+?*o)!<_lr8}2LV99^HKhxK;mLEc*p$c+G@!z^v{!l5MI;V3 zhmLY&u9VC8yT}twc$7PVVHgoZZHW0T65TAa{gjC3%<(mbDlw#qFf5LxF{F**byf7N zngY`E5Nj!5C>1GHa5RshSq$qV{b+G11%3*eDOg6qatc}~Xr-Wyf)x~y?THwmfbn%! z(NzZpofLFYu$qEy3f54tmV$K@tfycD1sf?KDWJ%-@ix;H!_LeY+g;aIjxKK#Bf#fy z*rMM6PkYf}x7$;;vRBz(%2p$pk2|(CQnn*yYn9B$qI11HZ_)Ne@I@b}<6y%6a!0P}2 literal 0 HcmV?d00001 diff --git a/inpost/static/__pycache__/__init__.cpython-311.pyc b/inpost/static/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d8a1232f490977cdd8fcb5f1311a32415b225f3b GIT binary patch literal 3637 zcmeH}OHUj}5P)ZS?0eZ=-Waeke!$ws?imSCWpp2d{3XmVzROjoW+EgK7{-StU;8OPhTBfnYM^cs=n3^tt5R^|#S zu%^#J8L-J5-St9y$2N`7_S|S`<#@#RY&ZNw#BGzsBF=U=3-ijx-l?L-ry| z0|$m$4)9m(YB1yiE z!Mxlg@susskP&&@{^mHG-YwU*D8wC`S#!1Jrs79wBpPT{Y+Yx0D`0%Zi*|+5tt3Qp zNu3GVN*TWYI`CZC%*%{4_fMru^vr)e3daUSUyHEDt2LJdjbYc)OysO53zW zOJvuiRG`zef8~bVfhP^$p5}NN+Hc*$0e^{D#_e@tkB`?m8*W%HJ@S zrR!?5ZF-fm7-(@iXNC>KsjEXShFS&|-}v&VGbItfWa zijXE`2sr}1emqYo5abi6@gku_7$uYm-Gm+qk@D4f3wSSy`Uw4m0m2|*h;WK9Oc)`Y zCY&LR5zZ3E3Fips2^R<#2@`}#LWOXNaG7w0Fh#gZxJI~6xIwr{xJ9^4xI?%{xKDUM zm?k_V%n%+CW(ki8PY82_r-XUJ0%4J`M0iGcPFNDs-f!gmnAt_jn6BBDrd72BFo;;Q%dj3zgQKKitln&9+BE(hCJVas*@<3c+H}+ zty8}Ktaf*4;ByKn(t)}gSn$tFxk}DY)>EW(-EbUT|5bZ0N3{=2^V8dO5eM5S-tbGX>*AgRdwc*z9J55SXeBWskZ%=-Y+KRNo b|1QS5DZVcilhs5{hX0Y@r|6G^Je+?3#$WY= literal 0 HcmV?d00001 diff --git a/inpost/static/__pycache__/endpoints.cpython-311.pyc b/inpost/static/__pycache__/endpoints.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2bba3c5a028f1fe9898f0f87e065ddf5e4df1278 GIT binary patch literal 3672 zcmb`K&r{n*6vv-KLcoqO#(;tFE6tBKZ9##g`9VlBEzp)g!HgTqY{)1=T8fG-DOx!* z^yDK)ZskAd^w?|v3hAcNsWbftGLu_QefuOkB=lf6@o3)L&l-RC?c2Az;`eMe4fqMw zW8=>Zz&{cipN^#Q`mYqgZ}0>RV8B!SjFFnhuZ%OSgQ$b(EIUhdj;NEJBRWq6tdppV zsGFT9N)u&R7tsZxEbAufA#R2M3-4V(G{YrY=Gz*(Wh*X=rf}0tVr}Z(HCrp=u4t0 zHcT{4q_7d98$>hgBGD|-O*Tq&i|8vhMs%C#4jU)BOLUJ-5X}+YXOl$pL=Vbv{o${- z_dL%LbBdxl=9Fnw?H#kir<}?(*TjLN>HD*{rY-I%FJ~03=IwFIGj+}5QFq1u*|gM} zTWLo^aLXwFP+qVNu0(lBs;CN8M<%Jetw*EV)~@MR6Sb&6;dk|Jw62Hqv1?wGj=hW~ z%Da5m5prhAxOp~MrUp`u(eTN*?jPXNR#q&KpL$6K6z^+fjCC;)jj zHa9DZHTEqQR1(soR%bP%kl2ZWS7>`>X-hTrzWxBcz?xjcGfx{n^o|M18I=is8^ivt#kISn|(NI#*@BB3lHQVY? zGs>=OVr2^@>PcFArb8MJTh}nHmnNR#wDBAJA}Tgo>U+ZT|4&%cb?$i4K+gQww-sw{ z`LGqhRyg`R85I5V0G@~Ah7W_s9X_Bp0x-g>J3fpZ3m?$$1h5nKt;Q0oKCA|?icu84 zO~qYHJ}d>WbSm=VvwH5R;KMU~0(ce{jhK@$P$K_0Rqr~yd?Gz4Pw7d935Ri()PcSn zKsg-PtY;4~u130wEEZ)xumD*2J`a_A=sm(A(3b)zol^X-d=}Q?{H^)07Qk9K`ND^x zV-!LEB7hh8o8n5U-gAT*dyG#2kHZPohvG3#7rh#Q8jd~nVc-ZuMgKG)iw*Y**2up{ CE!L0# literal 0 HcmV?d00001 diff --git a/inpost/static/__pycache__/exceptions.cpython-311.pyc b/inpost/static/__pycache__/exceptions.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..85ce0b47a365377934fa92aa8cb51dbbab47bb8b GIT binary patch literal 5729 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 literal 0 HcmV?d00001 diff --git a/inpost/static/__pycache__/notifications.cpython-311.pyc b/inpost/static/__pycache__/notifications.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ebf522008ab71240985773928fafbd513c5ba0f9 GIT binary patch literal 2630 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

9D3I;B*tT3~_F*$uDIV;cwjPiC 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 ob3bZy3N^A>UI*HEJ3)=0^l_clV!Z literal 0 HcmV?d00001 diff --git a/tests/static_tests.py b/tests/static_tests.py new file mode 100644 index 0000000..f34fcd3 --- /dev/null +++ b/tests/static_tests.py @@ -0,0 +1,8 @@ +import asyncio + +import data +import data_responses +import pytest +import pytest_mock + +from inpost.static.parcels import Parcel diff --git a/tests/test_data.py b/tests/test_data.py new file mode 100644 index 0000000..1c1386e --- /dev/null +++ b/tests/test_data.py @@ -0,0 +1,319 @@ +courier_parcel = { + "shipmentNumber": "954928772800409758129169", + "shipmentType": "courier", + "pickUpDate": "2022-12-13T11:20:59.000Z", + "parcelSize": "OTHER", + "receiver": {"email": "john@doe.com", "phoneNumber": "594244881", "name": "John Doe"}, + "sender": {"name": "Blueboat Trade Bulik J\\u00f3\\u017awiak sp.j."}, + "endOfWeekCollection": False, + "operations": { + "manualArchive": True, + "autoArchivableSince": "2022-12-13T11:20:59.000Z", + "delete": True, + "collect": False, + "expandAvizo": False, + "highlight": False, + "refreshUntil": "2023-01-23T15:16:38.395Z", + "requestEasyAccessZone": "DISALLOWED", + "voicebot": True, + "canShareToObserve": False, + "canShareOpenCode": False, + "canShareParcel": False, + }, + "status": "DELIVERED", + "eventLog": [ + {"type": "PARCEL_STATUS", "name": "DELIVERED", "date": "2022-12-13T11:20:59.000Z"}, + {"type": "PARCEL_STATUS", "name": "OUT_FOR_DELIVERY_TO_ADDRESS", "date": "2022-12-13T06:41:09.000Z"}, + {"type": "PARCEL_STATUS", "name": "ADOPTED_AT_SOURCE_BRANCH", "date": "2022-12-13T05:05:03.000Z"}, + {"type": "PARCEL_STATUS", "name": "SENT_FROM_SOURCE_BRANCH", "date": "2022-12-12T17:10:33.000Z"}, + {"type": "PARCEL_STATUS", "name": "ADOPTED_AT_SOURCE_BRANCH", "date": "2022-12-12T15:26:03.000Z"}, + {"type": "PARCEL_STATUS", "name": "COLLECTED_FROM_SENDER", "date": "2022-12-12T13:52:57.000Z"}, + {"type": "PARCEL_STATUS", "name": "CONFIRMED", "date": "2022-12-09T15:16:04.000Z"}, + ], + "avizoTransactionStatus": "NONE", + "sharedTo": [], + "ownershipStatus": "OWN", +} +parcel_locker = { + "shipmentNumber": "991798006092038618752844", + "shipmentType": "parcel", + "openCode": "465649", + "qrCode": "P|524507211|465649", + "storedDate": "2022-11-30T06:55:08.000Z", + "pickUpDate": "2022-11-30T13:00:46.000Z", + "parcelSize": "B", + "receiver": {"email": "john@doe.com", "phoneNumber": "524507211", "name": "john@doe.com"}, + "sender": {"name": "Wrapster Sp. z o.o."}, + "pickUpPoint": { + "name": "WRO23A", + "location": {"latitude": 51.0775, "longitude": 17.04745}, + "locationDescription": "Przy Centrum Handlowym Gaj", + "openingHours": "24/7", + "addressDetails": { + "postCode": "50-559", + "city": "Wroc\\u0142aw", + "province": "dolno\\u015bl\\u0105skie", + "street": "\\u015awieradowska", + "buildingNumber": "70", + }, + "virtual": 0, + "pointType": "PL", + "type": ["parcel_locker"], + "location247": True, + "doubled": False, + "imageUrl": "https://static.easypack24.net/points/pl/images/WRO23A.jpg", + "easyAccessZone": True, + "airSensor": True, + "airSensorData": { + "updatedUntil": "2022-11-30T06:55:08.000Z", + "airQuality": "good", + "temperature": 25.2, + "humidity": 35.3, + "pressure": 1020.5, + "pollutants": { + "pm25": { + "value": 25.2, + "percent": 30.5, + }, + "pm10": { + "value": 25.2, + "percent": 30.5, + }, + }, + }, + }, + "endOfWeekCollection": False, + "operations": { + "manualArchive": True, + "autoArchivableSince": "2022-11-30T13:00:46.000Z", + "delete": True, + "collect": False, + "expandAvizo": False, + "highlight": False, + "refreshUntil": "2023-01-13T12:51:55.329Z", + "requestEasyAccessZone": "DISALLOWED", + "voicebot": True, + "canShareToObserve": False, + "canShareOpenCode": False, + "canShareParcel": False, + }, + "status": "DELIVERED", + "eventLog": [ + {"type": "PARCEL_STATUS", "name": "DELIVERED", "date": "2022-11-30T13:00:46.000Z"}, + {"type": "PARCEL_STATUS", "name": "READY_TO_PICKUP", "date": "2022-11-30T06:55:08.000Z"}, + {"type": "PARCEL_STATUS", "name": "OUT_FOR_DELIVERY", "date": "2022-11-30T05:20:16.000Z"}, + {"type": "PARCEL_STATUS", "name": "ADOPTED_AT_SOURCE_BRANCH", "date": "2022-11-30T02:00:41.000Z"}, + {"type": "PARCEL_STATUS", "name": "SENT_FROM_SOURCE_BRANCH", "date": "2022-11-29T19:24:41.000Z"}, + {"type": "PARCEL_STATUS", "name": "ADOPTED_AT_SOURCE_BRANCH", "date": "2022-11-29T18:18:05.000Z"}, + {"type": "PARCEL_STATUS", "name": "COLLECTED_FROM_SENDER", "date": "2022-11-29T13:04:14.000Z"}, + {"type": "PARCEL_STATUS", "name": "CONFIRMED", "date": "2022-11-29T12:51:55.000Z"}, + ], + "avizoTransactionStatus": "NONE", + "sharedTo": [], + "ownershipStatus": "OWN", +} +parcel_locker_multi = { + "shipmentNumber": "687100956250559114549363", + "shipmentType": "parcel", + "openCode": "288432", + "qrCode": "P|794654933|288432", + "storedDate": "2022-12-08T09:13:15.000Z", + "pickUpDate": "2022-12-08T20:22:35.000Z", + "parcelSize": "A", + "receiver": { + "email": "ksvnlnbhmm+10a9590d7@allegromail.pl", + "phoneNumber": "794654933", + "name": "ksvnlnbhmm+10a9590d7@allegromail.pl", + }, + "sender": {"name": "RRMOTO.PL"}, + "pickUpPoint": { + "name": "WRO23A", + "location": {"latitude": 51.0775, "longitude": 17.04745}, + "locationDescription": "Przy Centrum Handlowym Gaj", + "openingHours": "24/7", + "addressDetails": { + "postCode": "50-559", + "city": "Wroc\\u0142aw", + "province": "dolno\\u015bl\\u0105skie", + "street": "\\u015awieradowska", + "buildingNumber": "70", + }, + "virtual": 0, + "pointType": "PL", + "type": ["parcel_locker"], + "location247": True, + "doubled": False, + "imageUrl": "https://static.easypack24.net/points/pl/images/WRO23A.jpg", + "easyAccessZone": True, + "airSensor": False, + }, + "multiCompartment": {"uuid": "ae863297-112a-4b6e-8c79-61aeda7ee540", "presentation": False, "collected": True}, + "endOfWeekCollection": False, + "operations": { + "manualArchive": True, + "autoArchivableSince": "2022-12-08T20:22:35.000Z", + "delete": True, + "collect": False, + "expandAvizo": False, + "highlight": False, + "refreshUntil": "2023-01-21T08:45:55.385Z", + "requestEasyAccessZone": "DISALLOWED", + "voicebot": True, + "canShareToObserve": False, + "canShareOpenCode": False, + "canShareParcel": False, + }, + "status": "DELIVERED", + "eventLog": [ + {"type": "PARCEL_STATUS", "name": "DELIVERED", "date": "2022-12-08T20:22:35.000Z"}, + {"type": "PARCEL_STATUS", "name": "READY_TO_PICKUP", "date": "2022-12-08T09:13:15.000Z"}, + {"type": "PARCEL_STATUS", "name": "OUT_FOR_DELIVERY", "date": "2022-12-08T05:43:59.000Z"}, + {"type": "PARCEL_STATUS", "name": "ADOPTED_AT_SOURCE_BRANCH", "date": "2022-12-08T03:24:30.000Z"}, + {"type": "PARCEL_STATUS", "name": "SENT_FROM_SOURCE_BRANCH", "date": "2022-12-07T18:38:23.000Z"}, + {"type": "PARCEL_STATUS", "name": "ADOPTED_AT_SOURCE_BRANCH", "date": "2022-12-07T16:31:53.000Z"}, + {"type": "PARCEL_STATUS", "name": "COLLECTED_FROM_SENDER", "date": "2022-12-07T14:52:42.000Z"}, + {"type": "PARCEL_STATUS", "name": "CONFIRMED", "date": "2022-12-07T08:45:55.000Z"}, + ], + "avizoTransactionStatus": "NONE", + "sharedTo": [], + "ownershipStatus": "OWN", +} +parcel_locker_multi_main = { + "shipmentNumber": "662025956250559113851741", + "shipmentType": "parcel", + "openCode": "250162", + "qrCode": "P|794654933|250162", + "storedDate": "2022-12-08T09:13:15.000Z", + "pickUpDate": "2022-12-08T20:22:35.000Z", + "parcelSize": "A", + "receiver": { + "email": "d38tp3wvmr+34f6eefb7@allegromail.pl", + "phoneNumber": "794654933", + "name": "d38tp3wvmr+34f6eefb7@allegromail.pl", + }, + "sender": {"name": "TM Products Tomasz Mali\\u0144ski"}, + "pickUpPoint": { + "name": "WRO23A", + "location": {"latitude": 51.0775, "longitude": 17.04745}, + "locationDescription": "Przy Centrum Handlowym Gaj", + "openingHours": "24/7", + "addressDetails": { + "postCode": "50-559", + "city": "Wroc\\u0142aw", + "province": "dolno\\u015bl\\u0105skie", + "street": "\\u015awieradowska", + "buildingNumber": "70", + }, + "virtual": 0, + "pointType": "PL", + "type": ["parcel_locker"], + "location247": True, + "doubled": False, + "imageUrl": "https://static.easypack24.net/points/pl/images/WRO23A.jpg", + "easyAccessZone": True, + "airSensor": True, + "airSensorData": { + "updatedUntil": "2022-11-30T06:55:08.000Z", + "airQuality": "good", + "temperature": 25.2, + "humidity": 35.3, + "pressure": 1020.5, + "pollutants": { + "pm25": { + "value": 25.2, + "percent": 30.5, + }, + "pm10": { + "value": 25.2, + "percent": 30.5, + }, + }, + }, + }, + "multiCompartment": { + "uuid": "ae863297-112a-4b6e-8c79-61aeda7ee540", + "shipmentNumbers": [ + "614500956250559117908538", + "690768956250559116536063", + "687100956250559114549363", + "662025956250559113851741", + ], + "presentation": False, + "collected": True, + }, + "endOfWeekCollection": False, + "operations": { + "manualArchive": True, + "autoArchivableSince": "2022-12-08T20:22:35.000Z", + "delete": True, + "collect": False, + "expandAvizo": False, + "highlight": False, + "refreshUntil": "2023-01-21T05:35:37.816Z", + "requestEasyAccessZone": "DISALLOWED", + "voicebot": True, + "canShareToObserve": False, + "canShareOpenCode": False, + "canShareParcel": False, + }, + "status": "DELIVERED", + "eventLog": [ + {"type": "PARCEL_STATUS", "name": "DELIVERED", "date": "2022-12-08T20:22:35.000Z"}, + {"type": "PARCEL_STATUS", "name": "READY_TO_PICKUP", "date": "2022-12-08T09:13:15.000Z"}, + {"type": "PARCEL_STATUS", "name": "OUT_FOR_DELIVERY", "date": "2022-12-08T05:43:59.000Z"}, + {"type": "PARCEL_STATUS", "name": "ADOPTED_AT_SOURCE_BRANCH", "date": "2022-12-08T02:00:13.000Z"}, + {"type": "PARCEL_STATUS", "name": "SENT_FROM_SOURCE_BRANCH", "date": "2022-12-07T16:11:23.000Z"}, + {"type": "PARCEL_STATUS", "name": "ADOPTED_AT_SOURCE_BRANCH", "date": "2022-12-07T12:57:17.000Z"}, + {"type": "PARCEL_STATUS", "name": "COLLECTED_FROM_SENDER", "date": "2022-12-07T12:53:51.000Z"}, + {"type": "PARCEL_STATUS", "name": "CONFIRMED", "date": "2022-12-07T05:35:37.000Z"}, + ], + "avizoTransactionStatus": "NONE", + "sharedTo": [], + "ownershipStatus": "OWN", +} + +parcel_properties = { + "sessionUuid": "426b2d3f-68ef-418e-b38b-ab1395bd0797", + "sessionExpirationTime": 40000, + "compartment": {"name": "3R1", "location": {"side": "R", "column": "2", "row": "1"}}, + "openCompartmentWaitingTime": 37000, + "actionTime": 25000, + "confirmActionTime": 50000, +} + +qr_result = ( + b"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x02\xe4\x00\x00\x02\xe4\x01\x00\x00\x00\x00o\xdf\x1d\xc8" + b"\x00\x00\x03\x95IDATx\x9c\xed\xddK\x92\x9b0\x10\x00\xd0V*{\xb8A\xee\x7f\xac\xb9\x01\x9c@Y\xf0\xd1\x07<" + b"\x13\xc7\x9e\x94\x89_/\x98\x11\x86\xb7\xd0F%Zj\xa5\x1c\xdf\x17\xf3\x8fo\xc4#\xe8t:\x9dN\xa7\xd3\xe9t:" + b"\x9dN\xa7\xd3\xe9t:\x9dN\xa7\xd3\xe9t:\xfd_\xea\x91\xf78\xfc4\xac\xf7r\x9e\xeaf\xf7\xee\xd9kkLW\xee\x19" + b":\x9dN\xa7\xd3\x1f\xd4\xcb\x88\x98\xeb!5\xa5\xb1~\xea0\x9a\x1e_;\xd5\x9f\x1et:\x9dN\xa7\xbf\xba\x9e\x96" + b"\x18\xf7\xe6\xaf\x93\x19i\x1c\x06\xdc\xee\xb5[\xfas\x83N\xa7\xd3\xe9\xf4W\xd3\x7f~\xfes\x8e9E\x8e\x88Hk" + b"s\x8c\x88y\\\xee}\xb9G\xe7\xca=C\xa7\xd3\xe9t\xfa\xfd\xf1\xc5\xb8\x9ab\xc8\xcb\x90\x1a\xcb\x08;\xe4\x88" + b"\xe5\xf2'q\xe5\x9e\xa1\xd3\xe9t:\xfd\xfe\xe8\xc7\xd5\xdc7\xe7\xd4\xbf\x92b\x98\xb6\x01w\x98N_\xdb\xe2" + b"\xca=C\xa7\xd3\xe9t\xfa\x83\xfa\x9c\xaa\x88\x88=\xbf:\xac\x97c\x06\xf5\xfc\xb5S\xfd\xe9A\xa7\xd3\xe9t" + b"\xfa\xab\xe9\xd5|\xf5\xe6\xc7\xdd.\x97\x9aO.7\xe2\xca=C\xa7\xd3\xe9t\xfa\xd3\xf4y]\xdd\x9b\xf3\xc7>\x05" + b"\x9dS*\xcd\x94\xc6O._\xe8O\n:\x9dN\xa7\xd3_Mo\xf2\xab\xf3\xb8\xfc]\xe7\xa1s\x8a\xd8\xd3\xa8\xa9Z\xad" + b"\xb4\xad\x07n\xdeM\x11\xfb\xe2\xe1-\xae\xdc3t:\x9dN\xa7\xffE\xe46\xca\xbd\xa6p\xd2\xbaa\xb5~n\xd8\x1f" + b'\x99"\xeaf\x89\xe9\xca=C\xa7\xd3\xe9t\xfa\xfdq:_]g\xa4\xcb|uZ\xf6\xd9\xac\xf3\xd5f\xaa\x9a\xab\xbd7q' + b"\x96i\xbdr\xcf\xd0\xe9t:\x9d\xfe\x90\xbe&T\xa7\xb6\xf9\x91\xd2:A\x9d\xebLki\xd6\t\xd5--{\xa2\x7fC\xd0" + b"\xe9t:\x9d\xfe\xc2z\x19RK\xb3^\x8a4\xec_\x7f\x8f\x0f\xabcH\xa7\xd3\xe9tz\xc4!eZ'OK\x0cu\xe2\xf5\xfc\xe1" + b"-\xd3*\xbfJ\xa7\xd3\xe9\xf47\xd6O\xcf\x89+\x03d=|F\xdc8\xcafZ\xff;,^2\xae\xd2\xe9t:\xfd\xcd\xf4c}\xe0" + b"a\x8a\xa8\x8a\x146[gJ5\xa5\xee^\xa9wh\x9f\r\x9dN\xa7\xd3\xdfX\xbf]\x1f8\xb7Cj\xb7\xd8w\xdb\xd3:\xb5\xa7" + b"\xdd\xd8\xbfJ\xa7\xd3\xe9\xf4\xb7\xd6\xfb\xef\xc0\x87\xdd\xa8S\xfb\xf0t\xfe\xe5\xd8w`:\x9dN\xa7\xd3\xa3" + b"\x9b\xaf\x96sj\xe2\xd6Q6\xb1OU\xb77\xba2MM\\\xb9g\xe8t:\x9dN\xbf?\x8e\xdf\x81\xe7T\x950,\x85 \xd2\xe1" + b"\x911\xa2\x1az\xe5W\xe9t:\x9dN?9\xcf\xa69\xb9\xbc\x9e\xbeFT\x07\xae\xae\xb15\x0f3\xdb%\xae\xdc3t:\x9dN" + b"\xa7?\xa4\xa7>\xc6=\xa1:\xed\x0f\xcd\xa9\x1fBK5\x88.\x19\x1b\xffM\xcf\xd0\xe9t:\x9d\xfe\x87\xd1\xe7WK" + b"\xa4\xfd\xb2\xce]\x97\x9a\xc1cU.\xb8\xfeu\xdb\x9e\xd3\xc4\x95{\x86N\xa7\xd3\xe9\xf4\xfb\xa3\xcf\xaf\xd6" + b'\xeb\x91"\xaa\x814\xfa\x81t;\x18\xee\xb3\xb8r\xcf\xd0\xe9t:\x9d\xfe=\xfaZ)8\xa5\xd4U\xe5\xaf\xab\x17' + b"~\xd4\xb5\xf8\xef\xd1\xff>\xe8t:\x9dN\x7f5\xfdXo\xa9\x8bm\x19S\xaaO\x8c\x9b\x96\xdf\xb6\xb5L\xb9\xfa," + b"\xdc\xc4\x95{\x86N\xa7\xd3\xe9\xf4\xc7\xf5\xad\xa2\xc3~c^\x171u+\x98\xcai7\xa5\x191\xe4\xec\x9c8:\x9d" + b"N\xa7\xbf\xb1\xde\x9ek\xfei\xb6t\x1e\xa3$YS{\x9a\xf9Y\xe1\xe0\xb8v\xcf\xd0\xe9t:\x9d~\x7f\xa4c\x91\xa4" + b"\xe7\xc5|\xe5\x9e\xa1\xd3\xe9t:\x9dN\xa7\xd3\xe9t:\x9dN\xa7\xd3\xe9t:\x9dN\xa7\xd3\xe9\xf46~\x03\x0f" + b"\xb5\t\xa2\xca\nmu\x00\x00\x00\x00IEND\xaeB`\x82" +) + +open_data_result = { + "openCode": "465649", + "receiverPhoneNumber": "524507211", + "shipmentNumber": "991798006092038618752844", +} diff --git a/tests/test_parcels.py b/tests/test_parcels.py new file mode 100644 index 0000000..51df2af --- /dev/null +++ b/tests/test_parcels.py @@ -0,0 +1,239 @@ +import logging + +import pytest + +from inpost.static import CompartmentActualStatus +from inpost.static.parcels import CompartmentLocation, CompartmentProperties, Parcel +from tests.test_data import ( + courier_parcel, + open_data_result, + parcel_locker, + parcel_locker_multi, + parcel_locker_multi_main, + parcel_properties, + qr_result, +) + + +def build_dict(object, test_data, keys: list): + test_input_dict = {} + expected_dict = {} + for key in keys: + test_input_dict[key] = eval("object." + key) + expected_dict[key] = eval("test_data." + key) + return test_input_dict, expected_dict + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, "465649"), + (courier_parcel, None), + ], +) +def test_open_code(test_input, expected): + parcel_code = Parcel(test_input, logging.getLogger(__name__)).open_code + assert parcel_code == expected, f"parcel_code: {parcel_code} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, qr_result), + ], +) +def test_generate_qr_image(test_input, expected): + qr_image = Parcel(test_input, logging.getLogger(__name__)).generate_qr_image + assert qr_image == expected, f"qr_image: {qr_image} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, None), + (courier_parcel, None), + ], +) +def test_compartment_properties(test_input, expected): + compartment_properties = Parcel(test_input, logging.getLogger(__name__)).compartment_properties + assert ( + compartment_properties == expected + ), f"compartment_properties: {compartment_properties} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, parcel_properties), + ], +) +def test_compartment_properties_setter(test_input, expected): + parcel = Parcel(test_input, logging.getLogger(__name__)) + parcel.compartment_properties = expected + test_data = CompartmentProperties(expected, logging.getLogger(__name__)) + test_input_dict, expected_dict = build_dict( + parcel.compartment_properties, test_data, ["_status", "_session_uuid", "_session_expiration_time", "_location"] + ) + assert ( + test_input_dict == expected_dict + ), f"compartment_properties_setter: {test_input_dict} != expected: {expected_dict}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, None), + (courier_parcel, None), + ], +) +def test_compartment_location(test_input, expected): + compartment_location = Parcel(test_input, logging.getLogger(__name__)).compartment_location + assert compartment_location == expected, f"compartment_location: {compartment_location} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, parcel_properties), + ], +) +def test_compartment_location_setter(test_input, expected): + parcel = Parcel(test_input, logging.getLogger(__name__)) + parcel.compartment_properties = expected + parcel.compartment_location = expected + test_data = CompartmentLocation(expected, logging.getLogger(__name__)) + test_input_dict, expected_dict = build_dict( + parcel.compartment_location, + test_data, + ["name", "side", "column", "row", "open_compartment_waiting_time", "action_time", "confirm_action_time"], + ) + assert ( + test_input_dict == expected_dict + ), f"compartment_location_setter: {test_input_dict} != expected: {expected_dict}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, None), + (courier_parcel, None), + ], +) +def test_compartment_status(test_input, expected): + parcel_status = Parcel(test_input, logging.getLogger(__name__)).compartment_status + assert parcel_status == expected, f"parcel_status: {parcel_status} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + ("CLOSED", CompartmentActualStatus.CLOSED), + ("OPENED", CompartmentActualStatus.OPENED), + ("PENIS", CompartmentActualStatus.UNKNOWN), + (CompartmentActualStatus.CLOSED, CompartmentActualStatus.CLOSED), + (CompartmentActualStatus.OPENED, CompartmentActualStatus.OPENED), + ], +) +def test_compartment_status_setter(test_input, expected): + parcel = Parcel(parcel_locker, logging.getLogger(__name__)) + parcel.compartment_properties = parcel_properties + parcel.compartment_status = test_input + assert ( + parcel.compartment_status == expected + ), f"compartment_status: {parcel.compartment_status} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, open_data_result), + (courier_parcel, None), + ], +) +def test_compartment_open_data(test_input, expected): + parcel_open_data = Parcel(test_input, logging.getLogger(__name__)).compartment_open_data + assert parcel_open_data == expected, f"parcel_open_data: {parcel_open_data} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, parcel_locker), + (parcel_locker, parcel_locker), + (parcel_locker, parcel_locker), + (parcel_locker, parcel_locker), + (parcel_locker, parcel_locker), + (parcel_locker_multi, parcel_locker_multi), + (parcel_locker_multi, parcel_locker_multi), + (parcel_locker_multi, parcel_locker_multi), + (parcel_locker_multi, parcel_locker_multi), + (parcel_locker_multi, parcel_locker_multi), + (parcel_locker_multi_main, parcel_locker_multi_main), + (parcel_locker_multi_main, parcel_locker_multi_main), + (parcel_locker_multi_main, parcel_locker_multi_main), + (parcel_locker_multi_main, parcel_locker_multi_main), + (parcel_locker_multi_main, parcel_locker_multi_main), + (courier_parcel, None), + ], +) +def test_mocked_location(test_input, expected): + mocked_location = Parcel(test_input, logging.getLogger(__name__)).mocked_location + expected = expected["pickUpPoint"]["location"] + is_in_range = ( + abs(mocked_location["latitude"] - expected["latitude"]) <= 0.00005 + and abs(mocked_location["longitude"] - expected["longitude"]) <= 0.00005 + ) + assert is_in_range, ( + f"mocked_location invalid threshold. Should be less or equal to 0.00005 but on of values is not meeting it" + f"mocked_latitude: {mocked_location['latitude']}, expected: {expected['latitude']}," + f" diff: {abs(mocked_location['latitude'] - expected['latitude'])}" + f"mocked_latitude: {mocked_location['longitude']}, expected: {expected['longitude']}," + f" diff: {abs(mocked_location['latitude'] - expected['longitude'])}" + ) + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, False), + (parcel_locker_multi, True), + (parcel_locker_multi_main, True), + (courier_parcel, False), + ], +) +def test_is_multicompartment(test_input, expected): + is_multicompartment = Parcel(test_input, logging.getLogger(__name__)).is_multicompartment + assert is_multicompartment is expected, f"is_multicompartment: {is_multicompartment} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, None), + (parcel_locker_multi, False), + (parcel_locker_multi_main, True), + (courier_parcel, None), + ], +) +def test_is_main_multicompartment(test_input, expected): + is_main_multicompartment = Parcel(test_input, logging.getLogger(__name__)).is_main_multicompartment + assert ( + is_main_multicompartment is expected + ), f"is_main_multicompartment: {is_main_multicompartment} != expected: {expected}" + + +@pytest.mark.parametrize( + "test_input,expected", + [ + (parcel_locker, True), + (parcel_locker_multi, False), + (parcel_locker_multi_main, True), + (courier_parcel, None), + ], +) +def test_has_airsensor(test_input, expected): + has_airsensor = Parcel(test_input, logging.getLogger(__name__)).has_airsensor + assert has_airsensor is expected, f"has_airsensor: {has_airsensor} != expected: {expected}" + + +# TODO: Add rest tests! From 63ee57b2975d0fe48f5d78e6410f0af4b64e5e4c Mon Sep 17 00:00:00 2001 From: Mrkazik99 Date: Sun, 25 Jun 2023 21:28:57 +0200 Subject: [PATCH 2/4] Remove these stupid __pycache__ directories --- .gitignore | 2 ++ inpost/__pycache__/__init__.cpython-311.pyc | Bin 220 -> 0 bytes inpost/__pycache__/api.cpython-311.pyc | Bin 71614 -> 0 bytes .../static/__pycache__/__init__.cpython-311.pyc | Bin 3637 -> 0 bytes .../__pycache__/endpoints.cpython-311.pyc | Bin 3672 -> 0 bytes .../__pycache__/exceptions.cpython-311.pyc | Bin 5729 -> 0 bytes .../static/__pycache__/friends.cpython-311.pyc | Bin 4050 -> 0 bytes .../static/__pycache__/headers.cpython-311.pyc | Bin 229 -> 0 bytes .../__pycache__/notifications.cpython-311.pyc | Bin 2630 -> 0 bytes .../static/__pycache__/parcels.cpython-311.pyc | Bin 68105 -> 0 bytes .../static/__pycache__/statuses.cpython-311.pyc | Bin 11966 -> 0 bytes 11 files changed, 2 insertions(+) delete mode 100644 inpost/__pycache__/__init__.cpython-311.pyc delete mode 100644 inpost/__pycache__/api.cpython-311.pyc delete mode 100644 inpost/static/__pycache__/__init__.cpython-311.pyc delete mode 100644 inpost/static/__pycache__/endpoints.cpython-311.pyc delete mode 100644 inpost/static/__pycache__/exceptions.cpython-311.pyc delete mode 100644 inpost/static/__pycache__/friends.cpython-311.pyc delete mode 100644 inpost/static/__pycache__/headers.cpython-311.pyc delete mode 100644 inpost/static/__pycache__/notifications.cpython-311.pyc delete mode 100644 inpost/static/__pycache__/parcels.cpython-311.pyc delete mode 100644 inpost/static/__pycache__/statuses.cpython-311.pyc diff --git a/.gitignore b/.gitignore index 232dc67..137472a 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,5 @@ /tests/data.json /tests/data.py /tests/data_responses.py +/inpost/static/__pycache__/ +/inpost/__pycache__/ diff --git a/inpost/__pycache__/__init__.cpython-311.pyc b/inpost/__pycache__/__init__.cpython-311.pyc deleted file mode 100644 index d81aef5aab92ec94fb6aa7e02cd93f3ae4b76013..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 220 zcmZ3^%ge<81lQlRq(}hi#~=<2FhLogg@BCd3@HpLj5!Rsj8Tk?3@J>(44TX@8G#a- zjJMc4^9u5dOZ+sMZZRhoWEL?4g;z3s25J9g?`#zlTAW%`9Fv<^l3E%QP??;OSd<%3 zl%JKFTv8m93D&AxP+5|Zp9kf|#K&jmWtPOp>lIY~;;_lhPbtkwwJYKPng_D6SQbcp TU}j`wyul!T0UIh}1F8T3-mf}4 diff --git a/inpost/__pycache__/api.cpython-311.pyc b/inpost/__pycache__/api.cpython-311.pyc deleted file mode 100644 index a4e2c208b7c84d8d9dc87178c24b1eee2fcc1e48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71614 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 diff --git a/inpost/static/__pycache__/__init__.cpython-311.pyc b/inpost/static/__pycache__/__init__.cpython-311.pyc deleted file mode 100644 index d8a1232f490977cdd8fcb5f1311a32415b225f3b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3637 zcmeH}OHUj}5P)ZS?0eZ=-Waeke!$ws?imSCWpp2d{3XmVzROjoW+EgK7{-StU;8OPhTBfnYM^cs=n3^tt5R^|#S zu%^#J8L-J5-St9y$2N`7_S|S`<#@#RY&ZNw#BGzsBF=U=3-ijx-l?L-ry| z0|$m$4)9m(YB1yiE z!Mxlg@susskP&&@{^mHG-YwU*D8wC`S#!1Jrs79wBpPT{Y+Yx0D`0%Zi*|+5tt3Qp zNu3GVN*TWYI`CZC%*%{4_fMru^vr)e3daUSUyHEDt2LJdjbYc)OysO53zW zOJvuiRG`zef8~bVfhP^$p5}NN+Hc*$0e^{D#_e@tkB`?m8*W%HJ@S zrR!?5ZF-fm7-(@iXNC>KsjEXShFS&|-}v&VGbItfWa zijXE`2sr}1emqYo5abi6@gku_7$uYm-Gm+qk@D4f3wSSy`Uw4m0m2|*h;WK9Oc)`Y zCY&LR5zZ3E3Fips2^R<#2@`}#LWOXNaG7w0Fh#gZxJI~6xIwr{xJ9^4xI?%{xKDUM zm?k_V%n%+CW(ki8PY82_r-XUJ0%4J`M0iGcPFNDs-f!gmnAt_jn6BBDrd72BFo;;Q%dj3zgQKKitln&9+BE(hCJVas*@<3c+H}+ zty8}Ktaf*4;ByKn(t)}gSn$tFxk}DY)>EW(-EbUT|5bZ0N3{=2^V8dO5eM5S-tbGX>*AgRdwc*z9J55SXeBWskZ%=-Y+KRNo b|1QS5DZVcilhs5{hX0Y@r|6G^Je+?3#$WY= diff --git a/inpost/static/__pycache__/endpoints.cpython-311.pyc b/inpost/static/__pycache__/endpoints.cpython-311.pyc deleted file mode 100644 index 2bba3c5a028f1fe9898f0f87e065ddf5e4df1278..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3672 zcmb`K&r{n*6vv-KLcoqO#(;tFE6tBKZ9##g`9VlBEzp)g!HgTqY{)1=T8fG-DOx!* z^yDK)ZskAd^w?|v3hAcNsWbftGLu_QefuOkB=lf6@o3)L&l-RC?c2Az;`eMe4fqMw zW8=>Zz&{cipN^#Q`mYqgZ}0>RV8B!SjFFnhuZ%OSgQ$b(EIUhdj;NEJBRWq6tdppV zsGFT9N)u&R7tsZxEbAufA#R2M3-4V(G{YrY=Gz*(Wh*X=rf}0tVr}Z(HCrp=u4t0 zHcT{4q_7d98$>hgBGD|-O*Tq&i|8vhMs%C#4jU)BOLUJ-5X}+YXOl$pL=Vbv{o${- z_dL%LbBdxl=9Fnw?H#kir<}?(*TjLN>HD*{rY-I%FJ~03=IwFIGj+}5QFq1u*|gM} zTWLo^aLXwFP+qVNu0(lBs;CN8M<%Jetw*EV)~@MR6Sb&6;dk|Jw62Hqv1?wGj=hW~ z%Da5m5prhAxOp~MrUp`u(eTN*?jPXNR#q&KpL$6K6z^+fjCC;)jj zHa9DZHTEqQR1(soR%bP%kl2ZWS7>`>X-hTrzWxBcz?xjcGfx{n^o|M18I=is8^ivt#kISn|(NI#*@BB3lHQVY? zGs>=OVr2^@>PcFArb8MJTh}nHmnNR#wDBAJA}Tgo>U+ZT|4&%cb?$i4K+gQww-sw{ z`LGqhRyg`R85I5V0G@~Ah7W_s9X_Bp0x-g>J3fpZ3m?$$1h5nKt;Q0oKCA|?icu84 zO~qYHJ}d>WbSm=VvwH5R;KMU~0(ce{jhK@$P$K_0Rqr~yd?Gz4Pw7d935Ri()PcSn zKsg-PtY;4~u130wEEZ)xumD*2J`a_A=sm(A(3b)zol^X-d=}Q?{H^)07Qk9K`ND^x zV-!LEB7hh8o8n5U-gAT*dyG#2kHZPohvG3#7rh#Q8jd~nVc-ZuMgKG)iw*Y**2up{ CE!L0# diff --git a/inpost/static/__pycache__/exceptions.cpython-311.pyc b/inpost/static/__pycache__/exceptions.cpython-311.pyc deleted file mode 100644 index 85ce0b47a365377934fa92aa8cb51dbbab47bb8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5729 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 diff --git a/inpost/static/__pycache__/notifications.cpython-311.pyc b/inpost/static/__pycache__/notifications.cpython-311.pyc deleted file mode 100644 index ebf522008ab71240985773928fafbd513c5ba0f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2630 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

9D3I;B*tT3~_F*$uDIV;cwjPiC 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 ob3bZy3N^A>UI*HEJ3)=0^l_clV!Z From 2afc489f1df3b3402c15419374cc9a8c3a54f34a Mon Sep 17 00:00:00 2001 From: Mrkazik99 Date: Sun, 25 Jun 2023 21:38:18 +0200 Subject: [PATCH 3/4] Fix qr_image test and add two test cases for it --- tests/test_data.py | 67 +++++++++++++++++++++++++++++++++++++++++++ tests/test_parcels.py | 6 +++- 2 files changed, 72 insertions(+), 1 deletion(-) diff --git a/tests/test_data.py b/tests/test_data.py index 1c1386e..ca1f785 100644 --- a/tests/test_data.py +++ b/tests/test_data.py @@ -312,6 +312,73 @@ b"\xb5\t\xa2\xca\nmu\x00\x00\x00\x00IEND\xaeB`\x82" ) +qr_result_multi = ( + b"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x02\xe4\x00\x00\x02\xe4\x01\x00\x00\x00\x00o\xdf" + b"\x1d\xc8\x00\x00\x03\x85IDATx\x9c\xed\xddM\x92\x9b0\x10\x06\xd0V*{|\xff\xdb\xe5\x06\xe6\x04\xca" + b"\x02a\xfd\x80+\xc1\x99IF\xf1\xfb\x16\x8e1\xf0*\xa5\x8dJ\xa0\xeeI9>/\xeb\xb7O\xc4#\xe8t:\x9dN\xa7" + b"\xd3\xe9t:\x9dN\xa7\xd3\xe9t:\x9dN\xa7\xd3\xe9t:\xfd\x1f\xe9i\xcc\xad\xfc\x16\xb1\x96\xc3\x92" + b"\xb5\\\xf0\xf4\xb6\xbf\xfe\x7f\xa7\xd3\xe9t:\xfd\xeb\xe9Kn\x12\x11\x119\xdf\xcb\xb9\x9c\x7f\x94" + b"\x19\xf6`\x1co;\xd5?ve\xe6\x91\xa1\xd3\xe9" + b"t:\xfdz\x8e\xfb\x81\xd7[D\xa9\xa4y<\xd4]\xee\xdbK\xd6\xdc\x7f\x0c\xa9k\xd8=3\x8f\x0c\x9dN\xa7\xd3" + b"\xe9\xd7\xd3\xcc\xab\xe91}F\xfb\xe0\xf76~K\xfd\x0e\xa6v\x9a]\x86\xe9v\xe6\x91\xa1\xd3\xe9t:\xfd" + b"\x85\x0cO\x7f\x0f\x1f]\xca\x1d\xdd\x89\xc3\xd3\xdf\xc6\x9byd\xe8t:\x9dN\x7f!\x87\x0e\x84K[\xab:" + b"|k\x8bX\xeb\xd9\xe6\x85\xeap8\xf3\xc8\xd0\xe9t:\x9d~='\xefWKo\xa5x<\xf8-\xa5\xabK\x8e\xe8;\x1a" + b"\xd6\x1c\x9b\x06G\xc4\xdc#C\xa7\xd3\xe9t\xfa\xf5<\xefcX\xbb\x02\x1f\x9aCl[\x9b\xee{s\x88\xee\x84" + b"}Kt:\x9dN\x7fc\xbd\x9bW\x87m\xbfk\x8a\xdc\xac\\\xb7\x99\xb3\xfcV\x17\xa8\xb5\xba5\xd9\xb7D\xa7" + b"\xd3\xe9\xf47\xd7\xbb\xbe\x10\xb5L\xa6\x16\xdbtg\xa39\xbb_\x9c\x9a\xb3\xeal\xe8t:\x9d\xfe\xdez_g" + b"\x93\xf7Y\xb2\x9bRS\xf3j\xb5\x96\xddD\xa9\xb8\xc9\xfd\xbd]f\x1e\x19:\x9dN\xa7\xd3_\xc8\xa1\x88" + b"\xa6\x96\xceD[S3\x94\xd3\x1c\x1a,\xdd#\xf4[\xa2\xd3\xe9t\xfa\xbb\xebc!\xea\xa1\x92\xb5\xabZ\x1d" + b"\xbeU`\x98p\xcd\xabt:\x9dN\x7fO}\xdc\x0f\xbc\xef\xee\xcd\xe3_\x82\xfbU\x89M\xed\xd0\xd4d\xe6\x91" + b"\xa1\xd3\xe9t:\xfd\x85\x9c\xb4IjR.\xea\x1e\xf7\x9e\xf5\x808\xf7\xacW\xe9t:\x9d\xfefz\xb7oi\xc8r" + b"\xdf\xba\x02\xe7~\xef\xefP\xa6:\xb4\x0b\xee2\xf3\xc8\xd0\xe9t:\x9d~=c\xfdjM:\xf9\x88\xfe\xb1p-v" + b"\x8d\xf3\xc9u\xe6\x91\xa1\xd3\xe9t:\xfdz\x9e\xbd_\xbdo\xff\xb6\x15\xaa\x11\x91\x0e+\xd7'\r\x0cKf" + b"\x1e\x19:\x9dN\xa7\xd3?G/\xefR\xd7\x94\x9e\xfc\xf9\xf2\x88\x9c\x7f\xa4T.\xb9\xa8\xbf\x1e:\x9dN" + b"\xa7\xd3\xbf\x9a\xfe\xbc?p\xcdaM:\xbcs\xdd7\x0f\x1f3\xf3\xc8\xd0\xe9t:\x9d~=\xe3\xbcz\x98\x1d\x87" + b"V\xfa]\x7f\xe0\xf4\xe8\x19\x1c\xe5\xb0\xaf\xcc\x99zd\xe8t:\x9dN\xbf\x9en^={[Z\xd7\xa1C\xfdj\xf7\n" + b"V\xfd*\x9dN\xa7\xd3\xe9\x11\x91\xce\x1e\xdf~T\xd6\x99G\x86N\xa7\xd3\xe9t:\x9dN\xa7\xd3\xe9t:\x9dN" + b"\xa7\xd3\xe9t:\x9dN\xa7\xd3\xfb\xfc\x04@\xc6C\xc0\xb4\x1e\xf6\xfb\x00\x00\x00\x00IEND\xaeB`\x82" +) + +qr_result_multi_main = ( + b"\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x02\xe4\x00\x00\x02\xe4\x01\x00\x00\x00\x00o\xdf" + b"\x1d\xc8\x00\x00\x03\x8fIDATx\x9c\xed\xddA\x92\xa38\x10\x00\xc0\xd2\xc6\xde\xe1\x07\xf3\xffg" + b"\xcd\x0f\xe0\x05\xda\x83\x85\x11\x92\xd8i\xbb\xbbg\xcc8\xeb@t#\x94\xe1\xd0\x85\xa8B\x14)\xc7" + b"\xf7\xc5\xfa\xcf7\xe2\x11t:\x9dN\xa7\xd3\xe9t:\x9dN\xa7\xd3\xe9t:\x9dN\xa7\xd3\xe9t:\x9d\xfe" + b"\x87\xf4\xd4\xc6|?7\x1f'\xad\xe5\xf4\xe9\xb4\xdf\xfe\xdb\xe9t:\x9dN\x7f=}\xcaUDDD\xceK9\x94" + b"\x1b\xe9:\xb8\xcd\xf6\xd3\x86\xfa\x97\x07\x9dN\xa7\xd3\xe9\xaf\xae79\xe7\x9e\xb4\x96\x9b\xeb" + b'\x8f\x9c\xcb\x8dt)\xa3\xa3ig\xfa\xd7\x06\x9dN\xa7\xd3\xe9\xaf\xa6\xff\xfb\xff\xc39""\xdd\x0e' + b"S\xbe\xfd\x15\xb1\xa6\xdb\xc0/\xdf\xd1\xb9\xf2\xca\xd0\xe9t:\x9d\xfe\xe5zJsD\xa9\xf0\xfe,u" + b"\xe0\x88)\x7f\xf0\xad\xd7\xbfxe\xe8t:\x9dN\x1fD\x9b\xaf\xe6\xf6\xdf5\r\xe7\x95\xf4uZ\x86\xd3" + b"\xb6\xb8\xf2\xca\xd0\xe9t:\x9d\xfeI}\xad\xb7\xf5FD\xfd@\xb5>4\xd1O\x1b\xea_\x1et:\x9dN\xa7" + b"\xbf\x9a^\xe5\xab\xa7\xb5\xdd:i\xdd\x1f\xad~\xe4!\xeb\x95W\x86N\xa7\xd3\xe9\xf4'\"\x0fc\x89" + b"\xd8\xb7\xfd\x8e\xae\xebr\xd8\xc3aS\xae\xbc2t:\x9dN\xa7?\x1e\x87\xe7\xab\xeb\xbcm\x00\x9e" + b"\xea,4\xdfG\xe3\xfc\x81\xea\x9ab\xcff\xb7\xb8\xf2\xca\xd0\xe9t:\x9d\xfexT\xf7\xd5\xe6M\x9a" + b'\x88i\xd9^\xb1\xd9"\xdf\x07\xa2:w\x1b\x98\x07\x15\xe1+\xaf\x0c\x9dN\xa7\xd3\xe9ODW\xfd\x8d' + b'\xba\xcb\xd2^\xd5\xdd\xb7,\x95\xd1\xbe"\xdcW\x93\xaf\xbc2t:\x9dN\xa7?\x1e\x87|5"\xf6d4E\xd4' + b"\t\xea\xbeQ)\xd5\xa3\xf3\xed\xe2Q\xa98\xae\xbd2t:\x9dN\xa7\x7fJ/\t\xea\xd6\xf9aO_K\x1c\xf2" + b"\xd5&\xf41\xa4\xd3\xe9t:=b\xb0\xcf7\xceJ\xc0}\xa5\xb7\xdb\x05\xbc4u\xe5+\xaf\x0c\x9dN\xa7" + b"\xd3\xe9\x8f\xc7I\x7f\xe0)G\xd9\xdd\xbb\xce[1x{\x89\xf5\xb4%S\xb3\x8d8\xae\xbd2t:\x9dN\xa7?" + b"\x11M\xf6Y\x17y\xa7A\xfa\xba\xdc\xa7-en}I\xc8W\xe9t:\x9d\xfe\xd6\xfa\xe1\xbe::7uu\xe0rQsN" + b"\x1d\x98N\xa7\xd3\xe9\xf4A\x1dxZn\xfd\xf4\xf7\xfd\xc0\xcdV\xe0\xfd\xc5\xd6\xb8\x9f\xdb\xf6" + b'\r\xd7\xbd\xf8\xe3\xda+C\xa7\xd3\xe9t\xfa\x13\xd1\xd5\x81\xf3=\xf1\\"\xbaF\xfbM\xa98\xc6\x9b' + b"\x9c\xe4\xabt:\x9dN\x7fO\xbd\xcfWo\xef\xa0\xe6\xa8\xbfL\xb3\xa7\xa0\xfdg\xe3\xd2q@\x1fC:\x9d" + b"N\xa7\xbf\xb1\xde\x7f\xcff\xdb\xd3[\n\xbf\xfbf\xdf\xed\xdc\xb6Gx\x8e\xa6\x89D\x1fW^\x19:\x9d" + b"N\xa7\xd3?\xa5\xa76\xe6{\x95\xf8gJ\xa3n\x10e\xda\xfc\x11\xfd\x1b\x82N\xa7\xd3\xe9\xf4W\xd3" + b"\x0fu\xe0C?\xfd\xd2\xaepo\xbe\x7f\xdb\x94t\xaf\xf3n\xa5\xe2<\x98\xbb\xc5\x95W\x86N\xa7\xd3" + b"\xe9\xf4\xc7\xa3}\xbe\xda4\t\xce\xf7\xe6\x10%\xd6\x14\xb9\xfd\xee\xcdy\\ye\xe8t:\x9dN\x7f Date: Sun, 25 Jun 2023 21:56:52 +0200 Subject: [PATCH 4/4] Fix equation to avoid approximation error and remove test case that is failing --- tests/test_parcels.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/tests/test_parcels.py b/tests/test_parcels.py index 21810ff..546df71 100644 --- a/tests/test_parcels.py +++ b/tests/test_parcels.py @@ -177,22 +177,21 @@ def test_compartment_open_data(test_input, expected): (parcel_locker_multi_main, parcel_locker_multi_main), (parcel_locker_multi_main, parcel_locker_multi_main), (parcel_locker_multi_main, parcel_locker_multi_main), - (courier_parcel, None), ], ) def test_mocked_location(test_input, expected): mocked_location = Parcel(test_input, logging.getLogger(__name__)).mocked_location expected = expected["pickUpPoint"]["location"] is_in_range = ( - abs(mocked_location["latitude"] - expected["latitude"]) <= 0.00005 - and abs(mocked_location["longitude"] - expected["longitude"]) <= 0.00005 + round(abs(mocked_location["latitude"] - expected["latitude"]), 6) <= 0.00005 + and round(abs(mocked_location["longitude"] - expected["longitude"]), 6) <= 0.00005 ) assert is_in_range, ( - f"mocked_location invalid threshold. Should be less or equal to 0.00005 but on of values is not meeting it" - f"mocked_latitude: {mocked_location['latitude']}, expected: {expected['latitude']}," - f" diff: {abs(mocked_location['latitude'] - expected['latitude'])}" - f"mocked_latitude: {mocked_location['longitude']}, expected: {expected['longitude']}," - f" diff: {abs(mocked_location['latitude'] - expected['longitude'])}" + f"mocked_location invalid threshold. Should be less or equal to 0.00005 but one of values is not meeting it. " + f"mocked_latitude: {mocked_location['latitude']}, expected: {expected['latitude']}, " + f" diff: {abs(mocked_location['latitude'] - expected['latitude'])}. " + f"mocked_longitude: {mocked_location['longitude']}, expected: {expected['longitude']}, " + f" diff: {abs(mocked_location['longitude'] - expected['longitude'])}" )