X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a37da0fa555e3399a36e0c7cbc4ea96a4bf4d4f0..1ec4e9c2b72a01a7ba7da569e0f8d04a81aaba10:/tests/graphics/ellipsization.cpp diff --git a/tests/graphics/ellipsization.cpp b/tests/graphics/ellipsization.cpp index c8d3a22054..54c90c9f05 100644 --- a/tests/graphics/ellipsization.cpp +++ b/tests/graphics/ellipsization.cpp @@ -1,78 +1,172 @@ -/////////////////////////////////////////////////////////////////////////////// -// Name: tests/graphics/ellipsization.cpp -// Purpose: wxControlBase::*Ellipsize* unit test -// Author: Francesco Montorsi -// Created: 2010-03-10 -// RCS-ID: $Id$ -// Copyright: (c) 2010 Francesco Montorsi -/////////////////////////////////////////////////////////////////////////////// - -// ---------------------------------------------------------------------------- -// headers -// ---------------------------------------------------------------------------- - -#include "testprec.h" - -#ifdef __BORLANDC__ - #pragma hdrstop -#endif - -#include "wx/control.h" -#include "wx/dcmemory.h" - -// ---------------------------------------------------------------------------- -// test class -// ---------------------------------------------------------------------------- - -class EllipsizationTestCase : public CppUnit::TestCase -{ -public: - EllipsizationTestCase() { } - -private: - CPPUNIT_TEST_SUITE( EllipsizationTestCase ); - CPPUNIT_TEST( Ellipsize ); - CPPUNIT_TEST_SUITE_END(); - - void Ellipsize(); - - DECLARE_NO_COPY_CLASS(EllipsizationTestCase) -}; - -// register in the unnamed registry so that these tests are run by default -CPPUNIT_TEST_SUITE_REGISTRATION( EllipsizationTestCase ); - -// also include in it's own registry so that these tests can be run alone -CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( EllipsizationTestCase, "EllipsizationTestCase" ); - -void EllipsizationTestCase::Ellipsize() -{ - wxMemoryDC dc; - - wxString stringsToTest[] = - { - "N", ".", "x", "foobar", wxS("\u03B1"), "Another test", "a very very very very very very very long string", - "\xCE\xB1\xCE\xB2\xCE\xB3\xCE\xB4\xCE\xB5\xCE\xB6\xCE\xB7\xCE\xB8\xCE\xB9", - // alpha+beta+gamma+delta+epsilon+zeta+eta+theta+iota - "\t", "\t\t\t\t\t", "a\tstring\twith\ttabs", - "\n", "\n\n\n\n\n", "a\nstring\nwith\nnewlines", - "&", "&&&&&&&", "a&string&with&newlines", - "\t\n&", "a\t\n&string\t\n&with\t\n&many\t\n&chars" - }; - int flagsToTest[] = { 0, wxELLIPSIZE_FLAGS_PROCESS_MNEMONICS, wxELLIPSIZE_FLAGS_EXPAND_TABS, - wxELLIPSIZE_FLAGS_PROCESS_MNEMONICS|wxELLIPSIZE_FLAGS_EXPAND_TABS }; - wxEllipsizeMode modesToTest[] = { wxELLIPSIZE_START, wxELLIPSIZE_MIDDLE, wxELLIPSIZE_END }; - int widthsToTest[] = { 0, 1, 2, 3, 10, 20, 100 }; - - for (unsigned int s=0; s