@ -500,6 +500,40 @@ int ut_utf16_utf8_strncpy(struct unit_test_state *uts)
}
}
UNICODE_TEST ( ut_utf16_utf8_strncpy ) ;
UNICODE_TEST ( ut_utf16_utf8_strncpy ) ;
int ut_utf_to_lower ( struct unit_test_state * uts )
{
ut_asserteq ( ' @ ' , utf_to_lower ( ' @ ' ) ) ;
ut_asserteq ( ' a ' , utf_to_lower ( ' A ' ) ) ;
ut_asserteq ( ' z ' , utf_to_lower ( ' Z ' ) ) ;
ut_asserteq ( ' [ ' , utf_to_lower ( ' [ ' ) ) ;
ut_asserteq ( ' m ' , utf_to_lower ( ' m ' ) ) ;
/* Latin letter O with diaresis (umlaut) */
ut_asserteq ( 0x00f6 , utf_to_lower ( 0x00d6 ) ) ;
# ifdef CONFIG_EFI_UNICODE_CAPITALIZATION
/* Cyrillic letter I*/
ut_asserteq ( 0x0438 , utf_to_lower ( 0x0418 ) ) ;
# endif
return 0 ;
}
UNICODE_TEST ( ut_utf_to_lower ) ;
int ut_utf_to_upper ( struct unit_test_state * uts )
{
ut_asserteq ( ' ` ' , utf_to_upper ( ' ` ' ) ) ;
ut_asserteq ( ' A ' , utf_to_upper ( ' a ' ) ) ;
ut_asserteq ( ' Z ' , utf_to_upper ( ' z ' ) ) ;
ut_asserteq ( ' { ' , utf_to_upper ( ' { ' ) ) ;
ut_asserteq ( ' M ' , utf_to_upper ( ' M ' ) ) ;
/* Latin letter O with diaresis (umlaut) */
ut_asserteq ( 0x00d6 , utf_to_upper ( 0x00f6 ) ) ;
# ifdef CONFIG_EFI_UNICODE_CAPITALIZATION
/* Cyrillic letter I */
ut_asserteq ( 0x0418 , utf_to_upper ( 0x0438 ) ) ;
# endif
return 0 ;
}
UNICODE_TEST ( ut_utf_to_upper ) ;
int do_ut_unicode ( cmd_tbl_t * cmdtp , int flag , int argc , char * const argv [ ] )
int do_ut_unicode ( cmd_tbl_t * cmdtp , int flag , int argc , char * const argv [ ] )
{
{
struct unit_test * tests = ll_entry_start ( struct unit_test , unicode_test ) ;
struct unit_test * tests = ll_entry_start ( struct unit_test , unicode_test ) ;