+void EventPropagationTestCase::ScrollWindowWithoutHandler()
+{
+ TestScrollWindow * const
+ win = new TestScrollWindow(wxTheApp->GetTopWindow());
+ wxON_BLOCK_EXIT_OBJ0( *win, wxWindow::Destroy );
+
+ wxPaintEvent event(win->GetId());
+ win->ProcessWindowEvent(event);
+ CPPUNIT_ASSERT_EQUAL( "PD", g_str );
+}
+
+void EventPropagationTestCase::ScrollWindowWithHandler()
+{
+ TestScrollWindow * const
+ win = new TestScrollWindow(wxTheApp->GetTopWindow());
+ wxON_BLOCK_EXIT_OBJ0( *win, wxWindow::Destroy );
+
+ TestPaintEvtHandler h('h');
+ win->PushEventHandler(&h);
+ wxON_BLOCK_EXIT_OBJ1( *win, wxWindow::PopEventHandler, false );
+
+ wxPaintEvent event(win->GetId());
+ win->ProcessWindowEvent(event);
+ CPPUNIT_ASSERT_EQUAL( "ohPD", g_str );
+}
+