From a523d3c64391034906973857908bdf1d3a82d0cb Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 30 Jun 2012 16:33:36 +0000 Subject: [PATCH] Add a unit test verifying that wxSpinCtrl ctor doesn't generate any events. This shouldn't happen but did (and apparently still does, sometimes) under MSW so add a test verifying that no events are generated by the ctor. See #14428. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- tests/controls/spinctrltest.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/controls/spinctrltest.cpp b/tests/controls/spinctrltest.cpp index 5b677f7571..12b68102d2 100644 --- a/tests/controls/spinctrltest.cpp +++ b/tests/controls/spinctrltest.cpp @@ -34,6 +34,7 @@ public: private: CPPUNIT_TEST_SUITE( SpinCtrlTestCase ); CPPUNIT_TEST( Initial ); + CPPUNIT_TEST( NoEventsInCtor ); WXUISIM_TEST( Arrows ); WXUISIM_TEST( Wrap ); CPPUNIT_TEST( Range ); @@ -41,6 +42,7 @@ private: CPPUNIT_TEST_SUITE_END(); void Initial(); + void NoEventsInCtor(); void Arrows(); void Wrap(); void Range(); @@ -89,6 +91,23 @@ void SpinCtrlTestCase::Initial() CPPUNIT_ASSERT_EQUAL( 99, m_spin->GetValue() ); } +void SpinCtrlTestCase::NoEventsInCtor() +{ + // Verify that creating the control does not generate any events. This is + // unexpected and shouldn't happen. + wxWindow* const parent = m_spin->GetParent(); + delete m_spin; + m_spin = new wxSpinCtrl; + + EventCounter updated(m_spin, wxEVT_COMMAND_SPINCTRL_UPDATED); + + m_spin->Create(parent, wxID_ANY, "", + wxDefaultPosition, wxDefaultSize, 0, + 0, 100, 17); + + CPPUNIT_ASSERT_EQUAL(0, updated.GetCount()); +} + void SpinCtrlTestCase::Arrows() { #if wxUSE_UIACTIONSIMULATOR -- 2.45.2