@@ -636,6 +636,8 @@ def test_focus(self):
636636 self .assertEqual (e .x_root , '??' )
637637 self .assertEqual (e .y_root , '??' )
638638 self .assertEqual (e .delta , 0 )
639+ self .assertEqual (e .user_data , 'NotifyAncestor' )
640+ self .assertEqual (e .detail , 'NotifyAncestor' )
639641 self .assertEqual (repr (e ), '<FocusIn event>' )
640642
641643 def test_configure (self ):
@@ -669,6 +671,8 @@ def test_configure(self):
669671 self .assertEqual (e .x_root , '??' )
670672 self .assertEqual (e .y_root , '??' )
671673 self .assertEqual (e .delta , 0 )
674+ self .assertEqual (e .user_data , '??' )
675+ self .assertEqual (e .detail , '??' )
672676 self .assertEqual (repr (e ), '<Configure event x=0 y=0 width=150 height=100>' )
673677
674678 def test_event_generate_key_press (self ):
@@ -705,6 +709,8 @@ def test_event_generate_key_press(self):
705709 self .assertEqual (e .x_root , - 1 )
706710 self .assertEqual (e .y_root , - 1 )
707711 self .assertEqual (e .delta , 0 )
712+ self .assertEqual (e .user_data , '??' )
713+ self .assertEqual (e .detail , '??' )
708714 self .assertEqual (repr (e ),
709715 f"<KeyPress event state={ e .state :#x} "
710716 f"keysym=z keycode={ e .keycode } char='z' x={ e .x } y={ e .y } >" )
@@ -740,6 +746,8 @@ def test_event_generate_enter(self):
740746 self .assertEqual (e .x_root , 100 + f .winfo_rootx ())
741747 self .assertEqual (e .y_root , 50 + f .winfo_rooty ())
742748 self .assertEqual (e .delta , 0 )
749+ self .assertEqual (e .user_data , 'NotifyAncestor' )
750+ self .assertEqual (e .detail , 'NotifyAncestor' )
743751 self .assertEqual (repr (e ), '<Enter event focus=False x=100 y=50>' )
744752
745753 def test_event_generate_button_press (self ):
@@ -774,6 +782,8 @@ def test_event_generate_button_press(self):
774782 self .assertEqual (e .x_root , f .winfo_rootx () + 100 )
775783 self .assertEqual (e .y_root , f .winfo_rooty () + 50 )
776784 self .assertEqual (e .delta , 0 )
785+ self .assertEqual (e .user_data , '??' )
786+ self .assertEqual (e .detail , '??' )
777787 self .assertEqual (repr (e ), '<ButtonPress event num=1 x=100 y=50>' )
778788
779789 def test_event_generate_motion (self ):
@@ -808,6 +818,8 @@ def test_event_generate_motion(self):
808818 self .assertEqual (e .x_root , f .winfo_rootx () + 100 )
809819 self .assertEqual (e .y_root , f .winfo_rooty () + 50 )
810820 self .assertEqual (e .delta , 0 )
821+ self .assertEqual (e .user_data , '??' )
822+ self .assertEqual (e .detail , '??' )
811823 self .assertEqual (repr (e ), '<Motion event state=Button1 x=100 y=50>' )
812824
813825 def test_event_generate_mouse_wheel (self ):
@@ -842,6 +854,8 @@ def test_event_generate_mouse_wheel(self):
842854 self .assertEqual (e .x_root , f .winfo_rootx () + 100 )
843855 self .assertEqual (e .y_root , f .winfo_rooty () + 50 )
844856 self .assertEqual (e .delta , - 5 )
857+ self .assertEqual (e .user_data , '??' )
858+ self .assertEqual (e .detail , '??' )
845859 self .assertEqual (repr (e ), '<MouseWheel event delta=-5 x=100 y=50>' )
846860
847861 def test_generate_event_virtual_event (self ):
@@ -876,9 +890,18 @@ def test_generate_event_virtual_event(self):
876890 self .assertEqual (e .x_root , f .winfo_rootx () + 50 )
877891 self .assertEqual (e .y_root , - 1 )
878892 self .assertEqual (e .delta , 0 )
893+ self .assertEqual (e .user_data , '' )
894+ self .assertEqual (e .detail , '' )
879895 self .assertEqual (repr (e ),
880896 f"<VirtualEvent event x=50 y=0>" )
881897
898+ f .event_generate ('<<Spam>>' , data = 'spam' )
899+ self .assertEqual (len (events ), 2 , events )
900+ e = events [1 ]
901+ self .assertIs (e .type , tkinter .EventType .VirtualEvent )
902+ self .assertEqual (e .user_data , 'spam' )
903+ self .assertEqual (e .detail , 'spam' )
904+
882905
883906class BindTest (AbstractTkTest , unittest .TestCase ):
884907
0 commit comments