| OLD | NEW |
| (Empty) |
| 1 // Copyright 2011 Facebook, Inc. | |
| 2 // | |
| 3 // Licensed under the Apache License, Version 2.0 (the "License"); you may | |
| 4 // not use this file except in compliance with the License. You may obtain | |
| 5 // a copy of the License at | |
| 6 // | |
| 7 // http://www.apache.org/licenses/LICENSE-2.0 | |
| 8 // | |
| 9 // Unless required by applicable law or agreed to in writing, software | |
| 10 // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |
| 11 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |
| 12 // License for the specific language governing permissions and limitations | |
| 13 // under the License. | |
| 14 // | |
| 15 // Author: Ben Gertzfield | |
| 16 | |
| 17 #include <gtest/gtest.h> | |
| 18 | |
| 19 #include "unicodetext.h" | |
| 20 | |
| 21 namespace i18n { | |
| 22 namespace unicodetext { | |
| 23 | |
| 24 TEST(UnicodeTextTest, Iterator) { | |
| 25 struct value { | |
| 26 const char* utf8; | |
| 27 char32 code_point; | |
| 28 } values[] = { | |
| 29 { "\x31", 0x31 }, // U+0031 DIGIT ONE | |
| 30 { "\xC2\xBD", 0x00BD }, // U+00BD VULGAR FRACTION ONE HALF | |
| 31 { "\xEF\xBC\x91", 0xFF11 }, // U+FF11 FULLWIDTH DIGIT ONE | |
| 32 { "\xF0\x9F\x80\x80", 0x1F000 }, // U+1F000 MAHJONG TILE EAST WIND | |
| 33 }; | |
| 34 | |
| 35 for (size_t i = 0; i < sizeof values / sizeof values[0]; i++) { | |
| 36 string number(values[i].utf8); | |
| 37 UnicodeText number_as_unicode; | |
| 38 number_as_unicode.PointToUTF8(number.data(), number.size()); | |
| 39 UnicodeText::const_iterator it = number_as_unicode.begin(); | |
| 40 EXPECT_EQ(values[i].code_point, *it); | |
| 41 } | |
| 42 } | |
| 43 | |
| 44 } // namespace unicodetext | |
| 45 } // namespace i18n | |
| OLD | NEW |