
    i                     \    d Z ddlZddlZddlmZ d Zedk(  r e       Z eerdnd       yy)z~
Script de test pour l'endpoint /api/patterns-performance
Teste que l'API retourne correctement les statistiques des patterns
    N)datetimec                  f	   t        d       t        d       	 d} t        d|         t        j                  | d      }t        d|j                          |j                  dk7  r1t        d	|j                          t        d
|j                          y|j                         }t        d       t        d|j                  dd              |j                  d      st        d|j                  dd              y|j                  di       }t        d       t        d|j                  dd              t        d|j                  dd              t        d|j                  dd      dd       t        d|j                  dd      dd       t        d |j                  d!d      d"d       |j                  d#i       }t        d$       t        d%|j                  d&d              t        d'|j                  d(d              t        d)|j                  d*d              t        d+|j                  d,d              t        d-|j                  d.d              |j                  d/g       }t        d0t        |       d1       t        d2       t        |d3d d4      D ]*  \  }}d5d5d6d7d8d9j                  |j                  d:d;      d<      }t        d=| d>| d?|j                  d@dA              t        dB|j                  dCd      ddD|j                  dEd       dF|j                  dGd       dH       t        dI|j                  dJd              t        d |j                  d!d      d"d       t        dK|j                  dLdA              |j                  dM      st        dN       |dM   D ]  }	t        dO|	         - t        |      dkD  rt        dPt        |      dz
   dQ       t        dR       t        dS       yT# t        j                  j                  $ r t        dU       t        dV       Y yt        j                  j                  $ r t        dW       Y yt        $ r,}
t        dX|
        dd3l}|j                          Y d3}
~
yd3}
~
ww xY w)Yz'Test de l'endpoint patterns-performanceu1   🧪 Test de l'endpoint /api/patterns-performancez<============================================================z.http://localhost:8889/api/patterns-performanceu   
📡 Appel API: 
   )timeoutz   Status:    u      ❌ Erreur HTTP: z   Response: Fu   
✅ Réponse JSON reçuez   Success: successu      ❌ API error: errorUnknownglobal_statsu   
📊 Stats Globales:z   Total patterns: total_patternsr   z   Total trades: total_tradesz   Win Rate Global: global_win_ratez.1f%z   P&L Total: 	total_pnlz.2fz   P&L Moyen: avg_pnlz.3fstatus_countsu   
🎯 Status des Patterns:u      🟢 Excellent: 	excellentu      🟢 Bon: goodu      🟡 Moyen: mediumu      🟠 Faible: weaku      🔴 Critique: criticalpatternsu   
📋 Patterns (z):z<------------------------------------------------------------N   u   🟢u   🟡u   🟠u   🔴)r   r   r   r   r   statusunknownu   ⚪
z.  patternzN/Az   Win Rate: win_ratez% (winszW / losseszL)z   Total Trades: countz   Recommandation: recommendationoptimizationsu      Optimisations suggérées:u
         • z
   ... et z autres patternsz=
============================================================u   ✅ Test réussi!Tu2   
❌ Erreur: Impossible de se connecter au serveuruS      Vérifiez que dashboard_api_server.py est en cours d'exécution sur le port 8889u#   
❌ Erreur: Timeout de la requêteu   
❌ Erreur inattendue: )printrequestsgetstatus_codetextjsonlen	enumerate
exceptionsConnectionErrorTimeout	Exception	traceback	print_exc)urlresponsedatar   r   r   ir   status_emojiopter1   s               ./test_patterns_api.pytest_patterns_endpointr;      s    

=>	(OW>"3%()<<R0H001233&()=)=(>?@M(--12 }}*,TXXi789:xx	"&txx'C&DEF xx3&(#L$4$45Eq$I#JKL!,"2"2>1"E!FGH$\%5%56G%KC$PPQRS|//Q?DAFG|//	1=cB!DE %(("=+-#M$5$5k1$E#FGHm//:;<= 1 1(A >?@A !2!261!= >?@"=#4#4Z#C"DEF 88J+!#h-34h#HSbM15 	.JAw# " c'++h	2E:  BqcL>7;;y%+H*IJKM'++j!"<S!AW[[QWYZE[D\\`ahalalmuwxay`zz|}~%gkk'1&=%>?@N7;;y!#<S"ACD'4De(L'MNO{{?+57"?3 .CJse,-.#	.( x=2LX!3 44DEFo!".. CDcd&& 45 )!-.	s9   A>P A(P  J6P 8A%P 3R0'R0<R0"R++R0__main__r   )__doc__r&   r*   r   r;   __name__r   exit     r:   <module>rB      s?   
   ]~ z$&Gg1 rA   