a 4êdgvã@sŠddlZddlZddlZddlmZddlmZddlmZmZddl m Z edƒgd¢Z Gdd „d e ej ƒZ e fZed kr†eeŽdS) éN)Úttk)Úsupport)ÚrequiresÚ run_unittest)ÚAbstractTkTestZgui)Ú.ZComboboxPopdownFrameZHeadingzHorizontal.TProgressbarzHorizontal.TScaleZItemZSashÚTButtonZ TCheckbuttonZ TComboboxZTEntryZ TLabelframezTLabelframe.LabelZ TMenubuttonZ TNotebookz TNotebook.TabZ ToolbuttonZ TProgressbarZ TRadiobuttonÚTreeviewZTScaleZ TScrollbarZTSpinboxzVertical.TProgressbarzVertical.TScalecsTeZdZ‡fdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z ‡Z S)Ú StyleTestcstƒ ¡t |j¡|_dS)N)ÚsuperÚsetUprZStyleÚrootÚstyle)Úself©Ú __class__©ú|j}|jddd| | dd¡d¡| | d¡t¡dS)NrÚyellow©Ú backgroundr)rÚ configureÚ assertEqualÚassertIsInstanceÚdict©rrrrrÚtest_configures ÿzStyleTest.test_configurec Csà|j}dgdgfD]Š}|j|dj|jdg|¢d‘Rgddg}| | dd¡|¡| d¡}| |t¡| |d|¡Wdƒq1s’0Yqd d gd gd gfD]Œ}|j|dj|jdg|¢d ‘Rgddg}| | dd¡|¡| d¡}| |t¡| |d|¡Wdƒq°1s20Yq°gdgdgfD]Ž}|j|dj|jdg|¢d‘Rgddg}| | dd¡|¡| d¡}| |t¡| |d|¡Wdƒn1sÎ0YqLdS)NÚactive)r)ÚstatesrÚwhiter)rrrÚpressedú !disabledzpressed !disabled)r r!Úblack)r r!r"ÚrÚgrey)r$)rÚsubTestÚmaprrr)rrrZexpectedÚmrrrÚtest_map$s2  0  2  zStyleTest.test_mapcCsn|j}|jddd|jddgd| | dd¡d¡| | ddddg¡d¡| |jddd d d ¡dS) Nrrr)rrÚbluerrr)ZoptionnotdefinedZiknewit)Údefault)rrr&rÚlookuprrrrÚ test_lookupFs ÿÿ ÿÿzStyleTest.test_lookupcCsœ|j}| tj|jd¡| d¡}| dd¡| | d¡dddifg¡| d|¡| | d¡|¡| | d¡t¡| tj|jddd d ifg¡dS) NZ NotALayoutr r#ZnullZstickyZnswerÚnameÚoptionZ inexistent)rÚ assertRaisesÚtkinterÚTclErrorZlayoutrrÚlist)rrZtv_stylerrrÚ test_layoutRs    ÿ  ÿzStyleTest.test_layoutcCs„| tj|jjd¡|j ¡}d}|j ¡D] }||kr,|}|j |¡qRq,dS| ||k¡| ||j ¡k¡|j |¡dS)NZnonexistingname)r/r0r1rÚ theme_useÚ theme_namesZ assertFalse)rÚ curr_themeZ new_themeÚthemerrrÚtest_theme_useisÿ  zStyleTest.test_theme_usec Cs4|j}|j ¡}| |jj|¡|j ¡D]}|j |¡tD]ì}| |¡}|sTq@|j||d¸tjdkr|t d|||ƒ|dvr¦t   ¡dd…dkr¦Wdƒq@d|›}|  | |¡d¡|j|fi|¤Ž|  | |¡|¡|  ¡D]\}}|  | ||¡|¡qîWdƒq@1s"0Yq@q*dS)N©r7r-ér©ZvistaZxpnative©ééúC.)rr4Ú addCleanupr5Ú CLASS_NAMESrr%rÚverboseÚprintÚsysÚgetwindowsversionrÚitems© rrr6r7r-r*ZnewnameÚkeyÚvaluerrrÚtest_configure_custom_copy~s,    ÿ z$StyleTest.test_configure_custom_copyc Cs4|j}|j ¡}| |jj|¡|j ¡D]}|j |¡tD]ì}| |¡}|sTq@|j||d¸tjdkr|t d|||ƒ|dvr¦t   ¡dd…dkr¦Wdƒq@d|›}|  | |¡i¡|j|fi|¤Ž|  | |¡|¡|  ¡D]\}}|  | ||¡|¡qîWdƒq@1s"0Yq@q*dS)Nr9r:r&r;r<r?)rr4r@r5rAr&r%rrBrCrDrErrFrGrrrÚtest_map_custom_copy˜s,    ÿ zStyleTest.test_map_custom_copy) Ú__name__Ú __module__Ú __qualname__r rr(r,r3r8rJrKÚ __classcell__rrrrr s " r Ú__main__)ZunittestrDr0rÚtestrZ test.supportrrZtkinter.test.supportrrAZTestCaser Z tests_guirLrrrrÚs