
    &h#                        S SK r S SKrS SKrS SKrS SKrS1r0 SS_SS_SS_S	S
_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS _S!S"_S#S$_0 S%S&_S'S(_S)S*_S+S,_S-S._S/S0_S1S2_S3S4_S5S6_S7S8_S9S:_S;S<_S=S>_S?S@_SAS4_SBSC_SDSE_E0 SFSG_SHSI_SJSK_SLSM_SNSO_SPSQ_SRSS_STSU_SVSW_SXSY_SZS[_S\S]_S^S__S`Sa_SbSc_SdSe_SfSg_E0 ShSi_SjSk_SlSm_SnSo_SpSq_SrSs_StSu_SvSw_SxSy_SzS{_S|S}_S~S_SSm_SSo_SSq_SSs_SSu_E0 SSw_SSy_SS{_SS}_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_E0 SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS&_SS_SS_SS_SS_E0 SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_E0 SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_E0 GS GS_GSGS_GSGS_GSGS_GSGS	_GS
GS_GSGS_GSGS_GSGS_GSGS_GSGS_GSGS_GSGS_GSGS_GSGS_GSGS_Er " GS  GS!\R                  5      r\	GS":X  a  \R                  " 5         gg(#      N	K_UNKNOWNK_00K_11K_22K_33K_44K_55K_66K_77K_88K_99	K_AC_BACKzAC BackK_AMPERSAND&
K_ASTERISK*K_AT@K_BACKQUOTE`K_BACKSLASH\K_BACKSPACE	backspaceK_BREAKbreak
K_CAPSLOCKz	caps lockK_CARET^K_CLEARclearK_COLON:K_COMMA,K_CURRENCYSUBUNITCurrencySubUnitK_CURRENCYUNITeuroK_DELETEdeleteK_DOLLAR$K_DOWNdownK_ENDendK_EQUALS=K_ESCAPEescapeK_EURO	K_EXCLAIM!K_F1f1K_F10f10K_F11f11K_F12f12K_F13f13K_F14f14K_F15f15K_F2f2K_F3f3K_F4f4K_F5f5K_F6f6K_F7f7K_F8f8K_F9f9	K_GREATER>K_HASH#K_HELPhelpK_HOMEhomeK_INSERTinsertK_KP0z[0]K_KP1z[1]K_KP2z[2]K_KP3z[3]K_KP4z[4]K_KP5z[5]K_KP6z[6]K_KP7z[7]K_KP8z[8]K_KP9z[9]K_KP_0K_KP_1K_KP_2K_KP_3K_KP_4K_KP_5K_KP_6K_KP_7K_KP_8K_KP_9K_KP_DIVIDEz[/]
K_KP_ENTERenterK_KP_EQUALSequals
K_KP_MINUSz[-]K_KP_MULTIPLYz[*]K_KP_PERIODz[.]	K_KP_PLUSz[+]K_LALTzleft altK_LCTRLz	left ctrlK_LEFTleftK_LEFTBRACKET[K_LEFTPAREN(K_LESS<K_LGUIz	left metaK_LMETAK_LSHIFTz
left shiftK_LSUPERK_MENUmenuK_MINUS-K_MODEzalt gr	K_NUMLOCKnumlockK_NUMLOCKCLEAR
K_PAGEDOWNz	page downK_PAGEUPzpage upK_PAUSE	K_PERCENT%K_PERIOD.K_PLUS+K_POWERpowerK_PRINTzprint screenK_PRINTSCREEN
K_QUESTION?K_QUOTE'
K_QUOTEDBL"K_RALTz	right altK_RCTRLz
right ctrlK_RETURNreturnK_RGUIz
right metaK_RIGHTrightK_RIGHTBRACKET]K_RIGHTPAREN)K_RMETAK_RSHIFTzright shiftK_RSUPERK_SCROLLLOCKzscroll lockK_SCROLLOCKK_SEMICOLON;K_SLASH/K_SPACEspaceK_SYSREQzsys reqK_TABtabK_UNDERSCORE_K_UPupK_aaK_bbK_ccK_ddK_eeK_ffK_ggK_hhK_iiK_jjK_kkK_llK_mmK_nnK_ooK_ppK_qqK_rrK_ssK_ttK_uuK_vvK_wwK_xxK_yyK_zzc                       \ rS rSr\S 5       r\S 5       rS rS r\	R                  " S5      S 5       rS rS	 rS
 rS rSrg)KeyModuleTest   c                 .    [         R                  " 5         g N)pygameinitclss    M/var/www/auris/envauris/lib/python3.13/site-packages/pygame/tests/key_test.py
setUpClassKeyModuleTest.setUpClass           c                 .    [         R                  " 5         g r  )r  quitr	  s    r  tearDownClassKeyModuleTest.tearDownClass   r  r  c                     [         R                  " 5       (       d  [         R                  " 5         [         R                  R                  5       (       d  [         R                  R                  5         g g r  )r  get_initr  displayselfs    r  setUpKeyModuleTest.setUp   sB       KKM~~&&((NN! )r  c                     SSK ng)zdoes it import?r   N)
pygame.key)r  r  s     r  test_importKeyModuleTest.test_import   s    r  z(flaky test, and broken on 2.0.18 windowsc                 <   [         R                  R                  5       nU R                  U5        U R	                  U[
        5        [        R                  R                  S5      S:w  Ga>  [         R                  R                  5       nUS:X  a  S/n[         R                  R                  US   [         R                  S9  [         R                  R                  S5        [         R                  R                  5         [         R                  R                  5       nU R	                  U[
        5        U R!                  U5        [         R                  R#                  5         [        R$                  S:w  Ga3  [         R                  R'                  5         [)        S5       H7  n[*        R,                  " S	5        [         R                  R                  5         M9     U R                  [         R                  R                  5       5        [         R                  R                  US   [         R                  S9  [)        S5       H7  n[*        R,                  " S	5        [         R                  R                  5         M9     U R!                  [         R                  R                  5       5        [         R                  R/                  5         U R1                  [         R2                  5       n[         R                  R                  5         S S S 5        g ! , (       d  f       g = f)
NSDL_VIDEODRIVERdummy)  r#  )sizeflagsTnt2   g{Gz?)r  keyget_focusedassertFalseassertIsInstanceintosenvirongetr  
list_modesset_mode
FULLSCREENeventset_grabpump
assertTruer+   nameiconifyrangetimesleepr  assertRaiseserror)r  focuseddisplay_sizesr   r   cms         r  test_get_focusedKeyModuleTest.test_get_focused   s    **((*!gs+::>>+,7"NN557M"!+NN##r):&BSBS#TLL!!$'LLjj,,.G!!'3/OOG$LL ww$&&( rAJJt$LL%%' #   !7!7!9:'']2->fFWFW'XrAJJt$LL%%' # 

 6 6 89v||,JJ""$ -,,s   %L
Lc                     [         R                  R                  5       nU R                  U[         R                     S5        g )Nr   )r  r(  get_pressedassertEqualr   )r  statess     r  test_get_pressedKeyModuleTest.test_get_pressed   s-    '')/3r  c                 \   [        [        5       GH[  nUR                  S5      (       a
  U[        ;   a  M&   [        U   n[        [        U5      nU R                  [        R                  R                  U5      W5        U R                  [        R                  R                  US9U5        U R                  [        R                  R                  U5      U5        U R                  [        R                  R                  US9U5        [        R                  R                  USS9nU R                  U[        5        U R                  [        R                  R                  U5      U5        GM^     U R                  [        [        R                  R                  S5        U R                  [        [        R                  R                  [        R                   5        U R                  ["        [        R                  R                  S5        g ! [
         a    U R                  S5         GNf = f)NK_zIf you are seeing this error in a test run, you probably added a new pygame key constant, but forgot to update key_test unitests)r(  )r7  F)
use_compatfizzbuzz)dirr  
startswithSKIPPED_KEYSKEY_NAME_COMPATKeyErrorfailgetattrrE  r(  r7  key_coder+  strr<  	TypeErrorr   
ValueError)r  
const_nameexpected_str_name	const_valalt_names        r  test_name_and_key_code$KeyModuleTest.test_name_and_key_code   s   f+J((..*2L$3J$?!  
3I VZZ__Y79JKVZZ___;=NO VZZ001BCYOVZZ006G0H)TzzyUCH!!(C0
 VZZ00:IFC &F 	)VZZ__jA)VZZ%8%8&**E*fjj&9&9:FA  		Vs   	HH+*H+c                    [         R                  R                  [         R                  5        U R	                  [         R                  R                  5       [         R                  5        [         R                  R                  [         R                  5        U R	                  [         R                  R                  5       [         R                  5        [         R                  R                  [         R                  [         R                  -  5        U R	                  [         R                  R                  5       [         R                  [         R                  -  5        g r  )r  r(  set_mods	KMOD_CTRLrE  get_modsKMOD_ALTr  s    r  test_set_and_get_mods#KeyModuleTest.test_set_and_get_mods  s    

F,,-,,.0@0@A

FOO,,,.@

F,,v>?,,.0@0@6??0RSr  c                    U R                  [        R                  R                  5       S5        [        R                  R	                  SS5        U R                  [        R                  R                  5       S5        [        R                  R	                  5         U R                  [        R                  R                  5       S5        g )N)r   r   
      )rf  rg  )rE  r  r(  
get_repeat
set_repeatr  s    r  test_set_and_get_repeat%KeyModuleTest.test_set_and_get_repeat'  s}    ..0&9

b"%..0(;

..0&9r   N)__name__
__module____qualname____firstlineno__classmethodr  r  r  r  unittestskiprA  rG  r\  rc  rj  __static_attributes__rl  r  r  r  r     sh       " ]]=>'% ?'%R4'GRT:r  r  __main__)r-  r:  rr  r  r  rO  rP  TestCaser  rm  mainrl  r  r  <module>rx     s   	     }Y	3Y	3Y 
3Y 
3	Y
 
3Y 
3Y 
3Y 
3Y 
3Y 
3Y Y 3Y #Y CY 3Y  4!Y" ;#Y$ w%Y& +'Y( s)Y* w+Y, s-Y. s/Y0 *1Y2 f3Y4 5Y6 7Y8 f9Y: U;Y< =Y> ?Y@ fAYB CYD DEYF UGYH UIYJ UKYL UMYN UOYP UQYR DSYT DUYV DWYX DYYZ D[Y\ D]Y^ D_Y` DaYb cYd ceYf fgYh fiYj kYl UmYn UoYp UqYr UsYt UuYv UwYx UyYz U{Y| U}Y~ UY@ eAYB eCYD eEYF eGYH eIYJ eKYL eMYN eOYP eQYR eSYT 5UYV 'WYX 8YYZ %[Y\ U]Y^ 5_Y` aYb jcYd {eYf fgYh SiYj 3kYl cmYn koYp {qYr sYt uYv fwYx syYz h{Y| }Y~ iY@ +AYB 	CYD wEYF GYH IYJ cKYL wMYN ~OYP ^QYR #SYT sUYV #WYX kYYZ |[Y\ ]Y^ l_Y` waYb ccYd CeYf |gYh iYj kYl MmYn =oYp 3qYr ssYt wuYv 	wYx UyYz C{Y| D}Y~ 
3Y@ 
3AYB 
3CYD 
3EYF 
3GYH 
3IYJ 
3KYL 
3MYN 
3OYP 
3QYR 
3SYT 
3UYV 
3WYX 
3YYZ 
3[Y\ 
3]Y^ 
3_Y` 
3aYb 
3cYd 
3eYf 
3gYh 
3iYj 
3kYl 
3mYn 
3oYp 
3qYxF:H%% F:R zMMO r  