LCOV - code coverage report
Current view: top level - libreoffice/sal/qa/rtl/textenc - rtl_tencinfo.cxx (source / functions) Hit Total Coverage
Test: libreoffice_filtered.info Lines: 1108 1108 100.0 %
Date: 2012-12-17 Functions: 295 296 99.7 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      11             :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12             :  *   contributor license agreements. See the NOTICE file distributed
      13             :  *   with this work for additional information regarding copyright
      14             :  *   ownership. The ASF licenses this file to you under the Apache
      15             :  *   License, Version 2.0 (the "License"); you may not use this file
      16             :  *   except in compliance with the License. You may obtain a copy of
      17             :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18             :  */
      19             : 
      20             : 
      21             : #include <string.h>
      22             : 
      23             : #include <osl/thread.h>
      24             : #include <rtl/tencinfo.h>
      25             : 
      26             : #include <cppunit/TestFixture.h>
      27             : #include <cppunit/extensions/HelperMacros.h>
      28             : #include <cppunit/plugin/TestPlugIn.h>
      29             : 
      30             : namespace
      31             : {
      32         486 :     class testBestMime : public CppUnit::TestFixture
      33             :     {
      34             :     public:
      35         162 :         void setUp()
      36             :         {
      37         162 :         }
      38             : 
      39         162 :         void check(rtl_TextEncoding eIn, rtl_TextEncoding eOut)
      40             :         {
      41         162 :             const sal_Char *pCharSet = rtl_getBestMimeCharsetFromTextEncoding(eIn);
      42         162 :             rtl_TextEncoding eTextEnc = rtl_getTextEncodingFromMimeCharset(pCharSet);
      43         162 :             CPPUNIT_ASSERT_MESSAGE("rtl_getBestMimeCharsetFromTextEncoding && rtl_getTextEncodingFromMimeCharset differdiffer", eTextEnc == eOut);
      44         162 :         }
      45             : 
      46             :         // the defines for the follows test could be found in file inc/rtl/textenc.h
      47             : 
      48           2 :         void MimeCharsetFromTextEncoding_MS_1252()
      49             :         {
      50           2 :             check( RTL_TEXTENCODING_MS_1252, RTL_TEXTENCODING_MS_1252 );
      51           2 :         }
      52             : 
      53           2 :         void MimeCharsetFromTextEncoding_APPLE_ROMAN()
      54             :         {
      55           2 :             check( RTL_TEXTENCODING_APPLE_ROMAN, RTL_TEXTENCODING_APPLE_ROMAN);
      56           2 :         }
      57             : 
      58           2 :         void MimeCharsetFromTextEncoding_IBM_437()
      59             :         {
      60           2 :             check( RTL_TEXTENCODING_IBM_437, RTL_TEXTENCODING_IBM_437 );
      61           2 :         }
      62             : 
      63           2 :         void MimeCharsetFromTextEncoding_IBM_850()
      64             :         {
      65           2 :             check( RTL_TEXTENCODING_IBM_850, RTL_TEXTENCODING_IBM_850 );
      66           2 :         }
      67             : 
      68           2 :         void MimeCharsetFromTextEncoding_IBM_860()
      69             :         {
      70           2 :             check( RTL_TEXTENCODING_IBM_860, RTL_TEXTENCODING_IBM_860 );
      71           2 :         }
      72             : 
      73           2 :         void MimeCharsetFromTextEncoding_IBM_861()
      74             :         {
      75           2 :             check( RTL_TEXTENCODING_IBM_861, RTL_TEXTENCODING_IBM_861 );
      76           2 :         }
      77             : 
      78           2 :         void MimeCharsetFromTextEncoding_IBM_863()
      79             :         {
      80           2 :             check( RTL_TEXTENCODING_IBM_863, RTL_TEXTENCODING_IBM_863 );
      81           2 :         }
      82             : 
      83           2 :         void MimeCharsetFromTextEncoding_IBM_865()
      84             :         {
      85           2 :             check( RTL_TEXTENCODING_IBM_865, RTL_TEXTENCODING_IBM_865 );
      86           2 :         }
      87             : 
      88           2 :         void MimeCharsetFromTextEncoding_SYMBOL()
      89             :         {
      90           2 :             check( RTL_TEXTENCODING_SYMBOL, RTL_TEXTENCODING_DONTKNOW );
      91           2 :         }
      92             : 
      93           2 :         void MimeCharsetFromTextEncoding_ASCII_US()
      94             :         {
      95           2 :             check( RTL_TEXTENCODING_ASCII_US, RTL_TEXTENCODING_ASCII_US );
      96           2 :         }
      97             : 
      98           2 :         void MimeCharsetFromTextEncoding_ISO_8859_1()
      99             :         {
     100           2 :             check( RTL_TEXTENCODING_ISO_8859_1, RTL_TEXTENCODING_ISO_8859_1 );
     101           2 :         }
     102           2 :         void MimeCharsetFromTextEncoding_ISO_8859_2()
     103             :         {
     104           2 :             check( RTL_TEXTENCODING_ISO_8859_2, RTL_TEXTENCODING_ISO_8859_2 );
     105           2 :         }
     106           2 :         void MimeCharsetFromTextEncoding_ISO_8859_3()
     107             :         {
     108           2 :             check( RTL_TEXTENCODING_ISO_8859_3, RTL_TEXTENCODING_ISO_8859_3 );
     109           2 :         }
     110           2 :         void MimeCharsetFromTextEncoding_ISO_8859_4()
     111             :         {
     112           2 :             check( RTL_TEXTENCODING_ISO_8859_4, RTL_TEXTENCODING_ISO_8859_4 );
     113           2 :         }
     114           2 :         void MimeCharsetFromTextEncoding_ISO_8859_5()
     115             :         {
     116           2 :             check( RTL_TEXTENCODING_ISO_8859_5, RTL_TEXTENCODING_ISO_8859_5 );
     117           2 :         }
     118           2 :         void MimeCharsetFromTextEncoding_ISO_8859_6()
     119             :         {
     120           2 :             check( RTL_TEXTENCODING_ISO_8859_6, RTL_TEXTENCODING_ISO_8859_6 );
     121           2 :         }
     122           2 :         void MimeCharsetFromTextEncoding_ISO_8859_7()
     123             :         {
     124           2 :             check( RTL_TEXTENCODING_ISO_8859_7, RTL_TEXTENCODING_ISO_8859_7 );
     125           2 :         }
     126           2 :         void MimeCharsetFromTextEncoding_ISO_8859_8()
     127             :         {
     128           2 :             check( RTL_TEXTENCODING_ISO_8859_8, RTL_TEXTENCODING_ISO_8859_8 );
     129           2 :         }
     130           2 :         void MimeCharsetFromTextEncoding_ISO_8859_9()
     131             :         {
     132           2 :             check( RTL_TEXTENCODING_ISO_8859_9, RTL_TEXTENCODING_ISO_8859_9 );
     133           2 :         }
     134           2 :         void MimeCharsetFromTextEncoding_ISO_8859_14()
     135             :         {
     136           2 :             check( RTL_TEXTENCODING_ISO_8859_14, RTL_TEXTENCODING_ISO_8859_14 );
     137           2 :         }
     138           2 :         void MimeCharsetFromTextEncoding_ISO_8859_15()
     139             :         {
     140           2 :             check( RTL_TEXTENCODING_ISO_8859_15, RTL_TEXTENCODING_ISO_8859_15 );
     141           2 :         }
     142           2 :         void MimeCharsetFromTextEncoding_IBM_737()
     143             :         {
     144           2 :             check( RTL_TEXTENCODING_IBM_737, RTL_TEXTENCODING_ISO_8859_7 );
     145           2 :         }
     146           2 :         void MimeCharsetFromTextEncoding_IBM_775()
     147             :         {
     148           2 :             check( RTL_TEXTENCODING_IBM_775, RTL_TEXTENCODING_ISO_8859_4 );
     149           2 :         }
     150           2 :         void MimeCharsetFromTextEncoding_IBM_852()
     151             :         {
     152           2 :             check( RTL_TEXTENCODING_IBM_852, RTL_TEXTENCODING_IBM_852 );
     153           2 :         }
     154           2 :         void MimeCharsetFromTextEncoding_IBM_855()
     155             :         {
     156           2 :             check( RTL_TEXTENCODING_IBM_855, RTL_TEXTENCODING_ISO_8859_5 );
     157           2 :         }
     158           2 :         void MimeCharsetFromTextEncoding_IBM_857()
     159             :         {
     160           2 :             check( RTL_TEXTENCODING_IBM_857, RTL_TEXTENCODING_ISO_8859_9 );
     161           2 :         }
     162           2 :         void MimeCharsetFromTextEncoding_IBM_862()
     163             :         {
     164           2 :             check( RTL_TEXTENCODING_IBM_862, RTL_TEXTENCODING_IBM_862 );
     165           2 :         }
     166           2 :         void MimeCharsetFromTextEncoding_IBM_864()
     167             :         {
     168           2 :             check( RTL_TEXTENCODING_IBM_864, RTL_TEXTENCODING_IBM_864 );
     169           2 :         }
     170           2 :         void MimeCharsetFromTextEncoding_IBM_866()
     171             :         {
     172           2 :             check( RTL_TEXTENCODING_IBM_866, RTL_TEXTENCODING_IBM_866 );
     173           2 :         }
     174           2 :         void MimeCharsetFromTextEncoding_IBM_869()
     175             :         {
     176           2 :             check( RTL_TEXTENCODING_IBM_869, RTL_TEXTENCODING_ISO_8859_7 );
     177           2 :         }
     178           2 :         void MimeCharsetFromTextEncoding_MS_874()
     179             :         {
     180           2 :             check( RTL_TEXTENCODING_MS_874, RTL_TEXTENCODING_MS_874 );
     181           2 :         }
     182           2 :         void MimeCharsetFromTextEncoding_MS_1250()
     183             :         {
     184           2 :             check( RTL_TEXTENCODING_MS_1250, RTL_TEXTENCODING_MS_1250 );
     185           2 :         }
     186           2 :         void MimeCharsetFromTextEncoding_MS_1251()
     187             :         {
     188           2 :             check( RTL_TEXTENCODING_MS_1251, RTL_TEXTENCODING_MS_1251 );
     189           2 :         }
     190           2 :         void MimeCharsetFromTextEncoding_MS_1253()
     191             :         {
     192           2 :             check( RTL_TEXTENCODING_MS_1253, RTL_TEXTENCODING_MS_1253 );
     193           2 :         }
     194           2 :         void MimeCharsetFromTextEncoding_MS_1254()
     195             :         {
     196           2 :             check( RTL_TEXTENCODING_MS_1254, RTL_TEXTENCODING_MS_1254 );
     197           2 :         }
     198           2 :         void MimeCharsetFromTextEncoding_MS_1255()
     199             :         {
     200           2 :             check( RTL_TEXTENCODING_MS_1255, RTL_TEXTENCODING_MS_1255 );
     201           2 :         }
     202           2 :         void MimeCharsetFromTextEncoding_MS_1256()
     203             :         {
     204           2 :             check( RTL_TEXTENCODING_MS_1256, RTL_TEXTENCODING_MS_1256 );
     205           2 :         }
     206           2 :         void MimeCharsetFromTextEncoding_MS_1257()
     207             :         {
     208           2 :             check( RTL_TEXTENCODING_MS_1257, RTL_TEXTENCODING_MS_1257 );
     209           2 :         }
     210           2 :         void MimeCharsetFromTextEncoding_MS_1258()
     211             :         {
     212           2 :             check( RTL_TEXTENCODING_MS_1258, RTL_TEXTENCODING_MS_1258 );
     213           2 :         }
     214             :         void MimeCharsetFromTextEncoding_APPLE_ARABIC()
     215             :         {
     216             :             check( RTL_TEXTENCODING_APPLE_ARABIC, RTL_TEXTENCODING_APPLE_ARABIC );
     217             :         }
     218           2 :         void MimeCharsetFromTextEncoding_APPLE_CENTEURO()
     219             :         {
     220           2 :             check( RTL_TEXTENCODING_APPLE_CENTEURO, RTL_TEXTENCODING_ISO_8859_2 );
     221           2 :         }
     222           2 :         void MimeCharsetFromTextEncoding_APPLE_CROATIAN()
     223             :         {
     224           2 :             check( RTL_TEXTENCODING_APPLE_CROATIAN, RTL_TEXTENCODING_ISO_8859_2 );
     225           2 :         }
     226           2 :         void MimeCharsetFromTextEncoding_APPLE_CYRILLIC()
     227             :         {
     228           2 :             check( RTL_TEXTENCODING_APPLE_CYRILLIC, RTL_TEXTENCODING_ISO_8859_5 );
     229           2 :         }
     230             :         void MimeCharsetFromTextEncoding_APPLE_DEVANAGARI()
     231             :         {
     232             :             check( RTL_TEXTENCODING_APPLE_DEVANAGARI, RTL_TEXTENCODING_ISO_8859_7 );
     233             :         }
     234             :         void MimeCharsetFromTextEncoding_APPLE_FARSI()
     235             :         {
     236             :             check( RTL_TEXTENCODING_APPLE_FARSI, RTL_TEXTENCODING_ISO_8859_1 );
     237             :         }
     238           2 :         void MimeCharsetFromTextEncoding_APPLE_GREEK()
     239             :         {
     240           2 :             check( RTL_TEXTENCODING_APPLE_GREEK, RTL_TEXTENCODING_ISO_8859_7 );
     241           2 :         }
     242             :         void MimeCharsetFromTextEncoding_APPLE_GUJARATI()
     243             :         {
     244             :             check( RTL_TEXTENCODING_APPLE_GUJARATI, RTL_TEXTENCODING_ISO_8859_2 );
     245             :         }
     246             :         void MimeCharsetFromTextEncoding_APPLE_GURMUKHI()
     247             :         {
     248             :             check( RTL_TEXTENCODING_APPLE_GURMUKHI, RTL_TEXTENCODING_ISO_8859_2 );
     249             :         }
     250             :         void MimeCharsetFromTextEncoding_APPLE_HEBREW()
     251             :         {
     252             :             check( RTL_TEXTENCODING_APPLE_HEBREW, RTL_TEXTENCODING_ISO_8859_9 );
     253             :         }
     254           2 :         void MimeCharsetFromTextEncoding_APPLE_ICELAND()
     255             :         {
     256           2 :             check( RTL_TEXTENCODING_APPLE_ICELAND, RTL_TEXTENCODING_ISO_8859_1 );
     257           2 :         }
     258           2 :         void MimeCharsetFromTextEncoding_APPLE_ROMANIAN()
     259             :         {
     260           2 :             check( RTL_TEXTENCODING_APPLE_ROMANIAN, RTL_TEXTENCODING_ISO_8859_2 );
     261           2 :         }
     262             :         void MimeCharsetFromTextEncoding_APPLE_THAI()
     263             :         {
     264             :             check( RTL_TEXTENCODING_APPLE_THAI, RTL_TEXTENCODING_ISO_8859_9 );
     265             :         }
     266           2 :         void MimeCharsetFromTextEncoding_APPLE_TURKISH()
     267             :         {
     268           2 :             check( RTL_TEXTENCODING_APPLE_TURKISH, RTL_TEXTENCODING_ISO_8859_9 );
     269           2 :         }
     270           2 :         void MimeCharsetFromTextEncoding_APPLE_UKRAINIAN()
     271             :         {
     272           2 :             check( RTL_TEXTENCODING_APPLE_UKRAINIAN, RTL_TEXTENCODING_ISO_8859_5 );
     273           2 :         }
     274           2 :         void MimeCharsetFromTextEncoding_APPLE_CHINSIMP()
     275             :         {
     276           2 :             check( RTL_TEXTENCODING_APPLE_CHINSIMP, RTL_TEXTENCODING_GB_2312 );
     277           2 :         }
     278           2 :         void MimeCharsetFromTextEncoding_APPLE_CHINTRAD()
     279             :         {
     280           2 :             check( RTL_TEXTENCODING_APPLE_CHINTRAD, RTL_TEXTENCODING_BIG5 );
     281           2 :         }
     282           2 :         void MimeCharsetFromTextEncoding_APPLE_JAPANESE()
     283             :         {
     284           2 :             check( RTL_TEXTENCODING_APPLE_JAPANESE, RTL_TEXTENCODING_SHIFT_JIS );
     285           2 :         }
     286           2 :         void MimeCharsetFromTextEncoding_APPLE_KOREAN()
     287             :         {
     288           2 :             check( RTL_TEXTENCODING_APPLE_KOREAN, RTL_TEXTENCODING_EUC_KR );
     289           2 :         }
     290           2 :         void MimeCharsetFromTextEncoding_MS_932()
     291             :         {
     292           2 :             check( RTL_TEXTENCODING_MS_932, RTL_TEXTENCODING_SHIFT_JIS );
     293           2 :         }
     294           2 :         void MimeCharsetFromTextEncoding_MS_936()
     295             :         {
     296           2 :             check( RTL_TEXTENCODING_MS_936, RTL_TEXTENCODING_GB_2312 );
     297           2 :         }
     298           2 :         void MimeCharsetFromTextEncoding_MS_949()
     299             :         {
     300           2 :             check( RTL_TEXTENCODING_MS_949, RTL_TEXTENCODING_EUC_KR );
     301           2 :         }
     302           2 :         void MimeCharsetFromTextEncoding_MS_950()
     303             :         {
     304           2 :             check( RTL_TEXTENCODING_MS_950, RTL_TEXTENCODING_BIG5 );
     305           2 :         }
     306           2 :         void MimeCharsetFromTextEncoding_SHIFT_JIS()
     307             :         {
     308           2 :             check( RTL_TEXTENCODING_SHIFT_JIS, RTL_TEXTENCODING_SHIFT_JIS );
     309           2 :         }
     310           2 :         void MimeCharsetFromTextEncoding_GB_2312()
     311             :         {
     312           2 :             check( RTL_TEXTENCODING_GB_2312, RTL_TEXTENCODING_GB_2312 );
     313           2 :         }
     314           2 :         void MimeCharsetFromTextEncoding_GBT_12345()
     315             :         {
     316           2 :             check( RTL_TEXTENCODING_GBT_12345, RTL_TEXTENCODING_GBT_12345 );
     317           2 :         }
     318           2 :         void MimeCharsetFromTextEncoding_GBK()
     319             :         {
     320           2 :             check( RTL_TEXTENCODING_GBK, RTL_TEXTENCODING_GBK );
     321           2 :         }
     322           2 :         void MimeCharsetFromTextEncoding_BIG5()
     323             :         {
     324           2 :             check( RTL_TEXTENCODING_BIG5, RTL_TEXTENCODING_BIG5 );
     325           2 :         }
     326           2 :         void MimeCharsetFromTextEncoding_EUC_JP()
     327             :         {
     328           2 :             check( RTL_TEXTENCODING_EUC_JP, RTL_TEXTENCODING_EUC_JP );
     329           2 :         }
     330           2 :         void MimeCharsetFromTextEncoding_EUC_CN()
     331             :         {
     332           2 :             check( RTL_TEXTENCODING_EUC_CN, RTL_TEXTENCODING_GB_2312 );
     333           2 :         }
     334           2 :         void MimeCharsetFromTextEncoding_EUC_TW()
     335             :         {
     336           2 :             check( RTL_TEXTENCODING_EUC_TW, RTL_TEXTENCODING_BIG5 );
     337           2 :         }
     338           2 :         void MimeCharsetFromTextEncoding_ISO_2022_JP()
     339             :         {
     340           2 :             check( RTL_TEXTENCODING_ISO_2022_JP, RTL_TEXTENCODING_ISO_2022_JP );
     341           2 :         }
     342           2 :         void MimeCharsetFromTextEncoding_ISO_2022_CN()
     343             :         {
     344           2 :             check( RTL_TEXTENCODING_ISO_2022_CN, RTL_TEXTENCODING_ISO_2022_CN );
     345           2 :         }
     346           2 :         void MimeCharsetFromTextEncoding_KOI8_R()
     347             :         {
     348           2 :             check( RTL_TEXTENCODING_KOI8_R, RTL_TEXTENCODING_KOI8_R );
     349           2 :         }
     350           2 :         void MimeCharsetFromTextEncoding_UTF7()
     351             :         {
     352           2 :             check( RTL_TEXTENCODING_UTF7, RTL_TEXTENCODING_UTF7 );
     353           2 :         }
     354           2 :         void MimeCharsetFromTextEncoding_UTF8()
     355             :         {
     356           2 :             check( RTL_TEXTENCODING_UTF8, RTL_TEXTENCODING_UTF8 );
     357           2 :         }
     358           2 :         void MimeCharsetFromTextEncoding_ISO_8859_10()
     359             :         {
     360           2 :             check( RTL_TEXTENCODING_ISO_8859_10, RTL_TEXTENCODING_ISO_8859_10 );
     361           2 :         }
     362           2 :         void MimeCharsetFromTextEncoding_ISO_8859_13()
     363             :         {
     364           2 :             check( RTL_TEXTENCODING_ISO_8859_13, RTL_TEXTENCODING_ISO_8859_13 );
     365           2 :         }
     366           2 :         void MimeCharsetFromTextEncoding_EUC_KR()
     367             :         {
     368           2 :             check( RTL_TEXTENCODING_EUC_KR, RTL_TEXTENCODING_EUC_KR );
     369           2 :         }
     370           2 :         void MimeCharsetFromTextEncoding_ISO_2022_KR()
     371             :         {
     372           2 :             check( RTL_TEXTENCODING_ISO_2022_KR, RTL_TEXTENCODING_ISO_2022_KR );
     373           2 :         }
     374           2 :         void MimeCharsetFromTextEncoding_JIS_X_0201()
     375             :         {
     376           2 :             check( RTL_TEXTENCODING_JIS_X_0201, RTL_TEXTENCODING_EUC_JP );
     377           2 :         }
     378           2 :         void MimeCharsetFromTextEncoding_JIS_X_0208()
     379             :         {
     380           2 :             check( RTL_TEXTENCODING_JIS_X_0208, RTL_TEXTENCODING_EUC_JP );
     381           2 :         }
     382           2 :         void MimeCharsetFromTextEncoding_JIS_X_0212()
     383             :         {
     384           2 :             check( RTL_TEXTENCODING_JIS_X_0212, RTL_TEXTENCODING_EUC_JP );
     385           2 :         }
     386           2 :         void MimeCharsetFromTextEncoding_MS_1361()
     387             :         {
     388           2 :             check( RTL_TEXTENCODING_MS_1361, RTL_TEXTENCODING_EUC_KR );
     389           2 :         }
     390           2 :         void MimeCharsetFromTextEncoding_GB_18030()
     391             :         {
     392           2 :             check( RTL_TEXTENCODING_GB_18030, RTL_TEXTENCODING_GB_18030 );
     393           2 :         }
     394           2 :         void MimeCharsetFromTextEncoding_BIG5_HKSCS()
     395             :         {
     396           2 :             check( RTL_TEXTENCODING_BIG5_HKSCS, RTL_TEXTENCODING_BIG5_HKSCS );
     397           2 :         }
     398           2 :         void MimeCharsetFromTextEncoding_TIS_620()
     399             :         {
     400           2 :             check( RTL_TEXTENCODING_TIS_620, RTL_TEXTENCODING_TIS_620 );
     401           2 :         }
     402           2 :         void MimeCharsetFromTextEncoding_KOI8_U()
     403             :         {
     404           2 :             check( RTL_TEXTENCODING_KOI8_U, RTL_TEXTENCODING_KOI8_U );
     405           2 :         }
     406           2 :         void MimeCharsetFromTextEncoding_ISCII_DEVANAGARI()
     407             :         {
     408           2 :             check( RTL_TEXTENCODING_ISCII_DEVANAGARI, RTL_TEXTENCODING_ISCII_DEVANAGARI );
     409           2 :         }
     410             :         void MimeCharsetFromTextEncoding_JAVA_UTF8()
     411             :         {
     412             :             check( RTL_TEXTENCODING_JAVA_UTF8, RTL_TEXTENCODING_JAVA_UTF8 );
     413             :         }
     414             : 
     415           4 :         CPPUNIT_TEST_SUITE( testBestMime );
     416             : 
     417           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1252 );
     418           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_ROMAN );
     419           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_437 );
     420           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_850 );
     421           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_860 );
     422           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_861 );
     423           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_863 );
     424           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_865 );
     425           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_SYMBOL );
     426           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ASCII_US );
     427           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_1 );
     428           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_2 );
     429           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_3 );
     430           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_4 );
     431           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_5 );
     432           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_6 );
     433           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_7 );
     434           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_8 );
     435           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_9 );
     436           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_14 );
     437           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_15 );
     438           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_737 );
     439           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_775 );
     440           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_852 );
     441           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_855 );
     442           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_857 );
     443           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_862 );
     444           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_864 );
     445           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_866 );
     446           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_IBM_869 );
     447           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_874 );
     448           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1250 );
     449           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1251 );
     450           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1253 );
     451           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1254 );
     452           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1255 );
     453           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1256 );
     454           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1257 );
     455           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1258 );
     456             : #if 0
     457             :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_ARABIC );
     458             : #endif
     459           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_CENTEURO );
     460           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_CROATIAN );
     461           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_CYRILLIC );
     462             : #if 0
     463             :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_DEVANAGARI );
     464             :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_FARSI );
     465             : #endif
     466           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_GREEK );
     467             : #if 0
     468             :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_GUJARATI );
     469             :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_GURMUKHI );
     470             :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_HEBREW );
     471             : #endif
     472           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_ICELAND );
     473           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_ROMANIAN );
     474             : #if 0
     475             :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_THAI );
     476             : #endif
     477           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_TURKISH );
     478           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_UKRAINIAN );
     479           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_CHINSIMP );
     480           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_CHINTRAD );
     481           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_JAPANESE );
     482           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_APPLE_KOREAN );
     483           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_932 );
     484           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_936 );
     485           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_949 );
     486           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_950 );
     487           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_SHIFT_JIS );
     488           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_GB_2312 );
     489           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_GBT_12345 );
     490           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_GBK );
     491           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_BIG5 );
     492           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_EUC_JP );
     493           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_EUC_CN );
     494           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_EUC_TW );
     495           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_2022_JP );
     496           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_2022_CN );
     497           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_KOI8_R );
     498           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_UTF7 );
     499           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_UTF8 );
     500           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_10 );
     501           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_8859_13 );
     502           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_EUC_KR );
     503           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISO_2022_KR );
     504           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_JIS_X_0201 );
     505           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_JIS_X_0208 );
     506           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_JIS_X_0212 );
     507           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_MS_1361 );
     508           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_GB_18030 );
     509           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_BIG5_HKSCS );
     510           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_TIS_620 );
     511           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_KOI8_U );
     512           2 :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_ISCII_DEVANAGARI );
     513             : #if 0
     514             :         CPPUNIT_TEST( MimeCharsetFromTextEncoding_JAVA_UTF8 );
     515             : #endif
     516             : 
     517           4 :         CPPUNIT_TEST_SUITE_END( );
     518             :     };
     519             : 
     520             :     // -----------------------------------------------------------------------------
     521             : 
     522         480 :     class testBestUnix : public CppUnit::TestFixture
     523             :     {
     524             :     public:
     525         160 :         void setUp()
     526             :         {
     527         160 :         }
     528             : 
     529         160 :         void check(rtl_TextEncoding eIn, rtl_TextEncoding eOut)
     530             :         {
     531         160 :             const sal_Char *pCharSet = rtl_getBestUnixCharsetFromTextEncoding(eIn);
     532         160 :             rtl_TextEncoding eTextEnc = rtl_getTextEncodingFromUnixCharset(pCharSet);
     533         160 :             CPPUNIT_ASSERT_MESSAGE("rtl_getBestUnixCharsetFromTextEncoding && rtl_getTextEncodingFromUnixCharset", eTextEnc == eOut);
     534         160 :         }
     535             : 
     536           2 :         void UnixCharsetFromTextEncoding_MS_1252()
     537             :         {
     538           2 :             check( RTL_TEXTENCODING_MS_1252, RTL_TEXTENCODING_ISO_8859_1 );
     539           2 :         }
     540             : 
     541           2 :         void UnixCharsetFromTextEncoding_APPLE_ROMAN()
     542             :         {
     543           2 :             check( RTL_TEXTENCODING_APPLE_ROMAN, RTL_TEXTENCODING_ISO_8859_1 );
     544           2 :         }
     545             : 
     546           2 :         void UnixCharsetFromTextEncoding_IBM_437()
     547             :         {
     548           2 :             check( RTL_TEXTENCODING_IBM_437, RTL_TEXTENCODING_ISO_8859_1 );
     549           2 :         }
     550             : 
     551           2 :         void UnixCharsetFromTextEncoding_IBM_850()
     552             :         {
     553           2 :             check( RTL_TEXTENCODING_IBM_850, RTL_TEXTENCODING_ISO_8859_1 );
     554           2 :         }
     555             : 
     556           2 :         void UnixCharsetFromTextEncoding_IBM_860()
     557             :         {
     558           2 :             check( RTL_TEXTENCODING_IBM_860, RTL_TEXTENCODING_ISO_8859_1 );
     559           2 :         }
     560             : 
     561           2 :         void UnixCharsetFromTextEncoding_IBM_861()
     562             :         {
     563           2 :             check( RTL_TEXTENCODING_IBM_861, RTL_TEXTENCODING_ISO_8859_1 );
     564           2 :         }
     565             : 
     566           2 :         void UnixCharsetFromTextEncoding_IBM_863()
     567             :         {
     568           2 :             check( RTL_TEXTENCODING_IBM_863, RTL_TEXTENCODING_ISO_8859_1 );
     569           2 :         }
     570             : 
     571           2 :         void UnixCharsetFromTextEncoding_IBM_865()
     572             :         {
     573           2 :             check( RTL_TEXTENCODING_IBM_865, RTL_TEXTENCODING_ISO_8859_1 );
     574           2 :         }
     575             : 
     576           2 :         void UnixCharsetFromTextEncoding_SYMBOL()
     577             :         {
     578           2 :             check( RTL_TEXTENCODING_SYMBOL, RTL_TEXTENCODING_SYMBOL );
     579           2 :         }
     580             : 
     581           2 :         void UnixCharsetFromTextEncoding_ASCII_US()
     582             :         {
     583           2 :             check( RTL_TEXTENCODING_ASCII_US, RTL_TEXTENCODING_ISO_8859_1 );
     584           2 :         }
     585             : 
     586           2 :         void UnixCharsetFromTextEncoding_ISO_8859_1()
     587             :         {
     588           2 :             check( RTL_TEXTENCODING_ISO_8859_1, RTL_TEXTENCODING_ISO_8859_1 );
     589           2 :         }
     590             : 
     591           2 :         void UnixCharsetFromTextEncoding_ISO_8859_2()
     592             :         {
     593           2 :             check( RTL_TEXTENCODING_ISO_8859_2, RTL_TEXTENCODING_ISO_8859_2 );
     594           2 :         }
     595             : 
     596           2 :         void UnixCharsetFromTextEncoding_ISO_8859_3()
     597             :         {
     598           2 :             check( RTL_TEXTENCODING_ISO_8859_3, RTL_TEXTENCODING_ISO_8859_3 );
     599           2 :         }
     600             : 
     601           2 :         void UnixCharsetFromTextEncoding_ISO_8859_4()
     602             :         {
     603           2 :             check( RTL_TEXTENCODING_ISO_8859_4, RTL_TEXTENCODING_ISO_8859_4 );
     604           2 :         }
     605             : 
     606           2 :         void UnixCharsetFromTextEncoding_ISO_8859_5()
     607             :         {
     608           2 :             check( RTL_TEXTENCODING_ISO_8859_5, RTL_TEXTENCODING_ISO_8859_5 );
     609           2 :         }
     610             : 
     611           2 :         void UnixCharsetFromTextEncoding_ISO_8859_6()
     612             :         {
     613           2 :             check( RTL_TEXTENCODING_ISO_8859_6, RTL_TEXTENCODING_ISO_8859_6 );
     614           2 :         }
     615             : 
     616           2 :         void UnixCharsetFromTextEncoding_ISO_8859_7()
     617             :         {
     618           2 :             check( RTL_TEXTENCODING_ISO_8859_7, RTL_TEXTENCODING_ISO_8859_7 );
     619           2 :         }
     620             : 
     621           2 :         void UnixCharsetFromTextEncoding_ISO_8859_8()
     622             :         {
     623           2 :             check( RTL_TEXTENCODING_ISO_8859_8, RTL_TEXTENCODING_ISO_8859_8 );
     624           2 :         }
     625             : 
     626           2 :         void UnixCharsetFromTextEncoding_ISO_8859_9()
     627             :         {
     628           2 :             check( RTL_TEXTENCODING_ISO_8859_9, RTL_TEXTENCODING_ISO_8859_9 );
     629           2 :         }
     630             : 
     631           2 :         void UnixCharsetFromTextEncoding_ISO_8859_14()
     632             :         {
     633           2 :             check( RTL_TEXTENCODING_ISO_8859_14, RTL_TEXTENCODING_ISO_8859_14 );
     634           2 :         }
     635             : 
     636           2 :         void UnixCharsetFromTextEncoding_ISO_8859_15()
     637             :         {
     638           2 :             check( RTL_TEXTENCODING_ISO_8859_15, RTL_TEXTENCODING_ISO_8859_15 );
     639           2 :         }
     640             : 
     641           2 :         void UnixCharsetFromTextEncoding_IBM_737()
     642             :         {
     643           2 :             check( RTL_TEXTENCODING_IBM_737, RTL_TEXTENCODING_ISO_8859_7 );
     644           2 :         }
     645             : 
     646           2 :         void UnixCharsetFromTextEncoding_IBM_775()
     647             :         {
     648           2 :             check( RTL_TEXTENCODING_IBM_775, RTL_TEXTENCODING_ISO_8859_4 );
     649           2 :         }
     650             : 
     651           2 :         void UnixCharsetFromTextEncoding_IBM_852()
     652             :         {
     653           2 :             check( RTL_TEXTENCODING_IBM_852, RTL_TEXTENCODING_ISO_8859_2 );
     654           2 :         }
     655             : 
     656           2 :         void UnixCharsetFromTextEncoding_IBM_855()
     657             :         {
     658           2 :             check( RTL_TEXTENCODING_IBM_855, RTL_TEXTENCODING_ISO_8859_5 );
     659           2 :         }
     660             : 
     661           2 :         void UnixCharsetFromTextEncoding_IBM_857()
     662             :         {
     663           2 :             check( RTL_TEXTENCODING_IBM_857, RTL_TEXTENCODING_ISO_8859_9 );
     664           2 :         }
     665             : 
     666           2 :         void UnixCharsetFromTextEncoding_IBM_862()
     667             :         {
     668           2 :             check( RTL_TEXTENCODING_IBM_862, RTL_TEXTENCODING_ISO_8859_8 );
     669           2 :         }
     670             : 
     671           2 :         void UnixCharsetFromTextEncoding_IBM_864()
     672             :         {
     673           2 :             check( RTL_TEXTENCODING_IBM_864, RTL_TEXTENCODING_ISO_8859_6 );
     674           2 :         }
     675             : 
     676           2 :         void UnixCharsetFromTextEncoding_IBM_866()
     677             :         {
     678           2 :             check( RTL_TEXTENCODING_IBM_866, RTL_TEXTENCODING_ISO_8859_5 );
     679           2 :         }
     680             : 
     681           2 :         void UnixCharsetFromTextEncoding_IBM_869()
     682             :         {
     683           2 :             check( RTL_TEXTENCODING_IBM_869, RTL_TEXTENCODING_ISO_8859_7 );
     684           2 :         }
     685             : 
     686           2 :         void UnixCharsetFromTextEncoding_MS_874()
     687             :         {
     688           2 :             check( RTL_TEXTENCODING_MS_874, RTL_TEXTENCODING_ISO_8859_1 );
     689           2 :         }
     690             : 
     691           2 :         void UnixCharsetFromTextEncoding_MS_1250()
     692             :         {
     693           2 :             check( RTL_TEXTENCODING_MS_1250, RTL_TEXTENCODING_ISO_8859_2 );
     694           2 :         }
     695             : 
     696           2 :         void UnixCharsetFromTextEncoding_MS_1251()
     697             :         {
     698           2 :             check( RTL_TEXTENCODING_MS_1251, RTL_TEXTENCODING_ISO_8859_5 );
     699           2 :         }
     700             : 
     701           2 :         void UnixCharsetFromTextEncoding_MS_1253()
     702             :         {
     703           2 :             check( RTL_TEXTENCODING_MS_1253, RTL_TEXTENCODING_ISO_8859_7 );
     704           2 :         }
     705             : 
     706           2 :         void UnixCharsetFromTextEncoding_MS_1254()
     707             :         {
     708           2 :             check( RTL_TEXTENCODING_MS_1254, RTL_TEXTENCODING_ISO_8859_9 );
     709           2 :         }
     710             : 
     711           2 :         void UnixCharsetFromTextEncoding_MS_1255()
     712             :         {
     713           2 :             check( RTL_TEXTENCODING_MS_1255, RTL_TEXTENCODING_ISO_8859_8 );
     714           2 :         }
     715             : 
     716           2 :         void UnixCharsetFromTextEncoding_MS_1256()
     717             :         {
     718           2 :             check( RTL_TEXTENCODING_MS_1256, RTL_TEXTENCODING_ISO_8859_6 );
     719           2 :         }
     720             : 
     721           2 :         void UnixCharsetFromTextEncoding_MS_1257()
     722             :         {
     723           2 :             check( RTL_TEXTENCODING_MS_1257, RTL_TEXTENCODING_ISO_8859_4 );
     724           2 :         }
     725             : 
     726           2 :         void UnixCharsetFromTextEncoding_MS_1258()
     727             :         {
     728           2 :             check( RTL_TEXTENCODING_MS_1258, RTL_TEXTENCODING_ISO_8859_1 );
     729           2 :         }
     730             : 
     731             :         void UnixCharsetFromTextEncoding_APPLE_ARABIC()
     732             :         {
     733             :             check( RTL_TEXTENCODING_APPLE_ARABIC, RTL_TEXTENCODING_ISO_8859_2 );
     734             :         }
     735             : 
     736           2 :         void UnixCharsetFromTextEncoding_APPLE_CENTEURO()
     737             :         {
     738           2 :             check( RTL_TEXTENCODING_APPLE_CENTEURO, RTL_TEXTENCODING_ISO_8859_2 );
     739           2 :         }
     740             : 
     741           2 :         void UnixCharsetFromTextEncoding_APPLE_CROATIAN()
     742             :         {
     743           2 :             check( RTL_TEXTENCODING_APPLE_CROATIAN, RTL_TEXTENCODING_ISO_8859_2 );
     744           2 :         }
     745             : 
     746           2 :         void UnixCharsetFromTextEncoding_APPLE_CYRILLIC()
     747             :         {
     748           2 :             check( RTL_TEXTENCODING_APPLE_CYRILLIC, RTL_TEXTENCODING_ISO_8859_5 );
     749           2 :         }
     750             : 
     751             :         void UnixCharsetFromTextEncoding_APPLE_DEVANAGARI()
     752             :         {
     753             :             check( RTL_TEXTENCODING_APPLE_DEVANAGARI, RTL_TEXTENCODING_ISO_8859_7 );
     754             :         }
     755             : 
     756             :         void UnixCharsetFromTextEncoding_APPLE_FARSI()
     757             :         {
     758             :             check( RTL_TEXTENCODING_APPLE_FARSI, RTL_TEXTENCODING_ISO_8859_1 );
     759             :         }
     760             : 
     761           2 :         void UnixCharsetFromTextEncoding_APPLE_GREEK()
     762             :         {
     763           2 :             check( RTL_TEXTENCODING_APPLE_GREEK, RTL_TEXTENCODING_ISO_8859_7 );
     764           2 :         }
     765             : 
     766             :         void UnixCharsetFromTextEncoding_APPLE_GUJARATI()
     767             :         {
     768             :             check( RTL_TEXTENCODING_APPLE_GUJARATI, RTL_TEXTENCODING_ISO_8859_9 );
     769             :         }
     770             : 
     771             :         void UnixCharsetFromTextEncoding_APPLE_GURMUKHI()
     772             :         {
     773             :             check( RTL_TEXTENCODING_APPLE_GURMUKHI, RTL_TEXTENCODING_ISO_8859_5 );
     774             :         }
     775             : 
     776             :         void UnixCharsetFromTextEncoding_APPLE_HEBREW()
     777             :         {
     778             :             check( RTL_TEXTENCODING_APPLE_HEBREW, RTL_TEXTENCODING_ISO_8859_1 );
     779             :         }
     780             : 
     781           2 :         void UnixCharsetFromTextEncoding_APPLE_ICELAND()
     782             :         {
     783           2 :             check( RTL_TEXTENCODING_APPLE_ICELAND, RTL_TEXTENCODING_ISO_8859_1 );
     784           2 :         }
     785             : 
     786           2 :         void UnixCharsetFromTextEncoding_APPLE_ROMANIAN()
     787             :         {
     788           2 :             check( RTL_TEXTENCODING_APPLE_ROMANIAN, RTL_TEXTENCODING_ISO_8859_2 );
     789           2 :         }
     790             : 
     791             :         void UnixCharsetFromTextEncoding_APPLE_THAI()
     792             :         {
     793             :             check( RTL_TEXTENCODING_APPLE_THAI, RTL_TEXTENCODING_APPLE_THAI );
     794             :         }
     795             : 
     796           2 :         void UnixCharsetFromTextEncoding_APPLE_TURKISH()
     797             :         {
     798           2 :             check( RTL_TEXTENCODING_APPLE_TURKISH, RTL_TEXTENCODING_ISO_8859_9 );
     799           2 :         }
     800             : 
     801           2 :         void UnixCharsetFromTextEncoding_APPLE_UKRAINIAN()
     802             :         {
     803           2 :             check( RTL_TEXTENCODING_APPLE_UKRAINIAN, RTL_TEXTENCODING_ISO_8859_5 );
     804           2 :         }
     805             : 
     806           2 :         void UnixCharsetFromTextEncoding_APPLE_CHINSIMP()
     807             :         {
     808           2 :             check( RTL_TEXTENCODING_APPLE_CHINSIMP, RTL_TEXTENCODING_DONTKNOW );
     809           2 :         }
     810             : 
     811           2 :         void UnixCharsetFromTextEncoding_APPLE_CHINTRAD()
     812             :         {
     813           2 :             check( RTL_TEXTENCODING_APPLE_CHINTRAD, RTL_TEXTENCODING_DONTKNOW );
     814           2 :         }
     815             : 
     816           2 :         void UnixCharsetFromTextEncoding_APPLE_JAPANESE()
     817             :         {
     818           2 :             check( RTL_TEXTENCODING_APPLE_JAPANESE, RTL_TEXTENCODING_DONTKNOW );
     819           2 :         }
     820             : 
     821           2 :         void UnixCharsetFromTextEncoding_APPLE_KOREAN()
     822             :         {
     823           2 :             check( RTL_TEXTENCODING_APPLE_KOREAN, RTL_TEXTENCODING_DONTKNOW );
     824           2 :         }
     825             : 
     826           2 :         void UnixCharsetFromTextEncoding_MS_932()
     827             :         {
     828           2 :             check( RTL_TEXTENCODING_MS_932, RTL_TEXTENCODING_DONTKNOW );
     829           2 :         }
     830             : 
     831           2 :         void UnixCharsetFromTextEncoding_MS_936()
     832             :         {
     833           2 :             check( RTL_TEXTENCODING_MS_936, RTL_TEXTENCODING_DONTKNOW );
     834           2 :         }
     835             : 
     836           2 :         void UnixCharsetFromTextEncoding_MS_949()
     837             :         {
     838           2 :             check( RTL_TEXTENCODING_MS_949, RTL_TEXTENCODING_DONTKNOW );
     839           2 :         }
     840             : 
     841           2 :         void UnixCharsetFromTextEncoding_MS_950()
     842             :         {
     843           2 :             check( RTL_TEXTENCODING_MS_950, RTL_TEXTENCODING_DONTKNOW );
     844           2 :         }
     845             : 
     846           2 :         void UnixCharsetFromTextEncoding_SHIFT_JIS()
     847             :         {
     848           2 :             check( RTL_TEXTENCODING_SHIFT_JIS, RTL_TEXTENCODING_DONTKNOW );
     849           2 :         }
     850             : 
     851           2 :         void UnixCharsetFromTextEncoding_GB_2312()
     852             :         {
     853           2 :             check( RTL_TEXTENCODING_GB_2312, RTL_TEXTENCODING_DONTKNOW );
     854           2 :         }
     855             : 
     856           2 :         void UnixCharsetFromTextEncoding_GBT_12345()
     857             :         {
     858           2 :             check( RTL_TEXTENCODING_GBT_12345, RTL_TEXTENCODING_DONTKNOW );
     859           2 :         }
     860             : 
     861           2 :         void UnixCharsetFromTextEncoding_GBK()
     862             :         {
     863           2 :             check( RTL_TEXTENCODING_GBK, RTL_TEXTENCODING_DONTKNOW );
     864           2 :         }
     865             : 
     866           2 :         void UnixCharsetFromTextEncoding_BIG5()
     867             :         {
     868           2 :             check( RTL_TEXTENCODING_BIG5, RTL_TEXTENCODING_DONTKNOW );
     869           2 :         }
     870             : 
     871           2 :         void UnixCharsetFromTextEncoding_EUC_JP()
     872             :         {
     873           2 :             check( RTL_TEXTENCODING_EUC_JP, RTL_TEXTENCODING_DONTKNOW );
     874           2 :         }
     875             : 
     876           2 :         void UnixCharsetFromTextEncoding_EUC_CN()
     877             :         {
     878           2 :             check( RTL_TEXTENCODING_EUC_CN, RTL_TEXTENCODING_DONTKNOW );
     879           2 :         }
     880             : 
     881           2 :         void UnixCharsetFromTextEncoding_EUC_TW()
     882             :         {
     883           2 :             check( RTL_TEXTENCODING_EUC_TW, RTL_TEXTENCODING_DONTKNOW );
     884           2 :         }
     885             : 
     886           2 :         void UnixCharsetFromTextEncoding_ISO_2022_JP()
     887             :         {
     888           2 :             check( RTL_TEXTENCODING_ISO_2022_JP, RTL_TEXTENCODING_DONTKNOW );
     889           2 :         }
     890             : 
     891           2 :         void UnixCharsetFromTextEncoding_ISO_2022_CN()
     892             :         {
     893           2 :             check( RTL_TEXTENCODING_ISO_2022_CN, RTL_TEXTENCODING_DONTKNOW );
     894           2 :         }
     895             : 
     896           2 :         void UnixCharsetFromTextEncoding_KOI8_R()
     897             :         {
     898           2 :             check( RTL_TEXTENCODING_KOI8_R, RTL_TEXTENCODING_KOI8_R );
     899           2 :         }
     900             : 
     901           2 :         void UnixCharsetFromTextEncoding_UTF7()
     902             :         {
     903           2 :             check( RTL_TEXTENCODING_UTF7, RTL_TEXTENCODING_ISO_8859_1 );
     904           2 :         }
     905             : 
     906           2 :         void UnixCharsetFromTextEncoding_UTF8()
     907             :         {
     908           2 :             check( RTL_TEXTENCODING_UTF8, RTL_TEXTENCODING_ISO_8859_1 );
     909           2 :         }
     910             : 
     911           2 :         void UnixCharsetFromTextEncoding_ISO_8859_10()
     912             :         {
     913           2 :             check( RTL_TEXTENCODING_ISO_8859_10, RTL_TEXTENCODING_ISO_8859_10 );
     914           2 :         }
     915             : 
     916           2 :         void UnixCharsetFromTextEncoding_ISO_8859_13()
     917             :         {
     918           2 :             check( RTL_TEXTENCODING_ISO_8859_13, RTL_TEXTENCODING_ISO_8859_13 );
     919           2 :         }
     920             : 
     921           2 :         void UnixCharsetFromTextEncoding_EUC_KR()
     922             :         {
     923           2 :             check( RTL_TEXTENCODING_EUC_KR, RTL_TEXTENCODING_DONTKNOW );
     924           2 :         }
     925             : 
     926           2 :         void UnixCharsetFromTextEncoding_ISO_2022_KR()
     927             :         {
     928           2 :             check( RTL_TEXTENCODING_ISO_2022_KR, RTL_TEXTENCODING_DONTKNOW );
     929           2 :         }
     930             : 
     931           2 :         void UnixCharsetFromTextEncoding_JIS_X_0201()
     932             :         {
     933           2 :             check( RTL_TEXTENCODING_JIS_X_0201, RTL_TEXTENCODING_DONTKNOW );
     934           2 :         }
     935             : 
     936           2 :         void UnixCharsetFromTextEncoding_JIS_X_0208()
     937             :         {
     938           2 :             check( RTL_TEXTENCODING_JIS_X_0208, RTL_TEXTENCODING_DONTKNOW );
     939           2 :         }
     940             : 
     941           2 :         void UnixCharsetFromTextEncoding_JIS_X_0212()
     942             :         {
     943           2 :             check( RTL_TEXTENCODING_JIS_X_0212, RTL_TEXTENCODING_DONTKNOW );
     944           2 :         }
     945             : 
     946           2 :         void UnixCharsetFromTextEncoding_MS_1361()
     947             :         {
     948           2 :             check( RTL_TEXTENCODING_MS_1361, RTL_TEXTENCODING_DONTKNOW );
     949           2 :         }
     950             : 
     951           2 :         void UnixCharsetFromTextEncoding_GB_18030()
     952             :         {
     953           2 :             check( RTL_TEXTENCODING_GB_18030, RTL_TEXTENCODING_GBK );
     954           2 :         }
     955             : 
     956           2 :         void UnixCharsetFromTextEncoding_BIG5_HKSCS()
     957             :         {
     958           2 :             check( RTL_TEXTENCODING_BIG5_HKSCS, RTL_TEXTENCODING_DONTKNOW );
     959           2 :         }
     960             : 
     961           2 :         void UnixCharsetFromTextEncoding_TIS_620()
     962             :         {
     963           2 :             check( RTL_TEXTENCODING_TIS_620, RTL_TEXTENCODING_ISO_8859_1 );
     964           2 :         }
     965             : 
     966           2 :         void UnixCharsetFromTextEncoding_KOI8_U()
     967             :         {
     968           2 :             check( RTL_TEXTENCODING_KOI8_U, RTL_TEXTENCODING_KOI8_U );
     969           2 :         }
     970             : 
     971             :         void UnixCharsetFromTextEncoding_ISCII_DEVANAGARI()
     972             :         {
     973             :             check( RTL_TEXTENCODING_ISCII_DEVANAGARI, RTL_TEXTENCODING_ISCII_DEVANAGARI );
     974             :         }
     975             : 
     976             :         void UnixCharsetFromTextEncoding_JAVA_UTF8()
     977             :         {
     978             :             check( RTL_TEXTENCODING_JAVA_UTF8, RTL_TEXTENCODING_JAVA_UTF8 );
     979             :         }
     980             : 
     981           4 :         CPPUNIT_TEST_SUITE( testBestUnix );
     982           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1252 );
     983           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_ROMAN );
     984           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_437 );
     985           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_850 );
     986           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_860 );
     987           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_861 );
     988           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_863 );
     989           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_865 );
     990             : 
     991           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_SYMBOL );
     992           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ASCII_US );
     993           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_1 );
     994           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_2 );
     995           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_3 );
     996           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_4 );
     997           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_5 );
     998           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_6 );
     999           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_7 );
    1000           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_8 );
    1001           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_9 );
    1002           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_14 );
    1003           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_15 );
    1004           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_737 );
    1005           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_775 );
    1006           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_852 );
    1007           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_855 );
    1008           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_857 );
    1009           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_862 );
    1010           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_864 );
    1011           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_866 );
    1012           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_IBM_869 );
    1013           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_874 );
    1014           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1250 );
    1015           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1251 );
    1016           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1253 );
    1017           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1254 );
    1018           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1255 );
    1019           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1256 );
    1020           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1257 );
    1021           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1258 );
    1022             : #if 0
    1023             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_ARABIC );
    1024             : #endif
    1025           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_CENTEURO );
    1026           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_CROATIAN );
    1027           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_CYRILLIC );
    1028             : #if 0
    1029             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_DEVANAGARI );
    1030             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_FARSI );
    1031             : #endif
    1032           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_GREEK );
    1033             : #if 0
    1034             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_GUJARATI );
    1035             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_GURMUKHI );
    1036             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_HEBREW );
    1037             : #endif
    1038           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_ICELAND );
    1039           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_ROMANIAN );
    1040             : #if 0
    1041             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_THAI );
    1042             : #endif
    1043           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_TURKISH );
    1044           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_UKRAINIAN );
    1045           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_CHINSIMP );
    1046           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_CHINTRAD );
    1047           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_JAPANESE );
    1048           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_APPLE_KOREAN );
    1049           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_932 );
    1050           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_936 );
    1051           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_949 );
    1052           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_950 );
    1053           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_SHIFT_JIS );
    1054           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_GB_2312 );
    1055           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_GBT_12345 );
    1056           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_GBK );
    1057           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_BIG5 );
    1058           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_EUC_JP );
    1059           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_EUC_CN );
    1060           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_EUC_TW );
    1061           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_2022_JP );
    1062           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_2022_CN );
    1063           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_KOI8_R );
    1064           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_UTF7 );
    1065           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_UTF8 );
    1066           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_10 );
    1067           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_8859_13 );
    1068           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_EUC_KR );
    1069           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISO_2022_KR );
    1070           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_JIS_X_0201 );
    1071           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_JIS_X_0208 );
    1072           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_JIS_X_0212 );
    1073           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_MS_1361 );
    1074           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_GB_18030 );
    1075           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_BIG5_HKSCS );
    1076           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_TIS_620 );
    1077           2 :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_KOI8_U );
    1078             : #if 0
    1079             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_ISCII_DEVANAGARI );
    1080             :         CPPUNIT_TEST( UnixCharsetFromTextEncoding_JAVA_UTF8 );
    1081             : #endif
    1082             : 
    1083           4 :         CPPUNIT_TEST_SUITE_END( );
    1084             :     };
    1085             : 
    1086         534 :     class testBestWindows : public CppUnit::TestFixture
    1087             :     {
    1088             :     public:
    1089         178 :         void setUp()
    1090             :             {
    1091         178 :             }
    1092             : 
    1093         178 :         void check(rtl_TextEncoding nIn, rtl_TextEncoding nOut)
    1094             :         {
    1095         178 :             const sal_uInt8 nCharSet = rtl_getBestWindowsCharsetFromTextEncoding(nIn);
    1096         178 :             rtl_TextEncoding eTextEnc = rtl_getTextEncodingFromWindowsCharset(nCharSet);
    1097         178 :             CPPUNIT_ASSERT_MESSAGE("rtl_getBestUnixCharsetFromTextEncoding && rtl_getTextEncodingFromWindowsCharset differ", eTextEnc = nOut);
    1098         178 :         }
    1099             : 
    1100           2 :         void WindowsCharsetFromTextEncoding_MS_1252()
    1101             :         {
    1102           2 :             check( RTL_TEXTENCODING_MS_1252, RTL_TEXTENCODING_MS_1252 );
    1103           2 :         }
    1104             : 
    1105           2 :         void WindowsCharsetFromTextEncoding_APPLE_ROMAN()
    1106             :         {
    1107           2 :             check( RTL_TEXTENCODING_APPLE_ROMAN, RTL_TEXTENCODING_APPLE_ROMAN );
    1108           2 :         }
    1109             : 
    1110           2 :         void WindowsCharsetFromTextEncoding_IBM_437()
    1111             :         {
    1112           2 :             check( RTL_TEXTENCODING_IBM_437, RTL_TEXTENCODING_MS_1252 );
    1113           2 :         }
    1114             : 
    1115           2 :         void WindowsCharsetFromTextEncoding_IBM_850()
    1116             :         {
    1117           2 :             check( RTL_TEXTENCODING_IBM_850, RTL_TEXTENCODING_MS_1252 );
    1118           2 :         }
    1119             : 
    1120           2 :         void WindowsCharsetFromTextEncoding_IBM_860()
    1121             :         {
    1122           2 :             check( RTL_TEXTENCODING_IBM_860, RTL_TEXTENCODING_MS_1252 );
    1123           2 :         }
    1124             : 
    1125           2 :         void WindowsCharsetFromTextEncoding_IBM_861()
    1126             :         {
    1127           2 :             check( RTL_TEXTENCODING_IBM_861, RTL_TEXTENCODING_MS_1252 );
    1128           2 :         }
    1129             : 
    1130           2 :         void WindowsCharsetFromTextEncoding_IBM_863()
    1131             :         {
    1132           2 :             check( RTL_TEXTENCODING_IBM_863, RTL_TEXTENCODING_MS_1252 );
    1133           2 :         }
    1134             : 
    1135           2 :         void WindowsCharsetFromTextEncoding_IBM_865()
    1136             :         {
    1137           2 :             check( RTL_TEXTENCODING_IBM_865, RTL_TEXTENCODING_MS_1252 );
    1138           2 :         }
    1139             : 
    1140           2 :         void WindowsCharsetFromTextEncoding_SYMBOL()
    1141             :         {
    1142           2 :             check( RTL_TEXTENCODING_SYMBOL, RTL_TEXTENCODING_SYMBOL );
    1143           2 :         }
    1144             : 
    1145           2 :         void WindowsCharsetFromTextEncoding_ASCII_US()
    1146             :         {
    1147           2 :             check( RTL_TEXTENCODING_ASCII_US, RTL_TEXTENCODING_MS_1252 );
    1148           2 :         }
    1149             : 
    1150           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_1()
    1151             :         {
    1152           2 :             check( RTL_TEXTENCODING_ISO_8859_1, RTL_TEXTENCODING_MS_1252 );
    1153           2 :         }
    1154             : 
    1155           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_2()
    1156             :         {
    1157           2 :             check( RTL_TEXTENCODING_ISO_8859_2, RTL_TEXTENCODING_MS_1252 );
    1158           2 :         }
    1159             : 
    1160           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_3()
    1161             :         {
    1162           2 :             check( RTL_TEXTENCODING_ISO_8859_3, RTL_TEXTENCODING_MS_1252 );
    1163           2 :         }
    1164             : 
    1165           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_4()
    1166             :         {
    1167           2 :             check( RTL_TEXTENCODING_ISO_8859_4, RTL_TEXTENCODING_MS_1257 );
    1168           2 :         }
    1169             : 
    1170           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_5()
    1171             :         {
    1172           2 :             check( RTL_TEXTENCODING_ISO_8859_5, RTL_TEXTENCODING_MS_1252 );
    1173           2 :         }
    1174             : 
    1175           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_6()
    1176             :         {
    1177           2 :             check( RTL_TEXTENCODING_ISO_8859_6, RTL_TEXTENCODING_MS_1252 );
    1178           2 :         }
    1179             : 
    1180           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_7()
    1181             :         {
    1182           2 :             check( RTL_TEXTENCODING_ISO_8859_7, RTL_TEXTENCODING_MS_1252 );
    1183           2 :         }
    1184             : 
    1185           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_8()
    1186             :         {
    1187           2 :             check( RTL_TEXTENCODING_ISO_8859_8, RTL_TEXTENCODING_MS_1252 );
    1188           2 :         }
    1189             : 
    1190           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_9()
    1191             :         {
    1192           2 :             check( RTL_TEXTENCODING_ISO_8859_9, RTL_TEXTENCODING_MS_1252 );
    1193           2 :         }
    1194             : 
    1195           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_14()
    1196             :         {
    1197           2 :             check( RTL_TEXTENCODING_ISO_8859_14, RTL_TEXTENCODING_MS_1252 );
    1198           2 :         }
    1199             : 
    1200           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_15()
    1201             :         {
    1202           2 :             check( RTL_TEXTENCODING_ISO_8859_15, RTL_TEXTENCODING_MS_1252 );
    1203           2 :         }
    1204             : 
    1205           2 :         void WindowsCharsetFromTextEncoding_IBM_737()
    1206             :         {
    1207           2 :             check( RTL_TEXTENCODING_IBM_737, RTL_TEXTENCODING_MS_1252 );
    1208           2 :         }
    1209             : 
    1210           2 :         void WindowsCharsetFromTextEncoding_IBM_775()
    1211             :         {
    1212           2 :             check( RTL_TEXTENCODING_IBM_775, RTL_TEXTENCODING_MS_1252 );
    1213           2 :         }
    1214             : 
    1215           2 :         void WindowsCharsetFromTextEncoding_IBM_852()
    1216             :         {
    1217           2 :             check( RTL_TEXTENCODING_IBM_852, RTL_TEXTENCODING_MS_1252 );
    1218           2 :         }
    1219             : 
    1220           2 :         void WindowsCharsetFromTextEncoding_IBM_855()
    1221             :         {
    1222           2 :             check( RTL_TEXTENCODING_IBM_855, RTL_TEXTENCODING_MS_1252 );
    1223           2 :         }
    1224             : 
    1225           2 :         void WindowsCharsetFromTextEncoding_IBM_857()
    1226             :         {
    1227           2 :             check( RTL_TEXTENCODING_IBM_857, RTL_TEXTENCODING_MS_1252 );
    1228           2 :         }
    1229             : 
    1230           2 :         void WindowsCharsetFromTextEncoding_IBM_862()
    1231             :         {
    1232           2 :             check( RTL_TEXTENCODING_IBM_862, RTL_TEXTENCODING_MS_1252 );
    1233           2 :         }
    1234             : 
    1235           2 :         void WindowsCharsetFromTextEncoding_IBM_864()
    1236             :         {
    1237           2 :             check( RTL_TEXTENCODING_IBM_864, RTL_TEXTENCODING_MS_1252 );
    1238           2 :         }
    1239             : 
    1240           2 :         void WindowsCharsetFromTextEncoding_IBM_866()
    1241             :         {
    1242           2 :             check( RTL_TEXTENCODING_IBM_866, RTL_TEXTENCODING_MS_1252 );
    1243           2 :         }
    1244             : 
    1245           2 :         void WindowsCharsetFromTextEncoding_IBM_869()
    1246             :         {
    1247           2 :             check( RTL_TEXTENCODING_IBM_869, RTL_TEXTENCODING_MS_1252 );
    1248           2 :         }
    1249             : 
    1250           2 :         void WindowsCharsetFromTextEncoding_MS_874()
    1251             :         {
    1252           2 :             check( RTL_TEXTENCODING_MS_874, RTL_TEXTENCODING_MS_1252 );
    1253           2 :         }
    1254             : 
    1255           2 :         void WindowsCharsetFromTextEncoding_MS_1250()
    1256             :         {
    1257           2 :             check( RTL_TEXTENCODING_MS_1250, RTL_TEXTENCODING_MS_1252 );
    1258           2 :         }
    1259             : 
    1260           2 :         void WindowsCharsetFromTextEncoding_MS_1251()
    1261             :         {
    1262           2 :             check( RTL_TEXTENCODING_MS_1251, RTL_TEXTENCODING_MS_1252 );
    1263           2 :         }
    1264             : 
    1265           2 :         void WindowsCharsetFromTextEncoding_MS_1253()
    1266             :         {
    1267           2 :             check( RTL_TEXTENCODING_MS_1253, RTL_TEXTENCODING_MS_1252 );
    1268           2 :         }
    1269             : 
    1270           2 :         void WindowsCharsetFromTextEncoding_MS_1254()
    1271             :         {
    1272           2 :             check( RTL_TEXTENCODING_MS_1254, RTL_TEXTENCODING_MS_1252 );
    1273           2 :         }
    1274             : 
    1275           2 :         void WindowsCharsetFromTextEncoding_MS_1255()
    1276             :         {
    1277           2 :             check( RTL_TEXTENCODING_MS_1255, RTL_TEXTENCODING_MS_1252 );
    1278           2 :         }
    1279             : 
    1280           2 :         void WindowsCharsetFromTextEncoding_MS_1256()
    1281             :         {
    1282           2 :             check( RTL_TEXTENCODING_MS_1256, RTL_TEXTENCODING_MS_1252 );
    1283           2 :         }
    1284             : 
    1285           2 :         void WindowsCharsetFromTextEncoding_MS_1257()
    1286             :         {
    1287           2 :             check( RTL_TEXTENCODING_MS_1257, RTL_TEXTENCODING_MS_1252 );
    1288           2 :         }
    1289             : 
    1290           2 :         void WindowsCharsetFromTextEncoding_MS_1258()
    1291             :         {
    1292           2 :             check( RTL_TEXTENCODING_MS_1258, RTL_TEXTENCODING_MS_1252 );
    1293           2 :         }
    1294             : 
    1295           2 :         void WindowsCharsetFromTextEncoding_APPLE_ARABIC()
    1296             :         {
    1297           2 :             check( RTL_TEXTENCODING_APPLE_ARABIC, RTL_TEXTENCODING_MS_1252 );
    1298           2 :         }
    1299             : 
    1300           2 :         void WindowsCharsetFromTextEncoding_APPLE_CENTEURO()
    1301             :         {
    1302           2 :             check( RTL_TEXTENCODING_APPLE_CENTEURO, RTL_TEXTENCODING_MS_1252 );
    1303           2 :         }
    1304             : 
    1305           2 :         void WindowsCharsetFromTextEncoding_APPLE_CROATIAN()
    1306             :         {
    1307           2 :             check( RTL_TEXTENCODING_APPLE_CROATIAN, RTL_TEXTENCODING_MS_1252 );
    1308           2 :         }
    1309             : 
    1310           2 :         void WindowsCharsetFromTextEncoding_APPLE_CYRILLIC()
    1311             :         {
    1312           2 :             check( RTL_TEXTENCODING_APPLE_CYRILLIC, RTL_TEXTENCODING_MS_1252 );
    1313           2 :         }
    1314             : 
    1315           2 :         void WindowsCharsetFromTextEncoding_APPLE_DEVANAGARI()
    1316             :         {
    1317           2 :             check( RTL_TEXTENCODING_APPLE_DEVANAGARI, RTL_TEXTENCODING_MS_1252 );
    1318           2 :         }
    1319             : 
    1320           2 :         void WindowsCharsetFromTextEncoding_APPLE_FARSI()
    1321             :         {
    1322           2 :             check( RTL_TEXTENCODING_APPLE_FARSI, RTL_TEXTENCODING_MS_1252 );
    1323           2 :         }
    1324             : 
    1325           2 :         void WindowsCharsetFromTextEncoding_APPLE_GREEK()
    1326             :         {
    1327           2 :             check( RTL_TEXTENCODING_APPLE_GREEK, RTL_TEXTENCODING_MS_1252 );
    1328           2 :         }
    1329             : 
    1330           2 :         void WindowsCharsetFromTextEncoding_APPLE_GUJARATI()
    1331             :         {
    1332           2 :             check( RTL_TEXTENCODING_APPLE_GUJARATI, RTL_TEXTENCODING_MS_1252 );
    1333           2 :         }
    1334             : 
    1335           2 :         void WindowsCharsetFromTextEncoding_APPLE_GURMUKHI()
    1336             :         {
    1337           2 :             check( RTL_TEXTENCODING_APPLE_GURMUKHI, RTL_TEXTENCODING_MS_1252 );
    1338           2 :         }
    1339             : 
    1340           2 :         void WindowsCharsetFromTextEncoding_APPLE_HEBREW()
    1341             :         {
    1342           2 :             check( RTL_TEXTENCODING_APPLE_HEBREW, RTL_TEXTENCODING_MS_1252 );
    1343           2 :         }
    1344             : 
    1345           2 :         void WindowsCharsetFromTextEncoding_APPLE_ICELAND()
    1346             :         {
    1347           2 :             check( RTL_TEXTENCODING_APPLE_ICELAND, RTL_TEXTENCODING_MS_1252 );
    1348           2 :         }
    1349             : 
    1350           2 :         void WindowsCharsetFromTextEncoding_APPLE_ROMANIAN()
    1351             :         {
    1352           2 :             check( RTL_TEXTENCODING_APPLE_ROMANIAN, RTL_TEXTENCODING_MS_1252 );
    1353           2 :         }
    1354             : 
    1355           2 :         void WindowsCharsetFromTextEncoding_APPLE_THAI()
    1356             :         {
    1357           2 :             check( RTL_TEXTENCODING_APPLE_THAI, RTL_TEXTENCODING_MS_1252 );
    1358           2 :         }
    1359             : 
    1360           2 :         void WindowsCharsetFromTextEncoding_APPLE_TURKISH()
    1361             :         {
    1362           2 :             check( RTL_TEXTENCODING_APPLE_TURKISH, RTL_TEXTENCODING_MS_1252 );
    1363           2 :         }
    1364             : 
    1365           2 :         void WindowsCharsetFromTextEncoding_APPLE_UKRAINIAN()
    1366             :         {
    1367           2 :             check( RTL_TEXTENCODING_APPLE_UKRAINIAN, RTL_TEXTENCODING_MS_1252 );
    1368           2 :         }
    1369             : 
    1370           2 :         void WindowsCharsetFromTextEncoding_APPLE_CHINSIMP()
    1371             :         {
    1372           2 :             check( RTL_TEXTENCODING_APPLE_CHINSIMP, RTL_TEXTENCODING_MS_1252 );
    1373           2 :         }
    1374             : 
    1375           2 :         void WindowsCharsetFromTextEncoding_APPLE_CHINTRAD()
    1376             :         {
    1377           2 :             check( RTL_TEXTENCODING_APPLE_CHINTRAD, RTL_TEXTENCODING_MS_1252 );
    1378           2 :         }
    1379             : 
    1380           2 :         void WindowsCharsetFromTextEncoding_APPLE_JAPANESE()
    1381             :         {
    1382           2 :             check( RTL_TEXTENCODING_APPLE_JAPANESE, RTL_TEXTENCODING_MS_1252 );
    1383           2 :         }
    1384             : 
    1385           2 :         void WindowsCharsetFromTextEncoding_APPLE_KOREAN()
    1386             :         {
    1387           2 :             check( RTL_TEXTENCODING_APPLE_KOREAN, RTL_TEXTENCODING_MS_1252 );
    1388           2 :         }
    1389             : 
    1390           2 :         void WindowsCharsetFromTextEncoding_MS_932()
    1391             :         {
    1392           2 :             check( RTL_TEXTENCODING_MS_932, RTL_TEXTENCODING_MS_1252 );
    1393           2 :         }
    1394             : 
    1395           2 :         void WindowsCharsetFromTextEncoding_MS_936()
    1396             :         {
    1397           2 :             check( RTL_TEXTENCODING_MS_936, RTL_TEXTENCODING_MS_1252 );
    1398           2 :         }
    1399             : 
    1400           2 :         void WindowsCharsetFromTextEncoding_MS_949()
    1401             :         {
    1402           2 :             check( RTL_TEXTENCODING_MS_949, RTL_TEXTENCODING_MS_1252 );
    1403           2 :         }
    1404             : 
    1405           2 :         void WindowsCharsetFromTextEncoding_MS_950()
    1406             :         {
    1407           2 :             check( RTL_TEXTENCODING_MS_950, RTL_TEXTENCODING_MS_1252 );
    1408           2 :         }
    1409             : 
    1410           2 :         void WindowsCharsetFromTextEncoding_SHIFT_JIS()
    1411             :         {
    1412           2 :             check( RTL_TEXTENCODING_SHIFT_JIS, RTL_TEXTENCODING_MS_1252 );
    1413           2 :         }
    1414             : 
    1415           2 :         void WindowsCharsetFromTextEncoding_GB_2312()
    1416             :         {
    1417           2 :             check( RTL_TEXTENCODING_GB_2312, RTL_TEXTENCODING_MS_1252 );
    1418           2 :         }
    1419             : 
    1420           2 :         void WindowsCharsetFromTextEncoding_GBT_12345()
    1421             :         {
    1422           2 :             check( RTL_TEXTENCODING_GBT_12345, RTL_TEXTENCODING_MS_1252 );
    1423           2 :         }
    1424             : 
    1425           2 :         void WindowsCharsetFromTextEncoding_GBK()
    1426             :         {
    1427           2 :             check( RTL_TEXTENCODING_GBK, RTL_TEXTENCODING_MS_1252 );
    1428           2 :         }
    1429             : 
    1430           2 :         void WindowsCharsetFromTextEncoding_BIG5()
    1431             :         {
    1432           2 :             check( RTL_TEXTENCODING_BIG5, RTL_TEXTENCODING_MS_1252 );
    1433           2 :         }
    1434             : 
    1435           2 :         void WindowsCharsetFromTextEncoding_EUC_JP()
    1436             :         {
    1437           2 :             check( RTL_TEXTENCODING_EUC_JP, RTL_TEXTENCODING_MS_1252 );
    1438           2 :         }
    1439             : 
    1440           2 :         void WindowsCharsetFromTextEncoding_EUC_CN()
    1441             :         {
    1442           2 :             check( RTL_TEXTENCODING_EUC_CN, RTL_TEXTENCODING_MS_1252 );
    1443           2 :         }
    1444             : 
    1445           2 :         void WindowsCharsetFromTextEncoding_EUC_TW()
    1446             :         {
    1447           2 :             check( RTL_TEXTENCODING_EUC_TW, RTL_TEXTENCODING_MS_1252 );
    1448           2 :         }
    1449             : 
    1450           2 :         void WindowsCharsetFromTextEncoding_ISO_2022_JP()
    1451             :         {
    1452           2 :             check( RTL_TEXTENCODING_ISO_2022_JP, RTL_TEXTENCODING_MS_1252 );
    1453           2 :         }
    1454             : 
    1455           2 :         void WindowsCharsetFromTextEncoding_ISO_2022_CN()
    1456             :         {
    1457           2 :             check( RTL_TEXTENCODING_ISO_2022_CN, RTL_TEXTENCODING_MS_1252 );
    1458           2 :         }
    1459             : 
    1460           2 :         void WindowsCharsetFromTextEncoding_KOI8_R()
    1461             :         {
    1462           2 :             check( RTL_TEXTENCODING_KOI8_R, RTL_TEXTENCODING_MS_1252 );
    1463           2 :         }
    1464             : 
    1465           2 :         void WindowsCharsetFromTextEncoding_UTF7()
    1466             :         {
    1467           2 :             check( RTL_TEXTENCODING_UTF7, RTL_TEXTENCODING_MS_1252 );
    1468           2 :         }
    1469             : 
    1470           2 :         void WindowsCharsetFromTextEncoding_UTF8()
    1471             :         {
    1472           2 :             check( RTL_TEXTENCODING_UTF8, RTL_TEXTENCODING_MS_1252 );
    1473           2 :         }
    1474             : 
    1475           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_10()
    1476             :         {
    1477           2 :             check( RTL_TEXTENCODING_ISO_8859_10, RTL_TEXTENCODING_MS_1252 );
    1478           2 :         }
    1479             : 
    1480           2 :         void WindowsCharsetFromTextEncoding_ISO_8859_13()
    1481             :         {
    1482           2 :             check( RTL_TEXTENCODING_ISO_8859_13, RTL_TEXTENCODING_MS_1252 );
    1483           2 :         }
    1484             : 
    1485           2 :         void WindowsCharsetFromTextEncoding_EUC_KR()
    1486             :         {
    1487           2 :             check( RTL_TEXTENCODING_EUC_KR, RTL_TEXTENCODING_MS_1252 );
    1488           2 :         }
    1489             : 
    1490           2 :         void WindowsCharsetFromTextEncoding_ISO_2022_KR()
    1491             :         {
    1492           2 :             check( RTL_TEXTENCODING_ISO_2022_KR, RTL_TEXTENCODING_MS_1252 );
    1493           2 :         }
    1494             : 
    1495           2 :         void WindowsCharsetFromTextEncoding_JIS_X_0201()
    1496             :         {
    1497           2 :             check( RTL_TEXTENCODING_JIS_X_0201, RTL_TEXTENCODING_MS_1252 );
    1498           2 :         }
    1499             : 
    1500           2 :         void WindowsCharsetFromTextEncoding_JIS_X_0208()
    1501             :         {
    1502           2 :             check( RTL_TEXTENCODING_JIS_X_0208, RTL_TEXTENCODING_MS_1252 );
    1503           2 :         }
    1504             : 
    1505           2 :         void WindowsCharsetFromTextEncoding_JIS_X_0212()
    1506             :         {
    1507           2 :             check( RTL_TEXTENCODING_JIS_X_0212, RTL_TEXTENCODING_MS_1252 );
    1508           2 :         }
    1509             : 
    1510           2 :         void WindowsCharsetFromTextEncoding_MS_1361()
    1511             :         {
    1512           2 :             check( RTL_TEXTENCODING_MS_1361, RTL_TEXTENCODING_MS_1252 );
    1513           2 :         }
    1514             : 
    1515           2 :         void WindowsCharsetFromTextEncoding_GB_18030()
    1516             :         {
    1517           2 :             check( RTL_TEXTENCODING_GB_18030, RTL_TEXTENCODING_MS_1252 );
    1518           2 :         }
    1519             : 
    1520           2 :         void WindowsCharsetFromTextEncoding_BIG5_HKSCS()
    1521             :         {
    1522           2 :             check( RTL_TEXTENCODING_BIG5_HKSCS, RTL_TEXTENCODING_MS_1252 );
    1523           2 :         }
    1524             : 
    1525           2 :         void WindowsCharsetFromTextEncoding_TIS_620()
    1526             :         {
    1527           2 :             check( RTL_TEXTENCODING_TIS_620, RTL_TEXTENCODING_MS_1252 );
    1528           2 :         }
    1529             : 
    1530           2 :         void WindowsCharsetFromTextEncoding_KOI8_U()
    1531             :         {
    1532           2 :             check( RTL_TEXTENCODING_KOI8_U, RTL_TEXTENCODING_MS_1252 );
    1533           2 :         }
    1534             : 
    1535           2 :         void WindowsCharsetFromTextEncoding_ISCII_DEVANAGARI()
    1536             :         {
    1537           2 :             check( RTL_TEXTENCODING_ISCII_DEVANAGARI, RTL_TEXTENCODING_MS_1252 );
    1538           2 :         }
    1539             : 
    1540           2 :         void WindowsCharsetFromTextEncoding_JAVA_UTF8()
    1541             :         {
    1542           2 :             check( RTL_TEXTENCODING_JAVA_UTF8, RTL_TEXTENCODING_MS_1252 );
    1543           2 :         }
    1544             : 
    1545           4 :         CPPUNIT_TEST_SUITE( testBestWindows );
    1546           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1252 );
    1547           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_ROMAN );
    1548           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_437 );
    1549           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_850 );
    1550           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_860 );
    1551           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_861 );
    1552           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_863 );
    1553           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_865 );
    1554           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_SYMBOL );
    1555           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ASCII_US );
    1556           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_1 );
    1557           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_2 );
    1558           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_3 );
    1559           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_4 );
    1560           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_5 );
    1561           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_6 );
    1562           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_7 );
    1563           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_8 );
    1564           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_9 );
    1565           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_14 );
    1566           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_15 );
    1567           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_737 );
    1568           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_775 );
    1569           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_852 );
    1570           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_855 );
    1571           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_857 );
    1572           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_862 );
    1573           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_864 );
    1574           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_866 );
    1575           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_IBM_869 );
    1576           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_874 );
    1577           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1250 );
    1578           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1251 );
    1579           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1253 );
    1580           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1254 );
    1581           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1255 );
    1582           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1256 );
    1583           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1257 );
    1584           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1258 );
    1585           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_ARABIC );
    1586           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_CENTEURO );
    1587           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_CROATIAN );
    1588           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_CYRILLIC );
    1589           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_DEVANAGARI );
    1590           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_FARSI );
    1591           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_GREEK );
    1592           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_GUJARATI );
    1593           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_GURMUKHI );
    1594           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_HEBREW );
    1595           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_ICELAND );
    1596           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_ROMANIAN );
    1597           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_THAI );
    1598           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_TURKISH );
    1599           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_UKRAINIAN );
    1600           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_CHINSIMP );
    1601           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_CHINTRAD );
    1602           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_JAPANESE );
    1603           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_APPLE_KOREAN );
    1604           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_932 );
    1605           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_936 );
    1606           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_949 );
    1607           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_950 );
    1608           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_SHIFT_JIS );
    1609           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_GB_2312 );
    1610           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_GBT_12345 );
    1611           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_GBK );
    1612           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_BIG5 );
    1613           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_EUC_JP );
    1614           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_EUC_CN );
    1615           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_EUC_TW );
    1616           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_2022_JP );
    1617           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_2022_CN );
    1618           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_KOI8_R );
    1619           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_UTF7 );
    1620           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_UTF8 );
    1621           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_10 );
    1622           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_8859_13 );
    1623           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_EUC_KR );
    1624           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISO_2022_KR );
    1625           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_JIS_X_0201 );
    1626           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_JIS_X_0208 );
    1627           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_JIS_X_0212 );
    1628           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_MS_1361 );
    1629           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_GB_18030 );
    1630           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_BIG5_HKSCS );
    1631           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_TIS_620 );
    1632           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_KOI8_U );
    1633           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_ISCII_DEVANAGARI );
    1634           2 :         CPPUNIT_TEST( WindowsCharsetFromTextEncoding_JAVA_UTF8 );
    1635             : 
    1636           4 :         CPPUNIT_TEST_SUITE_END( );
    1637             :     };
    1638             : 
    1639           6 :     class testTextEncodingInfo: public CppUnit::TestFixture
    1640             :     {
    1641             :     public:
    1642             :         // initialise your test code values here.
    1643           2 :         void setUp()
    1644             :             {
    1645           2 :             }
    1646             : 
    1647           2 :         void tearDown()
    1648             :             {
    1649           2 :             }
    1650             : 
    1651             :         // not implemented encoding test
    1652           2 :         void testTextEncodingInfo_001()
    1653             :             {
    1654             :                 rtl_TextEncodingInfo aInfo1, aInfo2, aInfo3, aInfo4, aInfo5;
    1655           2 :                 aInfo1.StructSize = 4;
    1656             :                 // not implemented
    1657           2 :                 sal_Bool bRes1 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_ARABIC, &aInfo1 );
    1658             :                 // implemented
    1659           2 :                 sal_Bool bRes11 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_CYRILLIC, &aInfo1 );
    1660           2 :                 CPPUNIT_ASSERT_MESSAGE("should return sal_False.", bRes1 == sal_False && bRes11 == sal_False );
    1661             : 
    1662           2 :                 aInfo2.StructSize = 5;
    1663           2 :                 sal_Bool bRes2 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_ARABIC, &aInfo2 );
    1664           2 :                 sal_Bool bRes21 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_CYRILLIC, &aInfo2 );
    1665           2 :                 CPPUNIT_ASSERT_MESSAGE("StructSize<6 should return sal_True", bRes2 == sal_True && bRes21 == sal_True && aInfo2.MinimumCharSize >=1 );
    1666             : 
    1667           2 :                 aInfo3.StructSize = 6;
    1668           2 :                 sal_Bool bRes3 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_ARABIC, &aInfo3 );
    1669           2 :                 sal_Bool bRes31 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_CYRILLIC, &aInfo3 );
    1670           2 :                 CPPUNIT_ASSERT_MESSAGE("StructSize<6 should return sal_True", bRes3 == sal_True && bRes31 == sal_True );
    1671             : //&& aInfo2.MinimumCharSize >=1 );
    1672             : 
    1673           2 :                 aInfo4.StructSize = 8;
    1674           2 :                 sal_Bool bRes4 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_ARABIC, &aInfo4 );
    1675           2 :                 sal_Bool bRes41 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_CYRILLIC, &aInfo4);
    1676           2 :                CPPUNIT_ASSERT_MESSAGE("StructSize<6 should return sal_True", bRes4 == sal_True && bRes41 == sal_True);
    1677             : // && aInfo2.MinimumCharSize >=1 );
    1678             : 
    1679           2 :         aInfo5.StructSize = sizeof aInfo5;
    1680           2 :                 sal_Bool bRes5 = rtl_getTextEncodingInfo( RTL_TEXTENCODING_APPLE_ARABIC, &aInfo5 );
    1681           2 :                 CPPUNIT_ASSERT_MESSAGE("StructSize<6 should return sal_True", bRes5 == sal_False && aInfo5.Flags == 0);
    1682             : 
    1683           2 :             }
    1684           4 :         CPPUNIT_TEST_SUITE(testTextEncodingInfo);
    1685           2 :         CPPUNIT_TEST(testTextEncodingInfo_001);
    1686           4 :         CPPUNIT_TEST_SUITE_END();
    1687             :     };
    1688             : 
    1689          12 :     class testEncodingFromUnix: public CppUnit::TestFixture
    1690             :     {
    1691             :     public:
    1692           2 :         void testIso8859() {
    1693           2 :             check(RTL_TEXTENCODING_DONTKNOW, "ISO8859");
    1694           2 :             check(RTL_TEXTENCODING_DONTKNOW, "ISO8859-0");
    1695           2 :             check(RTL_TEXTENCODING_DONTKNOW, "ISO8859-01");
    1696           2 :             check(RTL_TEXTENCODING_DONTKNOW, "ISO8859_1");
    1697           2 :             check(RTL_TEXTENCODING_DONTKNOW, "ISO88591");
    1698           2 :             check(RTL_TEXTENCODING_ISO_8859_1, "ISO8859-1");
    1699           2 :             check(RTL_TEXTENCODING_ISO_8859_2, "ISO8859-2");
    1700           2 :             check(RTL_TEXTENCODING_ISO_8859_3, "ISO8859-3");
    1701           2 :             check(RTL_TEXTENCODING_ISO_8859_4, "ISO8859-4");
    1702           2 :             check(RTL_TEXTENCODING_ISO_8859_5, "ISO8859-5");
    1703           2 :             check(RTL_TEXTENCODING_ISO_8859_6, "ISO8859-6");
    1704           2 :             check(RTL_TEXTENCODING_ISO_8859_7, "ISO8859-7");
    1705           2 :             check(RTL_TEXTENCODING_ISO_8859_8, "ISO8859-8");
    1706           2 :             check(RTL_TEXTENCODING_ISO_8859_9, "ISO8859-9");
    1707           2 :             check(RTL_TEXTENCODING_ISO_8859_10, "ISO8859-10");
    1708           2 :             check(RTL_TEXTENCODING_TIS_620, "ISO8859-11");
    1709           2 :             check(RTL_TEXTENCODING_ISO_8859_13, "ISO8859-13");
    1710           2 :             check(RTL_TEXTENCODING_ISO_8859_14, "ISO8859-14");
    1711           2 :             check(RTL_TEXTENCODING_ISO_8859_15, "ISO8859-15");
    1712           2 :         }
    1713             : 
    1714           2 :         void testTis620() {
    1715           2 :             check(RTL_TEXTENCODING_DONTKNOW, "TIS620");
    1716           2 :             check(RTL_TEXTENCODING_TIS_620, "TIS620-0");
    1717           2 :             check(RTL_TEXTENCODING_DONTKNOW, "TIS620-1");
    1718           2 :             check(RTL_TEXTENCODING_TIS_620, "TIS620-2529");
    1719           2 :             check(RTL_TEXTENCODING_TIS_620, "TIS620-2533");
    1720           2 :             check(RTL_TEXTENCODING_DONTKNOW, "TIS620.2529-0");
    1721           2 :             check(RTL_TEXTENCODING_TIS_620, "TIS620.2529-1");
    1722           2 :             check(RTL_TEXTENCODING_DONTKNOW, "TIS620.2529-2");
    1723           2 :             check(RTL_TEXTENCODING_TIS_620, "TIS620.2533-0");
    1724           2 :             check(RTL_TEXTENCODING_TIS_620, "TIS620.2533-1");
    1725           2 :             check(RTL_TEXTENCODING_DONTKNOW, "TIS620.2533-2");
    1726           2 :         }
    1727             : 
    1728           4 :         CPPUNIT_TEST_SUITE(testEncodingFromUnix);
    1729           2 :         CPPUNIT_TEST(testIso8859);
    1730           2 :         CPPUNIT_TEST(testTis620);
    1731           4 :         CPPUNIT_TEST_SUITE_END();
    1732             : 
    1733             :     private:
    1734          60 :         void check(rtl_TextEncoding expected, char const * input) {
    1735         120 :             CPPUNIT_ASSERT_EQUAL_MESSAGE(
    1736          60 :                 input, expected, rtl_getTextEncodingFromUnixCharset(input));
    1737          60 :         }
    1738             :     };
    1739             : 
    1740             : }
    1741             : 
    1742           2 : CPPUNIT_TEST_SUITE_REGISTRATION(testBestMime);
    1743           2 : CPPUNIT_TEST_SUITE_REGISTRATION(testBestUnix);
    1744           2 : CPPUNIT_TEST_SUITE_REGISTRATION(testBestWindows);
    1745           2 : CPPUNIT_TEST_SUITE_REGISTRATION(testTextEncodingInfo);
    1746           2 : CPPUNIT_TEST_SUITE_REGISTRATION(testEncodingFromUnix);
    1747             : 
    1748           8 : CPPUNIT_PLUGIN_IMPLEMENT();
    1749             : 
    1750             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10