]> git.saurik.com Git - wxWidgets.git/blame - tests/mbconv/main.cpp
removed src/gtk/eggtrayicon.h
[wxWidgets.git] / tests / mbconv / main.cpp
CommitLineData
2cc07181
VZ
1///////////////////////////////////////////////////////////////////////////////
2// Name: tests/mbconv/main.cpp
3// Purpose: wxMBConv unit test
4// Author: Vadim Zeitlin
5// Created: 14.02.04
6// RCS-ID: $Id$
7// Copyright: (c) 2003 TT-Solutions
8///////////////////////////////////////////////////////////////////////////////
9
10// ----------------------------------------------------------------------------
11// headers
12// ----------------------------------------------------------------------------
13
20f46e8d
VS
14#include "wx/wxprec.h"
15
16#ifdef __BORLANDC__
17 #pragma hdrstop
18#endif
19
20#ifndef WX_PRECOMP
21 #include "wx/wx.h"
22#endif // WX_PRECOMP
23
2cc07181
VZ
24#include "wx/strconv.h"
25#include "wx/string.h"
26
27#include "wx/cppunit.h"
28
29// ----------------------------------------------------------------------------
30// test class
31// ----------------------------------------------------------------------------
32
33class MBConvTestCase : public CppUnit::TestCase
34{
35public:
36 MBConvTestCase() { }
37
38private:
39 CPPUNIT_TEST_SUITE( MBConvTestCase );
40 CPPUNIT_TEST( WC2CP1250 );
41 CPPUNIT_TEST_SUITE_END();
42
43 void WC2CP1250();
44
20f46e8d 45 DECLARE_NO_COPY_CLASS(MBConvTestCase)
2cc07181
VZ
46};
47
98eae466
VS
48// register in the unnamed registry so that these tests are run by default
49CPPUNIT_TEST_SUITE_REGISTRATION( MBConvTestCase );
50
51// also include in it's own registry so that these tests can be run alone
2cc07181
VZ
52CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( MBConvTestCase, "MBConvTestCase" );
53
54void MBConvTestCase::WC2CP1250()
55{
56 static const struct Data
57 {
58 const wchar_t *wc;
59 const char *cp1250;
60 } data[] =
61 {
62 { L"hello", "hello" }, // test that it works in simplest case
a430a60f 63 { L"\xBD of \xBD is \xBC", NULL }, // this should fail as cp1250 doesn't have 1/2
2cc07181
VZ
64 };
65
66 wxCSConv cs1250(wxFONTENCODING_CP1250);
67 for ( size_t n = 0; n < WXSIZEOF(data); n++ )
68 {
69 const Data& d = data[n];
98eae466
VS
70 if (d.cp1250)
71 {
72 CPPUNIT_ASSERT( strcmp(cs1250.cWC2MB(d.wc), d.cp1250) == 0 );
73 }
74 else
75 {
0f216992 76 CPPUNIT_ASSERT( (const char*)cs1250.cWC2MB(d.wc) == NULL );
98eae466 77 }
2cc07181
VZ
78 }
79}