icu/internaltests/ucnv_getDefaultName.c
author Pavel Heimlich <pavel.heimlich@oracle.com>
Tue, 02 Nov 2010 11:29:20 +0100
changeset 39 65491902381c
permissions -rw-r--r--
add internal tests for Oracle fixes/enhancements
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
39
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     1
/*
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     2
 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     3
 *
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     4
 * This program tests the ucnv_getDefaultName() return value for
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     5
 * the current locale. 
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     6
 *
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     7
 * By the way, as a side note, The ucnv_getDefaultName(), oddly enough,
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     8
 * checks LC_ALL, LANG, setlocale(LC_ALL, NULL), setlocale(LC_CTYPE, ""),
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     9
 * and then nl_langinfo(CODESET) to get the default codeset name.
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    10
 * It is wrong for Solaris and any other POSIX-compliant systems but
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    11
 * we keep that order as-is to make the least disruptive changes.
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    12
 * See 4872194 for more detail.
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    13
 *
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    14
 * You can compile this by doing the following assuming that your
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    15
 * system has the latest ICU packages installed:
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    16
 *
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    17
 *	cc -o ucnv_getDefaultName ucnv_getDefaultName.c -licui18n -licuuc
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    18
 */
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    19
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    20
#include <stdio.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    21
#include <locale.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    22
#include <unicode/utypes.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    23
#include <unicode/ucnv.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    24
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    25
int
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    26
main(int ac, char **av)
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    27
{
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    28
	(void) setlocale(LC_ALL, "");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    29
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    30
	printf("Default name = %s\n", ucnv_getDefaultName());
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    31
}