icu/internaltests/ucnv_getMaxCharSize.c
author Pavel Heimlich <pavel.heimlich@oracle.com>
Mon, 08 Nov 2010 11:35:41 +0100
changeset 41 fb57b25feaf0
parent 39 65491902381c
permissions -rw-r--r--
fix failing internal tests
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
//   Copyright (c) 2004, 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
     2
#include <stdio.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     3
#include <errno.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     4
#include <string.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     5
#include <stdlib.h>
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
#include <unicode/utypes.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     8
#include <unicode/ucnv.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
     9
#include <unicode/unistr.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    10
#include <unicode/translit.h>
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    11
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    12
main(int ac, char **av)
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
    UConverter *convto = 0;
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    15
    UErrorCode err = U_ZERO_ERROR;
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    16
    int8_t i;
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    17
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    18
    printf("Checking ucnv_getMaxCharSize() return value of UTF-7 conversion:\n");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    19
    convto = ucnv_open("UTF-7", &err);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    20
    if (U_FAILURE(err)) {
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    21
	fprintf(stderr, "ucnv_open on UTF-7 error - exiting.\n");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    22
	exit(-1);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    23
    }
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
    i = ucnv_getMaxCharSize(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    26
    if (i == 5)
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    27
    	printf("ucnv_getMaxCharSize() for UTF-7 returned %d -- success.\n", i);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    28
    else
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    29
    	printf("ucnv_getMaxCharSize() for UTF-7 returned %d -- failed.\n", i);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    30
    if (convto) ucnv_close(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    31
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    32
    printf("\nChecking ucnv_getMaxCharSize() return value of MUTF-7 conversion:\n");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    33
    convto = ucnv_open("MUTF-7", &err);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    34
    if (U_FAILURE(err)) {
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    35
	fprintf(stderr, "ucnv_open on MUTF-7 error - exiting.\n");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    36
	exit(-1);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    37
    }
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    38
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    39
    i = ucnv_getMaxCharSize(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    40
    if (i == 8)
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    41
    	printf("ucnv_getMaxCharSize() for MUTF-7 returned %d -- success.\n", i);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    42
    else
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    43
    	printf("ucnv_getMaxCharSize() for MUTF-7 returned %d -- failed.\n", i);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    44
    if (convto) ucnv_close(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    45
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    46
    printf("\nChecking ucnv_getMaxCharSize() return value of ISO-2022-JP conversion:\n");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    47
    convto = ucnv_open("ISO-2022-JP", &err);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    48
    if (U_FAILURE(err)) {
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    49
	fprintf(stderr, "ucnv_open on ISO-2022-JP error - exiting.\n");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    50
	exit(-1);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    51
    }
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    52
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    53
    i = ucnv_getMaxCharSize(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    54
    if (i == 9)
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    55
    	printf("ucnv_getMaxCharSize() for ISO-2022-JP returned %d -- success.\n", i);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    56
    else
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    57
    	printf("ucnv_getMaxCharSize() for ISO-2022-JP returned %d -- failed.\n", i);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    58
    if (convto) ucnv_close(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    59
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    60
    printf("\nChecking ucnv_getMaxCharSize() return value of ISO-2022-KR conversion:\n");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    61
    convto = ucnv_open("ISO-2022-KR", &err);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    62
    if (U_FAILURE(err)) {
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    63
	fprintf(stderr, "ucnv_open on ISO-2022-KR error - exiting.\n");
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    64
	exit(-1);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    65
    }
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    66
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    67
    i = ucnv_getMaxCharSize(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    68
    if (i == 8)
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    69
    	printf("ucnv_getMaxCharSize() for ISO-2022-KR returned %d -- success.\n", i);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    70
    else
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    71
    	printf("ucnv_getMaxCharSize() for ISO-2022-KR returned %d -- failed.\n", i);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    72
    if (convto) ucnv_close(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    73
41
fb57b25feaf0 fix failing internal tests
Pavel Heimlich <pavel.heimlich@oracle.com>
parents: 39
diff changeset
    74
    printf("\nChecking ucnv_getMaxCharSize() return value of ISO-2022-CN conversion:\n");
fb57b25feaf0 fix failing internal tests
Pavel Heimlich <pavel.heimlich@oracle.com>
parents: 39
diff changeset
    75
    convto = ucnv_open("ISO-2022-CN", &err);
39
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    76
    if (U_FAILURE(err)) {
41
fb57b25feaf0 fix failing internal tests
Pavel Heimlich <pavel.heimlich@oracle.com>
parents: 39
diff changeset
    77
	fprintf(stderr, "ucnv_open on ISO-2022-CN error - exiting.\n");
39
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    78
	exit(-1);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    79
    }
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    80
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    81
    i = ucnv_getMaxCharSize(convto);
41
fb57b25feaf0 fix failing internal tests
Pavel Heimlich <pavel.heimlich@oracle.com>
parents: 39
diff changeset
    82
    if (i == 8)
fb57b25feaf0 fix failing internal tests
Pavel Heimlich <pavel.heimlich@oracle.com>
parents: 39
diff changeset
    83
    	printf("ucnv_getMaxCharSize() for ISO-2022-CN returned %d -- success.\n", i);
39
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    84
    else
41
fb57b25feaf0 fix failing internal tests
Pavel Heimlich <pavel.heimlich@oracle.com>
parents: 39
diff changeset
    85
    	printf("ucnv_getMaxCharSize() for ISO-2022-CN returned %d -- failed.\n", i);
39
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    86
    if (convto) ucnv_close(convto);
65491902381c add internal tests for Oracle fixes/enhancements
Pavel Heimlich <pavel.heimlich@oracle.com>
parents:
diff changeset
    87
}