diff --git a/testsuite/base64-test.c b/testsuite/base64-test.c index 97833b244418eeda7e2f2e7c004e4bee443e7182..d266697006e3ec523b8ca23cc00a573bc03471fb 100644 --- a/testsuite/base64-test.c +++ b/testsuite/base64-test.c @@ -4,6 +4,21 @@ int test_main(void) { + ASSERT(BASE64_ENCODE_LENGTH(0) == 0); /* At most 4 bits */ + ASSERT(BASE64_ENCODE_LENGTH(1) == 2); /* At most 12 bits */ + ASSERT(BASE64_ENCODE_LENGTH(2) == 3); /* At most 20 bits */ + ASSERT(BASE64_ENCODE_LENGTH(3) == 4); /* At most 28 bits */ + ASSERT(BASE64_ENCODE_LENGTH(4) == 6); /* At most 36 bits */ + ASSERT(BASE64_ENCODE_LENGTH(5) == 7); /* At most 44 bits */ + ASSERT(BASE64_ENCODE_LENGTH(12) == 16); /* At most 100 bits */ + ASSERT(BASE64_ENCODE_LENGTH(13) == 18); /* At most 108 bits */ + + ASSERT(BASE64_DECODE_LENGTH(0) == 0); /* At most 6 bits */ + ASSERT(BASE64_DECODE_LENGTH(1) == 1); /* At most 12 bits */ + ASSERT(BASE64_DECODE_LENGTH(2) == 2); /* At most 18 bits */ + ASSERT(BASE64_DECODE_LENGTH(3) == 3); /* At most 24 bits */ + ASSERT(BASE64_DECODE_LENGTH(4) == 3); /* At most 30 bits */ + test_armor(&nettle_base64, 0, "", ""); test_armor(&nettle_base64, 1, "H", "SA=="); test_armor(&nettle_base64, 2, "He", "SGU="); @@ -16,10 +31,10 @@ test_main(void) { /* Test overlapping areas */ uint8_t buffer[] = "Helloxxxx"; - struct base64_ctx ctx; + struct base64_decode_ctx ctx; - ASSERT(BASE64_ENCODE_LENGTH(5) == 8); - ASSERT(8 == base64_encode(buffer, 5, buffer)); + ASSERT(BASE64_ENCODE_RAW_LENGTH(5) == 8); + base64_encode_raw(buffer, 5, buffer); ASSERT(MEMEQ(9, buffer, "SGVsbG8=x")); buffer[6] = '=';