From f69f8c9785206cc2defe39685f0d8f87b78dbab1 Mon Sep 17 00:00:00 2001 From: Yury Melnichek Date: Wed, 18 May 2011 22:33:58 +0200 Subject: [PATCH] Add few utf8_string unit tests. --- base/base_tests/utf8_string_test.cpp | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/base/base_tests/utf8_string_test.cpp b/base/base_tests/utf8_string_test.cpp index c0282a1413..0a55cacdc2 100644 --- a/base/base_tests/utf8_string_test.cpp +++ b/base/base_tests/utf8_string_test.cpp @@ -34,13 +34,28 @@ UNIT_TEST(Utf8_Split) TEST_EQUAL(result[6], "city", ()); // Доллар подорожал на 500 рублей ̶копеек - char const * s = "- \xD0\x94\xD0\xBE\xD0\xBB\xD0\xBB\xD0\xB0\xD1\x80\x20\xD0\xBF\xD0\xBE\xD0\xB4\xD0" - "\xBE\xD1\x80\xD0\xBE\xD0\xB6\xD0\xB0\xD0\xBB\x20\xD0\xBD\xD0\xB0\x20\x35\x30\x30" - "\x20\xD1\x80\xD1\x83\xD0\xB1\xD0\xBB\xD0\xB5\xD0\xB9\x20\xCC\xB6\xD0\xBA\xD0\xBE" - "\xD0\xBF\xD0\xB5\xD0\xB5\xD0\xBA -"; + char const * s = + "- \xD0\x94\xD0\xBE\xD0\xBB\xD0\xBB\xD0\xB0\xD1\x80\x20\xD0\xBF\xD0\xBE\xD0\xB4\xD0" + "\xBE\xD1\x80\xD0\xBE\xD0\xB6\xD0\xB0\xD0\xBB\x20\xD0\xBD\xD0\xB0\x20\x35\x30\x30" + "\x20\xD1\x80\xD1\x83\xD0\xB1\xD0\xBB\xD0\xB5\xD0\xB9\x20\xCC\xB6\xD0\xBA\xD0\xBE" + "\xD0\xBF\xD0\xB5\xD0\xB5\xD0\xBA -"; TEST(Split(s, result, &IsDelimeter), ()); TEST_EQUAL(result.size(), 6, ()); TEST_EQUAL(result[3], "500", ()); TEST_EQUAL(result[4], "\xD1\x80\xD1\x83\xD0\xB1\xD0\xBB\xD0\xB5\xD0\xB9", ()); TEST_EQUAL(result[5], "\xD0\xBA\xD0\xBE\xD0\xBF\xD0\xB5\xD0\xB5\xD0\xBA", ()); } + +UNIT_TEST(Utf8_Split_MultipleDelimeters) +{ + vector result; + TEST(Split("A B C .,D", result, &IsDelimeter), ()); + char const * expected [] = {"A", "B", "C", "D"}; + TEST_EQUAL(result, vector(&expected[0], &expected[0] + ARRAY_SIZE(expected)), ()); +} + +UNIT_TEST(Utf8_IsSearchDelimiter) +{ + TEST(utf8_string::IsSearchDelimiter(static_cast('~')), ()); + TEST(utf8_string::IsSearchDelimiter(static_cast('`')), ()); +}