efi_selftest: Improve the FatToStr() unit test
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Tue, 22 Nov 2022 10:34:25 +0000 (11:34 +0100)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Tue, 22 Nov 2022 10:54:30 +0000 (11:54 +0100)
Add a test with a character >= 0x80.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
lib/efi_selftest/efi_selftest_unicode_collation.c

index c63a1b5..11050a3 100644 (file)
@@ -184,6 +184,18 @@ static int test_fat_to_str(void)
                return EFI_ST_FAILURE;
        }
 
+       boottime->set_mem(str, sizeof(str), 0);
+       unicode_collation_protocol->fat_to_str(unicode_collation_protocol, 13,
+                                              "Kafb\240tur\000xyz", str);
+       if (str[10]) {
+               efi_st_error("fat_to_str returned to many characters\n");
+               return EFI_ST_FAILURE;
+       }
+       if (efi_st_strcmp_16_8(str, "Kafb\341tur")) {
+               efi_st_error("fat_to_str returned \"%ps\"\n", str);
+               return EFI_ST_FAILURE;
+       }
+
        return EFI_ST_SUCCESS;
 }