summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Chang <vichang@google.com>2022-04-21 18:38:16 +0100
committerCherrypicker Worker <android-build-cherrypicker-worker@google.com>2022-04-22 20:55:46 +0000
commitf05a4b424a78ffeeb0036191f966b7d9952d3ed5 (patch)
tree6529b3cf3e12372780527dde2c6da8fbc9ee9b1b
parente01a1d2145db6f5a5c5877ab92e9e631a40fc74b (diff)
downloadicu-f05a4b424a78ffeeb0036191f966b7d9952d3ed5.tar.gz
Add API coverage for utrans APIs
Bug: 217241896 Test: atest CtsIcu4cTestCases Change-Id: I1cd16e43451b3298a419207eeb1c059cbe719220 (cherry picked from commit 07ff41afbe8d69544a6b42350d24a84385f4d92f) Merged-In: I1cd16e43451b3298a419207eeb1c059cbe719220
-rw-r--r--libicu/test/src/utrans_test.cpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/libicu/test/src/utrans_test.cpp b/libicu/test/src/utrans_test.cpp
new file mode 100644
index 000000000..39445259d
--- /dev/null
+++ b/libicu/test/src/utrans_test.cpp
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <gtest/gtest.h>
+
+#include <unicode/uchar.h>
+#include <unicode/ustring.h>
+#include <unicode/utrans.h>
+
+TEST(Icu4cUTransliteratorTest, test_utrans_transUChars) {
+ UErrorCode status = U_ZERO_ERROR;
+ UChar id[] = u"Any-Upper";
+ UTransliterator* utrans = utrans_openU(id, -1, UTRANS_FORWARD, NULL, 0, NULL, &status);
+ ASSERT_EQ(U_ZERO_ERROR, status);
+
+ UChar str[] = u"HeLlO WoRlD!";
+ int32_t len = sizeof(str) / sizeof(UChar) - 1;
+
+ utrans_transUChars(utrans, str, NULL, len + 1 /*textCapacity*/, 0, &len, &status);
+ utrans_close(utrans);
+ UChar expected[] = u"HELLO WORLD!";
+ ASSERT_EQ(U_ZERO_ERROR, status);
+ ASSERT_EQ(0, u_strcmp(expected, str));
+}
+