94 lines
2.3 KiB
C++
94 lines
2.3 KiB
C++
///////////////////////////////////////////////////////////////////////////////
|
|
// Name: tests/controls/notebooktest.cpp
|
|
// Purpose: wxNotebook unit test
|
|
// Author: Steven Lamerton
|
|
// Created: 2010-07-02
|
|
// Copyright: (c) 2010 Steven Lamerton
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "testprec.h"
|
|
|
|
#if wxUSE_NOTEBOOK
|
|
|
|
#ifdef __BORLANDC__
|
|
#pragma hdrstop
|
|
#endif
|
|
|
|
#ifndef WX_PRECOMP
|
|
#include "wx/app.h"
|
|
#include "wx/panel.h"
|
|
#endif // WX_PRECOMP
|
|
|
|
#include "wx/notebook.h"
|
|
#include "bookctrlbasetest.h"
|
|
|
|
class NotebookTestCase : public BookCtrlBaseTestCase, public CppUnit::TestCase
|
|
{
|
|
public:
|
|
NotebookTestCase() { }
|
|
|
|
virtual void setUp();
|
|
virtual void tearDown();
|
|
|
|
private:
|
|
virtual wxBookCtrlBase *GetBase() const { return m_notebook; }
|
|
|
|
virtual wxEventType GetChangedEvent() const
|
|
{ return wxEVT_NOTEBOOK_PAGE_CHANGED; }
|
|
|
|
virtual wxEventType GetChangingEvent() const
|
|
{ return wxEVT_NOTEBOOK_PAGE_CHANGING; }
|
|
|
|
|
|
CPPUNIT_TEST_SUITE( NotebookTestCase );
|
|
wxBOOK_CTRL_BASE_TESTS();
|
|
CPPUNIT_TEST( Image );
|
|
CPPUNIT_TEST( RowCount );
|
|
CPPUNIT_TEST_SUITE_END();
|
|
|
|
void RowCount();
|
|
|
|
wxNotebook *m_notebook;
|
|
|
|
DECLARE_NO_COPY_CLASS(NotebookTestCase)
|
|
};
|
|
|
|
// register in the unnamed registry so that these tests are run by default
|
|
CPPUNIT_TEST_SUITE_REGISTRATION( NotebookTestCase );
|
|
|
|
// also include in its own registry so that these tests can be run alone
|
|
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( NotebookTestCase, "NotebookTestCase" );
|
|
|
|
void NotebookTestCase::setUp()
|
|
{
|
|
m_notebook = new wxNotebook(wxTheApp->GetTopWindow(), wxID_ANY,
|
|
wxDefaultPosition, wxSize(400, 200));
|
|
AddPanels();
|
|
}
|
|
|
|
void NotebookTestCase::tearDown()
|
|
{
|
|
wxDELETE(m_notebook);
|
|
}
|
|
|
|
void NotebookTestCase::RowCount()
|
|
{
|
|
CPPUNIT_ASSERT_EQUAL(1, m_notebook->GetRowCount());
|
|
|
|
#ifdef __WXMSW__
|
|
wxDELETE(m_notebook);
|
|
m_notebook = new wxNotebook(wxTheApp->GetTopWindow(), wxID_ANY,
|
|
wxDefaultPosition, wxSize(400, 200),
|
|
wxNB_MULTILINE);
|
|
|
|
for( unsigned int i = 0; i < 10; i++ )
|
|
{
|
|
m_notebook->AddPage(new wxPanel(m_notebook), "Panel", false, 0);
|
|
}
|
|
|
|
CPPUNIT_ASSERT( m_notebook->GetRowCount() != 1 );
|
|
#endif
|
|
}
|
|
|
|
#endif //wxUSE_NOTEBOOK
|