160 lines
3.9 KiB
C++
160 lines
3.9 KiB
C++
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
// Name: tests/misc/settings.cpp
|
||
|
// Purpose: test wxSettings
|
||
|
// Author: Francesco Montorsi
|
||
|
// Created: 2009-03-24
|
||
|
// RCS-ID: $Id$
|
||
|
// Copyright: (c) 2009 Francesco Montorsi
|
||
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
// ----------------------------------------------------------------------------
|
||
|
// headers
|
||
|
// ----------------------------------------------------------------------------
|
||
|
|
||
|
#include "testprec.h"
|
||
|
|
||
|
#ifdef __BORLANDC__
|
||
|
#pragma hdrstop
|
||
|
#endif
|
||
|
|
||
|
#include "wx/settings.h"
|
||
|
#include "wx/fontenum.h"
|
||
|
|
||
|
// ----------------------------------------------------------------------------
|
||
|
// test class
|
||
|
// ----------------------------------------------------------------------------
|
||
|
|
||
|
class SettingsTestCase : public CppUnit::TestCase
|
||
|
{
|
||
|
public:
|
||
|
SettingsTestCase() { }
|
||
|
|
||
|
private:
|
||
|
CPPUNIT_TEST_SUITE( SettingsTestCase );
|
||
|
CPPUNIT_TEST( GetColour );
|
||
|
CPPUNIT_TEST( GetFont );
|
||
|
CPPUNIT_TEST( GlobalColours );
|
||
|
CPPUNIT_TEST( GlobalFonts );
|
||
|
CPPUNIT_TEST( GlobalBrushes );
|
||
|
CPPUNIT_TEST( GlobalPens );
|
||
|
CPPUNIT_TEST_SUITE_END();
|
||
|
|
||
|
void GetColour();
|
||
|
void GetFont();
|
||
|
|
||
|
// not really wxSystemSettings stuff but still nice to test:
|
||
|
void GlobalColours();
|
||
|
void GlobalFonts();
|
||
|
void GlobalBrushes();
|
||
|
void GlobalPens();
|
||
|
|
||
|
DECLARE_NO_COPY_CLASS(SettingsTestCase)
|
||
|
};
|
||
|
|
||
|
// register in the unnamed registry so that these tests are run by default
|
||
|
CPPUNIT_TEST_SUITE_REGISTRATION( SettingsTestCase );
|
||
|
|
||
|
// also include in it's own registry so that these tests can be run alone
|
||
|
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( SettingsTestCase, "SettingsTestCase" );
|
||
|
|
||
|
|
||
|
void SettingsTestCase::GetColour()
|
||
|
{
|
||
|
for (unsigned int i=wxSYS_COLOUR_SCROLLBAR; i < wxSYS_COLOUR_MAX; i++)
|
||
|
CPPUNIT_ASSERT( wxSystemSettings::GetColour((wxSystemColour)i).IsOk() );
|
||
|
}
|
||
|
|
||
|
void SettingsTestCase::GetFont()
|
||
|
{
|
||
|
const wxSystemFont ids[] =
|
||
|
{
|
||
|
wxSYS_OEM_FIXED_FONT,
|
||
|
wxSYS_ANSI_FIXED_FONT,
|
||
|
wxSYS_ANSI_VAR_FONT,
|
||
|
wxSYS_SYSTEM_FONT,
|
||
|
wxSYS_DEVICE_DEFAULT_FONT,
|
||
|
wxSYS_SYSTEM_FIXED_FONT,
|
||
|
wxSYS_DEFAULT_GUI_FONT
|
||
|
};
|
||
|
|
||
|
for (unsigned int i=0; i < WXSIZEOF(ids); i++)
|
||
|
{
|
||
|
const wxFont& font = wxSystemSettings::GetFont(ids[i]);
|
||
|
CPPUNIT_ASSERT( font.IsOk() &&
|
||
|
wxFontEnumerator::IsValidFacename(font.GetFaceName()) );
|
||
|
}
|
||
|
}
|
||
|
|
||
|
void SettingsTestCase::GlobalColours()
|
||
|
{
|
||
|
wxColour col[] =
|
||
|
{
|
||
|
*wxBLACK,
|
||
|
*wxBLUE,
|
||
|
*wxCYAN,
|
||
|
*wxGREEN,
|
||
|
*wxLIGHT_GREY,
|
||
|
*wxRED,
|
||
|
*wxWHITE
|
||
|
};
|
||
|
|
||
|
for (unsigned int i=0; i < WXSIZEOF(col); i++)
|
||
|
CPPUNIT_ASSERT( col[i].IsOk() );
|
||
|
}
|
||
|
|
||
|
void SettingsTestCase::GlobalFonts()
|
||
|
{
|
||
|
wxFont font[] =
|
||
|
{
|
||
|
*wxNORMAL_FONT,
|
||
|
*wxSMALL_FONT,
|
||
|
*wxITALIC_FONT,
|
||
|
*wxSWISS_FONT
|
||
|
};
|
||
|
|
||
|
for (unsigned int i=0; i < WXSIZEOF(font); i++)
|
||
|
CPPUNIT_ASSERT( font[i].IsOk() &&
|
||
|
wxFontEnumerator::IsValidFacename(font[i].GetFaceName()) );
|
||
|
}
|
||
|
|
||
|
void SettingsTestCase::GlobalBrushes()
|
||
|
{
|
||
|
wxBrush brush[] =
|
||
|
{
|
||
|
*wxBLACK_BRUSH,
|
||
|
*wxBLUE_BRUSH,
|
||
|
*wxCYAN_BRUSH,
|
||
|
*wxGREEN_BRUSH,
|
||
|
*wxGREY_BRUSH,
|
||
|
*wxLIGHT_GREY_BRUSH,
|
||
|
*wxMEDIUM_GREY_BRUSH,
|
||
|
*wxRED_BRUSH,
|
||
|
*wxTRANSPARENT_BRUSH,
|
||
|
*wxWHITE_BRUSH
|
||
|
};
|
||
|
|
||
|
for (unsigned int i=0; i < WXSIZEOF(brush); i++)
|
||
|
CPPUNIT_ASSERT( brush[i].IsOk() );
|
||
|
}
|
||
|
|
||
|
void SettingsTestCase::GlobalPens()
|
||
|
{
|
||
|
wxPen pen[] =
|
||
|
{
|
||
|
*wxBLACK_DASHED_PEN,
|
||
|
*wxBLACK_PEN,
|
||
|
*wxBLUE_PEN,
|
||
|
*wxCYAN_PEN,
|
||
|
*wxGREEN_PEN,
|
||
|
*wxGREY_PEN,
|
||
|
*wxLIGHT_GREY_PEN,
|
||
|
*wxMEDIUM_GREY_PEN,
|
||
|
*wxRED_PEN,
|
||
|
*wxTRANSPARENT_PEN,
|
||
|
*wxWHITE_PEN
|
||
|
};
|
||
|
|
||
|
for (unsigned int i=0; i < WXSIZEOF(pen); i++)
|
||
|
CPPUNIT_ASSERT( pen[i].IsOk() );
|
||
|
}
|