glib/tests/unichar-test.c
author hgs
Thu, 05 Aug 2010 23:23:13 +0530
changeset 50 79045913e4e9
child 72 403e7f6ed6c5
permissions -rw-r--r--
201031
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
50
hgs
parents:
diff changeset
     1
// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     2
// All rights reserved.
hgs
parents:
diff changeset
     3
// This component and the accompanying materials are made available
hgs
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     5
// which accompanies this distribution, and is available
hgs
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     7
//
hgs
parents:
diff changeset
     8
// Initial Contributors:
hgs
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    10
//
hgs
parents:
diff changeset
    11
// Contributors:
hgs
parents:
diff changeset
    12
//
hgs
parents:
diff changeset
    13
// Description:
hgs
parents:
diff changeset
    14
//
hgs
parents:
diff changeset
    15
hgs
parents:
diff changeset
    16
#undef G_DISABLE_ASSERT
hgs
parents:
diff changeset
    17
#undef G_LOG_DOMAIN
hgs
parents:
diff changeset
    18
hgs
parents:
diff changeset
    19
#include <glib.h>
hgs
parents:
diff changeset
    20
#include <errno.h>
hgs
parents:
diff changeset
    21
#define LOG_FILE "c:\\logs\\unichar_test_log.txt"
hgs
parents:
diff changeset
    22
#include "std_log_result.h"
hgs
parents:
diff changeset
    23
#define LOG_FILENAME_LINE __FILE__, __LINE__
hgs
parents:
diff changeset
    24
hgs
parents:
diff changeset
    25
void create_xml(int result)
hgs
parents:
diff changeset
    26
{
hgs
parents:
diff changeset
    27
    if(result)
hgs
parents:
diff changeset
    28
        assert_failed = 1;
hgs
parents:
diff changeset
    29
    
hgs
parents:
diff changeset
    30
    testResultXml("unichar_testlog");
hgs
parents:
diff changeset
    31
    close_log_file();
hgs
parents:
diff changeset
    32
}
hgs
parents:
diff changeset
    33
hgs
parents:
diff changeset
    34
int main (int argc, char *argv[])
hgs
parents:
diff changeset
    35
{  
hgs
parents:
diff changeset
    36
    gunichar ret;
hgs
parents:
diff changeset
    37
    gunichar mark = 0x0BCA; //spacing mark. Tamil letter. 
hgs
parents:
diff changeset
    38
    gunichar title = 0x01F2; //Latin letter.
hgs
parents:
diff changeset
    39
    gunichar square = 0x25A1; //white square
hgs
parents:
diff changeset
    40
    gunichar space = 0x200B; //zero width space
hgs
parents:
diff changeset
    41
    gunichar tel_symbol = 0x32C0; //telegraphic symbol for january
hgs
parents:
diff changeset
    42
    gunichar CR = 0x000D; //carriage return
hgs
parents:
diff changeset
    43
    GUnicodeBreakType type;
hgs
parents:
diff changeset
    44
    
hgs
parents:
diff changeset
    45
    g_unichar_get_mirror_char('(', &ret);
hgs
parents:
diff changeset
    46
    
hgs
parents:
diff changeset
    47
    if(!(')' == ret))
hgs
parents:
diff changeset
    48
        {
hgs
parents:
diff changeset
    49
        std_log(LOG_FILENAME_LINE,"g_unichar_get_mirror_char didnt work as expected");
hgs
parents:
diff changeset
    50
        assert_failed = 1;
hgs
parents:
diff changeset
    51
        }
hgs
parents:
diff changeset
    52
    
hgs
parents:
diff changeset
    53
    
hgs
parents:
diff changeset
    54
    if(!g_unichar_ismark(mark))
hgs
parents:
diff changeset
    55
        {
hgs
parents:
diff changeset
    56
        std_log(LOG_FILENAME_LINE,"g_unichar_ismark didnt work as expected");
hgs
parents:
diff changeset
    57
        assert_failed = 1;
hgs
parents:
diff changeset
    58
        }
hgs
parents:
diff changeset
    59
    
hgs
parents:
diff changeset
    60
    if(!g_unichar_istitle(title))
hgs
parents:
diff changeset
    61
        {
hgs
parents:
diff changeset
    62
        std_log(LOG_FILENAME_LINE,"g_unichar_istitle didnt work as expected");
hgs
parents:
diff changeset
    63
        assert_failed = 1;
hgs
parents:
diff changeset
    64
        }
hgs
parents:
diff changeset
    65
    
hgs
parents:
diff changeset
    66
    if(!g_unichar_isdefined(square))
hgs
parents:
diff changeset
    67
        {
hgs
parents:
diff changeset
    68
        std_log(LOG_FILENAME_LINE,"g_unichar_isdefined didnt work as expected");
hgs
parents:
diff changeset
    69
        assert_failed = 1;
hgs
parents:
diff changeset
    70
        }
hgs
parents:
diff changeset
    71
    
hgs
parents:
diff changeset
    72
    if(!g_unichar_iszerowidth(space))
hgs
parents:
diff changeset
    73
        {
hgs
parents:
diff changeset
    74
        std_log(LOG_FILENAME_LINE,"g_unichar_iszerowidth didnt work as expected");
hgs
parents:
diff changeset
    75
        assert_failed = 1;
hgs
parents:
diff changeset
    76
        }
hgs
parents:
diff changeset
    77
    
hgs
parents:
diff changeset
    78
    if(!g_unichar_iswide(tel_symbol))
hgs
parents:
diff changeset
    79
        {
hgs
parents:
diff changeset
    80
        std_log(LOG_FILENAME_LINE,"g_unichar_iswide didnt work as expected");
hgs
parents:
diff changeset
    81
        assert_failed = 1;
hgs
parents:
diff changeset
    82
        }
hgs
parents:
diff changeset
    83
    
hgs
parents:
diff changeset
    84
    if(!g_unichar_iswide_cjk(tel_symbol))
hgs
parents:
diff changeset
    85
        {
hgs
parents:
diff changeset
    86
        std_log(LOG_FILENAME_LINE,"g_unichar_iswide_cjk didnt work as expected");
hgs
parents:
diff changeset
    87
        assert_failed = 1;
hgs
parents:
diff changeset
    88
        }
hgs
parents:
diff changeset
    89
    
hgs
parents:
diff changeset
    90
    ret = g_unichar_totitle('a');
hgs
parents:
diff changeset
    91
    if(!(ret == 'A'))
hgs
parents:
diff changeset
    92
        {
hgs
parents:
diff changeset
    93
        std_log(LOG_FILENAME_LINE,"g_unichar_totitle didnt work as expected");
hgs
parents:
diff changeset
    94
        assert_failed = 1;
hgs
parents:
diff changeset
    95
        }
hgs
parents:
diff changeset
    96
    
hgs
parents:
diff changeset
    97
    type = g_unichar_break_type(CR);
hgs
parents:
diff changeset
    98
    if(type != G_UNICODE_BREAK_CARRIAGE_RETURN)
hgs
parents:
diff changeset
    99
        {
hgs
parents:
diff changeset
   100
        std_log(LOG_FILENAME_LINE,"g_unichar_break_type didnt work as expected");
hgs
parents:
diff changeset
   101
        assert_failed = 1;
hgs
parents:
diff changeset
   102
        }
hgs
parents:
diff changeset
   103
    
hgs
parents:
diff changeset
   104
	if(assert_failed)
hgs
parents:
diff changeset
   105
          std_log(LOG_FILENAME_LINE,"Test Failed");
hgs
parents:
diff changeset
   106
    else
hgs
parents:
diff changeset
   107
          std_log(LOG_FILENAME_LINE,"Test Successful");
hgs
parents:
diff changeset
   108
	
hgs
parents:
diff changeset
   109
    create_xml(0);
hgs
parents:
diff changeset
   110
hgs
parents:
diff changeset
   111
	return 0;
hgs
parents:
diff changeset
   112
}