From: Bastian Dehn Date: Fri, 19 Jul 2024 07:27:33 +0000 (+0200) Subject: add ss to umlaut X-Git-Tag: 1.1.0^2~1^2~1 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=6074a5fd8cbfac5d4154931bf802d0fa20750ea8;p=mv_none_space.git add ss to umlaut --- diff --git a/src/rename.c b/src/rename.c index 8b88e5b..c799002 100644 --- a/src/rename.c +++ b/src/rename.c @@ -132,6 +132,10 @@ void rename_revert_str(char* src, char* dst) i++; dst[dstcounter++] = WIDE_CHAR_SHORT_PREFIX; dst[dstcounter++] = WIDE_CHAR_SHORT_U; + } else if (src[i] == 's' && src[i + 1] == 's') { + i++; + dst[dstcounter++] = WIDE_CHAR_SHORT_PREFIX; + dst[dstcounter++] = WIDE_CHAR_SHORT_SS; } else { dst[dstcounter++] = src[i]; } diff --git a/src/rename.h b/src/rename.h index c6db8a4..fc7adcb 100644 --- a/src/rename.h +++ b/src/rename.h @@ -28,6 +28,7 @@ #define WIDE_CHAR_SHORT_O 0x96 #define WIDE_CHAR_SHORT_u 0xbc #define WIDE_CHAR_SHORT_U 0x9c +#define WIDE_CHAR_SHORT_SS 0x9f typedef void (*rename_func_ptr)(char* src, char* dst); void escape_str(char* src, char* dst); diff --git a/tests/rename_tests.c b/tests/rename_tests.c index 4d653c7..4a0c85e 100644 --- a/tests/rename_tests.c +++ b/tests/rename_tests.c @@ -207,6 +207,16 @@ void rename_revert_Ue(void **state) assert_string_equal(output, "Überlastung"); } +void rename_revert_ss(void **state) +{ + char* output = (char*) *state; + char* input = "Gruss"; + + rename_revert_str(input, output); + + assert_string_equal(output, "Gruß"); +} + int main() { const struct CMUnitTest tests[] = { @@ -228,6 +238,7 @@ int main() cmocka_unit_test_setup_teardown(rename_revert_Oe, setup, teardown), cmocka_unit_test_setup_teardown(rename_revert_ue, setup, teardown), cmocka_unit_test_setup_teardown(rename_revert_Ue, setup, teardown), + cmocka_unit_test_setup_teardown(rename_revert_ss, setup, teardown), }; return cmocka_run_group_tests(tests, NULL, NULL);