Mercurial > dovecot > core-2.2
view src/lib/test-unichar.c @ 15714:90710c6c3beb
Updated copyright notices to include year 2013.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 02 Feb 2013 17:01:07 +0200 |
parents | 7be4709aab5e |
children | 36ef72481934 |
line wrap: on
line source
* Copyright (c) 2007-2013 Dovecot authors, see the included COPYING file */ #include "test-lib.h" #include "str.h" #include "unichar.h" void test_unichar(void) { static const char *overlong_utf8 = "\xf8\x80\x95\x81\xa1"; unichar_t chr, chr2; string_t *str = t_str_new(16); test_begin("unichars"); for (chr = 0; chr <= 0x10ffff; chr++) { str_truncate(str, 0); uni_ucs4_to_utf8_c(chr, str); test_assert(uni_utf8_str_is_valid(str_c(str))); test_assert(uni_utf8_get_char(str_c(str), &chr2) > 0); test_assert(chr2 == chr); } test_assert(!uni_utf8_str_is_valid(overlong_utf8)); test_assert(uni_utf8_get_char(overlong_utf8, &chr2) < 0); test_end(); }