diff --git a/AK/Tests/TestBase64.cpp b/AK/Tests/TestBase64.cpp index 40b7e494a6..d495d79092 100644 --- a/AK/Tests/TestBase64.cpp +++ b/AK/Tests/TestBase64.cpp @@ -30,6 +30,22 @@ #include #include +TEST_CASE(test_decode) +{ + auto decode_equal = [&](const char* input, const char* expected) { + auto decoded = decode_base64(StringView(input)); + EXPECT(String::copy(decoded) == String(expected)); + }; + + decode_equal("", ""); + decode_equal("Zg==", "f"); + decode_equal("Zm8=", "fo"); + decode_equal("Zm9v", "foo"); + decode_equal("Zm9vYg==", "foob"); + decode_equal("Zm9vYmE=", "fooba"); + decode_equal("Zm9vYmFy", "foobar"); +} + TEST_CASE(test_encode) { auto encode_equal = [&](const char* input, const char* expected) {