
    i#                        d dl Z d dlZd dlZd dlZd dlZdhZi ddddddd	d
dddddddddddddddddddddd d!d"d#d$i d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAd4dBdCdDdEi dFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgi dhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dddmddoddqddsddui ddwddydd{dd}ddddddddddddddddddddddddddi dddddddddddddddddddddddddd&ddddddddi ddddddēddƓddȓddʓdd̓ddΓddГddғddԓdd֓ddГddٓddГddܓddܓi ddߓddddddddddddddddddddddddddddddddi d ddddddddd	d
dddddddddddddddddddddZ G d  d!ej                        Ze	d"k(  r ej                          yy(#      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                       e Zd Zed        Zed        Zd Zd Z ej                  d      d        Z
d Zd Zd	 Zd
 Zy)KeyModuleTestc                 ,    t        j                          y N)pygameinitclss    _/home/obispo/Crisostomo_bridge/mision_env/lib/python3.12/site-packages/pygame/tests/key_test.py
setUpClasszKeyModuleTest.setUpClass           c                 ,    t        j                          y r  )r  quitr  s    r
  tearDownClasszKeyModuleTest.tearDownClass   r  r  c                     t        j                         st        j                          t         j                  j                         st         j                  j                          y y r  )r  get_initr  displayselfs    r
  setUpzKeyModuleTest.setUp   s<      KKM~~&&(NN! )r  c                     ddl }y)zdoes it import?r   N)
pygame.key)r  r  s     r
  test_importzKeyModuleTest.test_import   s    r  z(flaky test, and broken on 2.0.18 windowsc                 ,   t         j                  j                         }| j                  |       | j	                  |t
               t        j                  j                  d      dk7  r<t         j                  j                         }|dk(  rdg}t         j                  j                  |d   t         j                         t         j                  j                  d       t         j                  j                          t         j                  j                         }| j	                  |t
               | j!                  |       t         j                  j#                          t        j$                  dk7  r0t         j                  j'                          t)        d      D ]5  }t+        j,                  d	       t         j                  j                          7 | j                  t         j                  j                                t         j                  j                  |d   t         j                         t)        d      D ]5  }t+        j,                  d	       t         j                  j                          7 | j!                  t         j                  j                                t         j                  j/                          | j1                  t         j2                        5 }t         j                  j                          d d d        y # 1 sw Y   y xY w)
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_focusedz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                     t         j                  j                         }| j                  |t         j                     d       y )Nr   )r  r#  get_pressedassertEqualr   )r  statess     r
  test_get_pressedzKeyModuleTest.test_get_pressed   s-    '')/3r  c                 X   t        t              D ][  }|j                  d      r|t        v r	 t        |   }t        t        |      }| j                  t        j                  j                  |             | j                  t        j                  j                  |      |       | j                  t        j                  j                  |      |       | j                  t        j                  j                  |      |       t        j                  j                  |d      }| j                  |t               | j                  t        j                  j                  |      |       ^ | j                  t        t        j                  j                  d       | j                  t        t        j                  j                  t        j                          | j                  t"        t        j                  j                  d       y # t
        $ r | j                  d       Y w xY w)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#  )r2  F)
use_compatfizzbuzz)dirr  
startswithSKIPPED_KEYSKEY_NAME_COMPATKeyErrorfailgetattrr?  r#  r2  key_coder&  strr7  	TypeErrorr   
ValueError)r  
const_nameexpected_str_name	const_valalt_names        r
  test_name_and_key_codez$KeyModuleTest.test_name_and_key_code   s   f+ !	G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!	GF 	)VZZ__jA)VZZ%8%8&**E*fjj&9&9:FA  		Vs   	HH)(H)c                    t         j                  j                  t         j                         | j	                  t         j                  j                         t         j                         t         j                  j                  t         j                         | j	                  t         j                  j                         t         j                         t         j                  j                  t         j                  t         j                  z         | j	                  t         j                  j                         t         j                  t         j                  z         y r  )r  r#  set_mods	KMOD_CTRLr?  get_modsKMOD_ALTr  s    r
  test_set_and_get_modsz#KeyModuleTest.test_set_and_get_mods  s    

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

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

F,,v>?,,.0@0@6??0RSr  c                    | j                  t        j                  j                         d       t        j                  j	                  dd       | j                  t        j                  j                         d       t        j                  j	                          | j                  t        j                  j                         d       y )N)r   r   
      )r]  r^  )r?  r  r#  
get_repeat
set_repeatr  s    r
  test_set_and_get_repeatz%KeyModuleTest.test_set_and_get_repeat'  s}    ..0&9

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

..0&9r  N)__name__
__module____qualname__classmethodr  r  r  r  unittestskipr<  rA  rU  r[  ra   r  r
  r  r     sj       " X]]=>'% ?'%R4'GRT:r  r  __main__)r(  r5  rf  r  r  rH  rI  TestCaser  rb  mainrh  r  r
  <module>rl     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HMMO r  