---
unit/test-util.c | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/unit/test-util.c b/unit/test-util.c
index de62848..4d9282a 100644
--- a/unit/test-util.c
+++ b/unit/test-util.c
@@ -486,6 +486,25 @@ static void test_valid_turkish()
}
}
+static void test_encode_translit()
+{
+ const char *utf8 =
"��������������������������������������������������������������������������������������";
+ const char *expect = "EeYyIiAaEeUuIiOoAaYyUuOoIiAEUIOcAaOoYyUuIi";
+ long nwritten;
+ long nread;
+ unsigned char *res;
+
+ res = convert_utf8_to_gsm_with_lang(utf8, sizeof(utf8), &nread, &nwritten,
+ 0, GSM_DIALECT_REDUCED,
+ GSM_DIALECT_REDUCED);
+
+ g_assert(res);
+ g_assert(nread == sizeof(utf8));
+ g_assert(memcmp(res, expect, nwritten) == 0);
+
+ g_free(res);
+}
+
static const char hex_packed[] = "493A283D0795C3F33C88FE06C9CB6132885EC6D34"
"1EDF27C1E3E97E7207B3A0C0A5241E377BB1D"
"7693E72E";
@@ -912,6 +931,7 @@ int main(int argc, char **argv)
g_test_add_func("/testutil/Invalid Conversions", test_invalid);
g_test_add_func("/testutil/Valid Conversions", test_valid);
g_test_add_func("/testutil/Valid Turkish National Variant Conversions",
test_valid_turkish);
+ g_test_add_func("/testutil/Encode with transliteration",
test_encode_translit);
g_test_add_func("/testutil/Decode Encode", test_decode_encode);
g_test_add_func("/testutil/Pack Size", test_pack_size);
g_test_add_func("/testutil/CBS CR Handling", test_cr_handling);
--
1.7.0.4