]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
(test_main): Test encoding and decoding
authorNiels Möller <nisse@lysator.liu.se>
Mon, 30 Sep 2002 19:53:53 +0000 (21:53 +0200)
committerNiels Möller <nisse@lysator.liu.se>
Mon, 30 Sep 2002 19:53:53 +0000 (21:53 +0200)
in place.

Rev: src/nettle/testsuite/base64-test.c:1.2

testsuite/base64-test.c

index 3ea91680271f2724a296a9d59581ce2f78135a2b..97833b244418eeda7e2f2e7c004e4bee443e7182 100644 (file)
@@ -11,7 +11,22 @@ test_main(void)
   test_armor(&nettle_base64, 4, "Hell", "SGVsbA==");
   test_armor(&nettle_base64, 5, "Hello", "SGVsbG8=");
   test_armor(&nettle_base64, 6, "Hello", "SGVsbG8A");
-  test_armor(&nettle_base64, 4, "\377\377\377\377", "/////w==");
+  test_armor(&nettle_base64, 4, "\xff\xff\xff\xff", "/////w==");
 
+  {
+    /* Test overlapping areas */
+    uint8_t buffer[] = "Helloxxxx";
+    struct base64_ctx ctx;
+    
+    ASSERT(BASE64_ENCODE_LENGTH(5) == 8);
+    ASSERT(8 == base64_encode(buffer, 5, buffer));
+    ASSERT(MEMEQ(9, buffer, "SGVsbG8=x"));
+    buffer[6] = '=';
+
+    base64_decode_init(&ctx);
+    ASSERT(4 == base64_decode_update(&ctx, buffer, 8, buffer));
+    ASSERT(MEMEQ(9, buffer, "HellbG==x"));
+  }
+    
   SUCCESS();
 }