aboutsummaryrefslogtreecommitdiff
path: root/node_modules/buffer/test/base64.js
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2017-05-03 15:35:00 +0200
committerFlorian Dold <florian.dold@gmail.com>2017-05-03 15:35:00 +0200
commitde98e0b232509d5f40c135d540a70e415272ff85 (patch)
treea79222a5b58484ab3b80d18efcaaa7ccc4769b33 /node_modules/buffer/test/base64.js
parente0c9d480a73fa629c1e4a47d3e721f1d2d345406 (diff)
node_modules
Diffstat (limited to 'node_modules/buffer/test/base64.js')
-rw-r--r--node_modules/buffer/test/base64.js47
1 files changed, 47 insertions, 0 deletions
diff --git a/node_modules/buffer/test/base64.js b/node_modules/buffer/test/base64.js
new file mode 100644
index 000000000..e4ecc56a9
--- /dev/null
+++ b/node_modules/buffer/test/base64.js
@@ -0,0 +1,47 @@
+if (process.env.OBJECT_IMPL) global.TYPED_ARRAY_SUPPORT = false
+var B = require('../').Buffer
+var test = require('tape')
+
+test('base64: ignore whitespace', function (t) {
+ var text = '\n YW9ldQ== '
+ var buf = new B(text, 'base64')
+ t.equal(buf.toString(), 'aoeu')
+ t.end()
+})
+
+test('base64: strings without padding', function (t) {
+ t.equal((new B('YW9ldQ', 'base64').toString()), 'aoeu')
+ t.end()
+})
+
+test('base64: newline in utf8 -- should not be an issue', function (t) {
+ t.equal(
+ new B('LS0tCnRpdGxlOiBUaHJlZSBkYXNoZXMgbWFya3MgdGhlIHNwb3QKdGFnczoK', 'base64').toString('utf8'),
+ '---\ntitle: Three dashes marks the spot\ntags:\n'
+ )
+ t.end()
+})
+
+test('base64: newline in base64 -- should get stripped', function (t) {
+ t.equal(
+ new B('LS0tCnRpdGxlOiBUaHJlZSBkYXNoZXMgbWFya3MgdGhlIHNwb3QKdGFnczoK\nICAtIHlhbWwKICAtIGZyb250LW1hdHRlcgogIC0gZGFzaGVzCmV4cGFuZWQt', 'base64').toString('utf8'),
+ '---\ntitle: Three dashes marks the spot\ntags:\n - yaml\n - front-matter\n - dashes\nexpaned-'
+ )
+ t.end()
+})
+
+test('base64: tab characters in base64 - should get stripped', function (t) {
+ t.equal(
+ new B('LS0tCnRpdGxlOiBUaHJlZSBkYXNoZXMgbWFya3MgdGhlIHNwb3QKdGFnczoK\t\t\t\tICAtIHlhbWwKICAtIGZyb250LW1hdHRlcgogIC0gZGFzaGVzCmV4cGFuZWQt', 'base64').toString('utf8'),
+ '---\ntitle: Three dashes marks the spot\ntags:\n - yaml\n - front-matter\n - dashes\nexpaned-'
+ )
+ t.end()
+})
+
+test('base64: invalid non-alphanumeric characters -- should be stripped', function (t) {
+ t.equal(
+ new B('!"#$%&\'()*,.:;<=>?@[\\]^`{|}~', 'base64').toString('utf8'),
+ ''
+ )
+ t.end()
+})