
    iYL                         d dl mZ d dlZd dlZd dlZd dlZdZdZdZdZ	g Z
g ZdZdZdZg dZeD ]m  Z	  ej"                  e d	e	d
ddedd      Zej&                  dk(  r$ej                         ZdZde Z ede         n ede dej&                          o  e       5 Zej0                  j3                  ddg      Zej7                  ddd      Zej;                         Zej?                  dd        es ed       	 ejA                  ed z   d!d"#       ejC                  d$       ejE                  d%      Z#e#rWe#jI                          ejC                  d&       ejK                  ejL                  jO                  ed'      d(        ed)       n> ed*       ejQ                  d+      Z)e)D ]   Z*e*jW                         Z, ed,e,dd-         " eD ]$  ZejE                  d.      Z-ejE                  d/      Z.e-re.rej_                  d.d       ej_                  d/e       ejE                  d0      Z0e0sbe0jI                          ejC                  d1       ejb                  Z2d e2vrdZd2e Z ed3e d4e2         n~ ed5e        eed6   k7  sejA                  ed z   d!d7#       ejC                  d8       ejE                  d%      Z3e3se3jI                          ejC                  d&        ed9        n ererd;exs d<v rejA                  ed z   d!d"#       ejC                  d8       eji                  d=      Z5 ed>e5        d?Z6ejo                  d@      ejo                  dA      dBejo                  dCdD      ejo                  dE      ejo                  dF      dGZ8eji                  dHe6 dI ejr                  e8       dJ       ejC                  dK        edLe6        ejA                  edMz   d!d"#       ejC                  d1       ejb                  Z:d e:vZ;e
jy                  dNeee; e:dO       e;r] edP       ejK                  ejL                  jO                  edQ      d(       ejA                  edRz   d!d"#       ejC                  dS       ejK                  ejL                  jO                  edT      d(       ejE                  dU      rejW                  dU      ddK nd<Z=e
jy                  dRdVejb                  d ejb                  v dTe=dd dW       g dXZ>e>D ]  \  Z&Z? e@e      ZA	 ejA                  ee&z   d!d"#       ejC                  dS       ejK                  ejL                  jO                  ee?      d(       eeAd ZBejE                  dU      rejW                  dU      ddK nd<Z=e
jy                  e&e?dVejb                  d ejb                  v  e@eB      eBD  cg c]
  } | dY   dd  c} e=dd dZ        g d^ZDeDD ]  \  Z&Z? e@e      ZA	 ejA                  ee&z   d!d"#       ejC                  dS       ejK                  ejL                  jO                  ee?      d(       eeAd ZBejE                  dU      rejW                  dU      ddK nd<Z=e
jy                  e&e?dVejb                  d ejb                  v  e@eB       e@e=      d-kD  e=dd d_        g d`ZEeED ]"  ZF	 ejA                  eeFz   d!d"#       ejC                  dS       daeFj                  dbdc      j                  dc       ddZ?ejK                  ejL                  jO                  ee?      d(       ej                         ZJejE                  dU      rejW                  dU      ddK nd<Z=deeJv xs dfeJj                         v xs dgeJv ZLdheJv xs dieJv xs
 djeJv xs dkeJv ZMdleJv ZNe
jy                  eFdme?dVejb                  d ejb                  v eLeMeNe=dd\ dn
       % ejA                  edMz   d!d"#       ejC                  dS       ejE                  dp      ZOejQ                  dq      ZPePD cg c]  }|j                  dr      xs d<dds  c}ZRe
jy                  dteOdu e@eP      eRdu       n edv       ejA                  ed z   d!d"#       ejC                  d$       ejK                  ejL                  jO                  edw      d(       ejE                  d%      Z#e#rNe#jI                          ejC                  d&       ejK                  ejL                  jO                  edx      d(       ej                         ZJ eSejE                  d.            ZT eSejE                  d/            ZUe
jy                  d dydzeTeUd{eJj                         v dxd|       g d}ZVg ZWeVD ]T  ZX	 ejA                  eeXz   d!d7#       ejC                  d&       ejb                  ZYd eYv ZZeWjy                  eXeZeZrd~nd[d       V e
jy                  d e[d eWD              eWd       ej                          ej7                  ddd      Z]e]j;                         Z^e^j?                  dd        ererd;exs d<v re^jA                  ed z   d!d"#       ejC                  dK       d?Z6ejo                  d@      ejo                  dA      dBejo                  dCdD      ejo                  dE      ejo                  dF      dGZ8e^ji                  de6 d ejr                  e8       d       	 e^jA                  ed z   d!d"#       e^jC                  d$       e^jK                  ejL                  jO                  ed      d(       e^jE                  dU      re^jW                  dU      dd\ nd<Z_de_v Z`e
jy                  dddVde`e_dd d       e^jA                  edMz   d!d"#       e^jC                  d1       e^jb                  ZYd eYvZae^jQ                  dq      ZPg ZbePD ]+  Zcecj                  dr      xs d<Zdebjy                  eddd        - e^j                         Zedeev xs deev Zfdeev Zge^jK                  ejL                  jO                  ed      d(       e
jy                  dddVeYea  e@eP      ebefegd	       eare^jA                  edz   d!d"#       e^jC                  dS       e^jQ                  dq      ZhehD cg c]  }|j                  dr      xs d<dd  c}Zie^jK                  ejL                  jO                  ed      d(       e
jy                  dddVe^jb                   e@eh      eid       e]j                          ej                          ddd       eee
 e@e      edd- D  cg c]  } | d   | dY   dd | d   d c} dZj ekejL                  jO                  ed      d      5 Zl ej                  ejeldd       ddd        e ejr                  ejdd             y# e$ rZ ede        Y dZ[dZ[ww xY w# e$ rZ ed:e        Y dZ[_dZ[ww xY wc c} w # e$ r*Ze
jy                  e&e?d[ eCe      dd\ d]       Y dZ[	pdZ[ww xY w# e$ r*Ze
jy                  e&e?d[ eCe      dd\ d]       Y dZ[dZ[ww xY w# e$ r*Ze
jy                  eFdmd[ eCe      dd\ do       Y dZ[dZ[ww xY wc c}w # e$ r)ZeWjy                  eXd eCe      dds d       Y dZ[hdZ[ww xY wc c}w # e$ r)Ze
jy                  dd[ eCe      dd\ d       Y dZ[dZ[ww xY w# 1 sw Y   xY wc c} w # 1 sw Y   {xY w)    )sync_playwrightNz1/home/jay/workspace/memory/screenshots/insuro-e2ezhttp://127.0.0.1:5173z(https://zayhfjuwviporbzokudr.supabase.cozeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InpheWhmanV3dmlwb3Jiem9rdWRyIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NzMwNDY1MTksImV4cCI6MjA4ODYyMjUxOX0.aRQpYgl5ZeHxh4PTnVm_1Hwky2h83-Cb_8RGlv-xP9sF)zinsuro2024!zInsUr0Test!z	test1234!password123z"/auth/v1/token?grant_type=passwordzapplication/json)apikeyzContent-Typezdrumband@gmail.com)emailpassword
   )headersjsontimeout   Tz	REST_API:z[REST] Login succeeded: z[REST] Failed (z): z[REST] Error: z--no-sandbox)headlessargsi   i  )widthheight)viewportconsolec                     | j                   dk(  r;t        j                  | j                   | j                  t        j
                  d      S d S Nerrortypetexturl)r   all_console_errorsappendr   pager   msgs    J/home/jay/workspace/memory/screenshots/insuro-e2e/test_authenticated_v3.py<lambda>r    +   s@    
((g
 $6#<#<#((488> $ #'     u8   [UI] Trying UI login — clicking 이메일로 계속...z/loginnetworkidlei:  )
wait_untilr   i  u&   button:has-text("이메일로 계속")i   zauth-00-email-form.png)path	full_pagez[UI] Email form revealedu.   [UI] Could not find 이메일로 계속 buttonbuttonz
  Button: 2   zinput[type="email"]zinput[type="password"]zbutton[type="submit"]i  zUI:z[UI] Login SUCCESS: z -> z[UI] Login FAILED: i'  i  z)[UI] Could not find email/password inputsz[UI] Error: REST z
            () => {
                const keys = [];
                for (let i = 0; i < localStorage.length; i++) {
                    keys.push(localStorage.key(i));
                }
                return keys;
            }
        z![LS] Existing localStorage keys: z"sb-zayhfjuwviporbzokudr-auth-tokenaccess_tokenrefresh_tokenbearer
expires_ini  
expires_atuser)r+   r,   
token_typer.   r/   r0   z2
            () => {
                const key = "z0";
                const value = JSON.stringify(z);
                window.localStorage.setItem(key, value);
                console.log("Session injected:", key);
            }
        i  z [LS] Session injected with key: /intro
auth_state)checklogin_successauth_methodintro_redirected_to_loginfinal_url_after_intro_navz/[AUTH] Authenticated! Running full E2E tests...zauth-01-intro.png/onboardingi  zauth-02-onboarding.pngbodyOK)r$   status	final_url
redirected
screenshotsnippet))	/generatezauth-03-generate.png)/crm/dashboardzauth-03-crm-dashboard.png)/ai-automationzauth-03-ai-automation.png)/info-keywordzauth-03-info-keyword.png)/insuwiki-introzauth-03-insuwiki-intro.png)	/settingszauth-03-settings.png)	/contentszauth-03-contents.pngr   )r$   r?   r<   r=   r>   console_errorserror_detailsr@   FAILi,  )r$   r?   r<   r   ))/crm/customerszauth-04-crm-customers.png)/crm/pipelinezauth-04-crm-pipeline.png)/crm/messengerzauth-04-crm-messenger.png)r$   r?   r<   r=   r>   rH   has_contentr@   )/ai-onestoprC   rD   zauth-05-locked-/-z.pngLocklockedu   잠금u   업그레이드u   프리미엄u   플랜Premiumblurpremium_lock)
r$   r4   r?   r<   r=   r>   has_lock_indicatorhas_upgrade_ctahas_blur_effectr@   )r$   r4   r<   r   z"aside, [data-sidebar], nav.sidebarnavclassd   desktop_navigation)r4   has_sidebar	nav_countnav_classesz/[AUTH] Not authenticated. Redirected to /login.zauth-00-login-page.pngzauth-00-email-form-revealed.pnglogin_page_analysisUNAUTHENTICATEDgoogle)r$   r4   r<   has_email_input_after_clickhas_password_input_after_clickhas_google_oauthr?   )r2   r9   rA   rB   rK   rL   rM   rC   rO   rD   rE   rF   rG   PASS)routeredirected_to_loginr<   ERROR)rh   r<   r   protected_route_redirectsc              #   @   K   | ]  }|j                  d d        yw)ri   FN)get).0rs     r   	<genexpr>rp   @  s     ZAAEE"7?Zs   )r4   all_passdetailsiw  i,  c                     | j                   dk(  r;t        j                  | j                   | j                  t        j
                  d      S d S r   )r   r   r   r   mobile_pager   r   s    r   r    r    I  sA    
((g
 +=*C*C#((;??E + #' r!   zB
            () => {
                window.localStorage.setItem("z", JSON.stringify(z));
            }
        zauth-06-mobile-login.pngInsuRoz/login (mobile 375px)mobile_login_page)r$   r4   r<   r?   has_mobile_logor@   x   zfixed bottomzbottom-0z	md:hiddenzauth-06-mobile-intro.pngz/intro (mobile 375px)mobile_responsive)	r$   r4   r<   r=   ri   r_   r`   has_fixed_bottom_in_htmlhas_md_hidden_classrA   zauth-06-mobile-generate.pngz/generate (mobile 375px))r$   r4   r<   r=   r_   r`   mobile)r$   r<   r   r   r   r   )r5   r6   resultstotal_console_errorsconsole_errors_detailzresults_authenticated.jsonw   )indentensure_ascii)nplaywright.sync_apir   osr
   requeststimeSCREENSHOT_DIRBASE_URLSUPABASE_URLSUPABASE_KEYr}   r   r5   r6   session_datatest_passwordspwdpostrespstatus_codeprint	Exceptionepchromiumlaunchbrowsernew_contextcontextnew_pager   ongotowait_for_timeoutquery_selector	email_btnclickr?   r$   joinquery_selector_allbtnsb
inner_texttxtemail_input	pwd_inputfill
submit_btnr   current_url
email_btn2evaluateexisting_keysstorage_keyrm   token_payloaddumps	intro_urlauth_workingr   	body_textdashboard_pagesss_namelenerrors_before
new_errorsstr	crm_pagespremium_pagesppreplacestripcontent	body_htmllowerhas_lockhas_upgradehas_blursidebarall_navsget_attributer`   bool	has_emailhas_pwdprotected_routesredirect_resultsrh   r=   r>   allclosemobile_contextrt   
login_bodyhas_mobile_only_logoauth_on_mobilenav_inforZ   cls	page_htmlhas_fixed_bottomhas_mobile_nav_class	all_navs2	nav_info2outputopenfdump)r   rZ   s   00r   <module>r      s!   /  D"9 b
  L $C$x}}n>?+=OP/SA	
 s"99;L M%cU+K,SE23OC5D,<,<+=>?$&  !jj^4DEG !!TS+I!JGDGGI ( )
 HI7	&IIh)mUIS!!$' ++,TUI!%%c*RWW\\.BZ%[gkl01FG..x8 3A,,.CJs3Bxj123 & !"112GH //0HI	9II35IJII6< "&!4!45L!MJ!"((*--d3&*hh#;6,0M,/u+K!$8T+"OP!!$7u"=>"nR&88 $		(X*=-af	 g $ 5 5d ;-1-@-@Ai-j
#-$.$4$4$6$($9$9#$>EFC!N &[5FB*G		(X%-	Od#  '  	1-AB ;(,,^<)--o>"&**<>&**<8 $$V,
 	 )] +..8djj.G-H I	 	 	c"0>? 	IIh!mUIK$I9,LNN&")5%5%.  ?ARWW\\.:MNZ^_ 			(]*}e	Td#RWW\\.:RS_cd595H5H5PDOOF+DS1VX	!T"dhh.2 #	
 	
 - 	oMD' 23Mo		(T/mU	S%%d+RWW\\.'%JVZ[/?
=A=P=PQW=XDOOF3DS9^`	 4!%"*dhh"6&)*o?I%J!aio%J(#  	o(
	
 ' 	oMD' 23Mo		(T/mU	S%%d+RWW\\.'%JVZ[/?
=A=P=PQW=XDOOF3DS9^`	 4!%"*dhh"6&)*o#&y>B#6(#  	o( K 	oBo		(R-M5	Q%%d++BJJsC,@,F,Fs,K+LDQRWW\\.'%JVZ[ LLN	=A=P=PQW=XDOOF3DS9^`	!Y.h(ioo>O2OhS[_hSh/9<  OR[@[  O_gkt_t  O  yB  FO  yO!Y.w""*dhh"6*2'2'/(#  	o0 			(X%-	Od#%%&JK**51KSTC))'28b$3?T)"$.X&	
 	 	?A		(X%-	Od#RWW\\.:RS_cd ''(PQ	OO!!#&OOn>_!`lpOqLLN	,,-BCD	t**+CDE*'+4.5 (IOO,= =;
 	
 % 	dEd		(U*}e	T%%c* HH	%2
 ''"+5(2f) 	d 	0ZIYZZ'
 	 MMO ((C32O(PN ))+KNN9 ( )
 &[5FB*GH,PUVc":(,,^<)--o>"&**<>&**<8 $$V,
 	 "..9]:LZTZZXeMfLg h	 	ATH,PUV$$T*BGGLLA[$\hmn=H=W=WX^=_[++F3DS9eg
':5+(43!$3'
 	 	H,PUV$$T*OO	!2 11%8 	'C##G,2COOCI&	'
  '')	)Y6Q*	:Q*i7BGGLLA[$\hmn+("'5#5X#(8#7

 
	 X3W\]((.#66u=IMVWc#++G4:DSAWI""^Eb(cot"uNN2,(__ ^(  MMOF # 23 $CR( 6AfIdsOAeHE	
 
"'',,~'C
DcJ 7aDIIfa67 jdjj6 7e  $qc"##$L  	&L$%%	&~ &K  oGv`cde`fgkhk`lmnno2  oGv`cde`fgkhk`lmnno2  o^v`cde`fgkhk`lmnno Un  d ''%7UXYZU[\`]`Ua(bccdt X  TFSVDS\RSSTw N
7 7s  Ax.x.&A"}1	D3y=Ay;y.yH4}18B2y/*y*9y/}1Cz! }1-D{A}1|;E}1A|
 D}1 G} |;!A} 9 }12}>3~.y	3yy	y'y"}1"y''}1*y//z4z}1z}1!{&{}1{}1|{=7}1=|}1
|8|3-}13|88}1;}  }.})#}1)}..}11};~