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

Generated by: LCOV version 1.10