summaryrefslogtreecommitdiffstats
path: root/comm/mailnews/base/test/unit/test_testsuite_base64.js
diff options
context:
space:
mode:
Diffstat (limited to 'comm/mailnews/base/test/unit/test_testsuite_base64.js')
-rw-r--r--comm/mailnews/base/test/unit/test_testsuite_base64.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/comm/mailnews/base/test/unit/test_testsuite_base64.js b/comm/mailnews/base/test/unit/test_testsuite_base64.js
new file mode 100644
index 0000000000..a6faae3640
--- /dev/null
+++ b/comm/mailnews/base/test/unit/test_testsuite_base64.js
@@ -0,0 +1,22 @@
+/**
+ * Tests functions atob() and btoa() in mailnews/test/resources/MailTestUtils.jsm .
+ *
+ * Note:
+ * btoa() = base64 encode
+ * atob() = base64 decode
+ * (i.e. "binary" = plain, and "ascii" = encoded)
+ */
+
+function run_test() {
+ var plain = "testtesttest";
+ var encoded = "dGVzdHRlc3R0ZXN0";
+
+ // correct encoding according to spec
+ Assert.equal(btoa(plain), encoded); // encode
+ Assert.equal(atob(encoded), plain); // decode
+
+ // roundtrip works
+ Assert.equal(atob(btoa(plain)), plain);
+ Assert.equal(btoa(atob(encoded)), encoded);
+ return true;
+}