diff options
Diffstat (limited to 'node_modules/buffer/test/base64.js')
-rw-r--r-- | node_modules/buffer/test/base64.js | 47 |
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 0000000..e4ecc56 --- /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() +}) |