| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229 | 
							- ///////////////////////////////////////////////////////////////////////////////
 
- // Name:        tests/controls/radioboxtest.cpp
 
- // Purpose:     wxRadioBox unit test
 
- // Author:      Steven Lamerton
 
- // Created:     2010-07-14
 
- // Copyright:   (c) 2010 Steven Lamerton
 
- ///////////////////////////////////////////////////////////////////////////////
 
- #include "testprec.h"
 
- #if wxUSE_RADIOBOX
 
- #ifdef __BORLANDC__
 
-     #pragma hdrstop
 
- #endif
 
- #ifndef WX_PRECOMP
 
-     #include "wx/app.h"
 
-     #include "wx/radiobox.h"
 
- #endif // WX_PRECOMP
 
- #include "wx/tooltip.h"
 
- class RadioBoxTestCase : public CppUnit::TestCase
 
- {
 
- public:
 
-     RadioBoxTestCase() { }
 
-     void setUp();
 
-     void tearDown();
 
- private:
 
-     CPPUNIT_TEST_SUITE( RadioBoxTestCase );
 
-         CPPUNIT_TEST( FindString );
 
-         CPPUNIT_TEST( RowColCount );
 
-         CPPUNIT_TEST( Enable );
 
-         CPPUNIT_TEST( Show );
 
-         CPPUNIT_TEST( HelpText );
 
-         CPPUNIT_TEST( ToolTip );
 
-         CPPUNIT_TEST( Selection );
 
-         CPPUNIT_TEST( Count );
 
-         CPPUNIT_TEST( SetString );
 
-     CPPUNIT_TEST_SUITE_END();
 
-     void FindString();
 
-     void RowColCount();
 
-     void Enable();
 
-     void Show();
 
-     void HelpText();
 
-     void ToolTip();
 
-     void Selection();
 
-     void Count();
 
-     void SetString();
 
-     wxRadioBox* m_radio;
 
-     DECLARE_NO_COPY_CLASS(RadioBoxTestCase)
 
- };
 
- // register in the unnamed registry so that these tests are run by default
 
- CPPUNIT_TEST_SUITE_REGISTRATION( RadioBoxTestCase );
 
- // also include in its own registry so that these tests can be run alone
 
- CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( RadioBoxTestCase, "RadioBoxTestCase" );
 
- void RadioBoxTestCase::setUp()
 
- {
 
-     wxArrayString choices;
 
-     choices.push_back("item 0");
 
-     choices.push_back("item 1");
 
-     choices.push_back("item 2");
 
-     m_radio = new wxRadioBox(wxTheApp->GetTopWindow(), wxID_ANY, "RadioBox",
 
-                              wxDefaultPosition, wxDefaultSize, choices);
 
- }
 
- void RadioBoxTestCase::tearDown()
 
- {
 
-     wxTheApp->GetTopWindow()->DestroyChildren();
 
- }
 
- void RadioBoxTestCase::FindString()
 
- {
 
-     CPPUNIT_ASSERT_EQUAL(wxNOT_FOUND, m_radio->FindString("not here"));
 
-     CPPUNIT_ASSERT_EQUAL(1, m_radio->FindString("item 1"));
 
-     CPPUNIT_ASSERT_EQUAL(2, m_radio->FindString("ITEM 2"));
 
-     CPPUNIT_ASSERT_EQUAL(wxNOT_FOUND, m_radio->FindString("ITEM 2", true));
 
- }
 
- void RadioBoxTestCase::RowColCount()
 
- {
 
- #ifndef __WXGTK__
 
-     wxArrayString choices;
 
-     choices.push_back("item 0");
 
-     choices.push_back("item 1");
 
-     choices.push_back("item 2");
 
-     m_radio = new wxRadioBox(wxTheApp->GetTopWindow(), wxID_ANY, "RadioBox",
 
-                              wxDefaultPosition, wxDefaultSize, choices, 2);
 
-     CPPUNIT_ASSERT_EQUAL(2, m_radio->GetColumnCount());
 
-     CPPUNIT_ASSERT_EQUAL(2, m_radio->GetRowCount());
 
-     m_radio = new wxRadioBox(wxTheApp->GetTopWindow(), wxID_ANY, "RadioBox",
 
-                              wxDefaultPosition, wxDefaultSize, choices, 1,
 
-                              wxRA_SPECIFY_ROWS);
 
-     CPPUNIT_ASSERT_EQUAL(3, m_radio->GetColumnCount());
 
-     CPPUNIT_ASSERT_EQUAL(1, m_radio->GetRowCount());
 
- #endif
 
- }
 
- void RadioBoxTestCase::Enable()
 
- {
 
- #ifndef __WXOSX__
 
-     m_radio->Enable(false);
 
-     CPPUNIT_ASSERT(!m_radio->IsItemEnabled(0));
 
-     m_radio->Enable(1, true);
 
-     CPPUNIT_ASSERT(!m_radio->IsItemEnabled(0));
 
-     CPPUNIT_ASSERT(m_radio->IsItemEnabled(1));
 
-     CPPUNIT_ASSERT(!m_radio->IsItemEnabled(2));
 
-     m_radio->Enable(true);
 
-     CPPUNIT_ASSERT(m_radio->IsItemEnabled(0));
 
-     CPPUNIT_ASSERT(m_radio->IsItemEnabled(1));
 
-     CPPUNIT_ASSERT(m_radio->IsItemEnabled(2));
 
-     m_radio->Enable(0, false);
 
-     CPPUNIT_ASSERT(!m_radio->IsItemEnabled(0));
 
-     CPPUNIT_ASSERT(m_radio->IsItemEnabled(1));
 
-     CPPUNIT_ASSERT(m_radio->IsItemEnabled(2));
 
- #endif
 
- }
 
- void RadioBoxTestCase::Show()
 
- {
 
-     m_radio->Show(false);
 
-     CPPUNIT_ASSERT(!m_radio->IsItemShown(0));
 
-     m_radio->Show(1, true);
 
-     CPPUNIT_ASSERT(!m_radio->IsItemShown(0));
 
-     CPPUNIT_ASSERT(m_radio->IsItemShown(1));
 
-     CPPUNIT_ASSERT(!m_radio->IsItemShown(2));
 
-     m_radio->Show(true);
 
-     CPPUNIT_ASSERT(m_radio->IsItemShown(0));
 
-     CPPUNIT_ASSERT(m_radio->IsItemShown(1));
 
-     CPPUNIT_ASSERT(m_radio->IsItemShown(2));
 
-     m_radio->Show(0, false);
 
-     CPPUNIT_ASSERT(!m_radio->IsItemShown(0));
 
-     CPPUNIT_ASSERT(m_radio->IsItemShown(1));
 
-     CPPUNIT_ASSERT(m_radio->IsItemShown(2));
 
- }
 
- void RadioBoxTestCase::HelpText()
 
- {
 
-     CPPUNIT_ASSERT_EQUAL(wxEmptyString, m_radio->GetItemHelpText(0));
 
-     m_radio->SetItemHelpText(1, "Item 1 help");
 
-     CPPUNIT_ASSERT_EQUAL("Item 1 help", m_radio->GetItemHelpText(1));
 
-     m_radio->SetItemHelpText(1, "");
 
-     CPPUNIT_ASSERT_EQUAL(wxEmptyString, m_radio->GetItemHelpText(1));
 
- }
 
- void RadioBoxTestCase::ToolTip()
 
- {
 
- #if defined (__WXMSW__) || defined(__WXGTK__)
 
-     //GetItemToolTip returns null if there is no tooltip set
 
-     CPPUNIT_ASSERT(!m_radio->GetItemToolTip(0));
 
-     m_radio->SetItemToolTip(1, "Item 1 help");
 
-     CPPUNIT_ASSERT_EQUAL("Item 1 help", m_radio->GetItemToolTip(1)->GetTip());
 
-     m_radio->SetItemToolTip(1, "");
 
-     //However if we set a blank tip this does count as a tooltip
 
-     CPPUNIT_ASSERT(!m_radio->GetItemToolTip(1));
 
- #endif
 
- }
 
- void RadioBoxTestCase::Selection()
 
- {
 
-     //Until other item containers the first item is selected by default
 
-     CPPUNIT_ASSERT_EQUAL(0, m_radio->GetSelection());
 
-     CPPUNIT_ASSERT_EQUAL("item 0", m_radio->GetStringSelection());
 
-     m_radio->SetSelection(1);
 
-     CPPUNIT_ASSERT_EQUAL(1, m_radio->GetSelection());
 
-     CPPUNIT_ASSERT_EQUAL("item 1", m_radio->GetStringSelection());
 
-     m_radio->SetStringSelection("item 2");
 
-     CPPUNIT_ASSERT_EQUAL(2, m_radio->GetSelection());
 
-     CPPUNIT_ASSERT_EQUAL("item 2", m_radio->GetStringSelection());
 
- }
 
- void RadioBoxTestCase::Count()
 
- {
 
-     //A trivial test for the item count as items can neither
 
-     //be added or removed
 
-     CPPUNIT_ASSERT_EQUAL(3, m_radio->GetCount());
 
-     CPPUNIT_ASSERT(!m_radio->IsEmpty());
 
- }
 
- void RadioBoxTestCase::SetString()
 
- {
 
-     m_radio->SetString(0, "new item 0");
 
-     m_radio->SetString(2, "");
 
-     CPPUNIT_ASSERT_EQUAL("new item 0", m_radio->GetString(0));
 
-     CPPUNIT_ASSERT_EQUAL("", m_radio->GetString(2));
 
- }
 
- #endif // wxUSE_RADIOBOX
 
 
  |