diff options
Diffstat (limited to 'node_modules/base64-js/test')
-rw-r--r-- | node_modules/base64-js/test/big-data.js | 1 | ||||
-rw-r--r-- | node_modules/base64-js/test/convert.js | 40 | ||||
-rw-r--r-- | node_modules/base64-js/test/url-safe.js | 10 |
3 files changed, 49 insertions, 2 deletions
diff --git a/node_modules/base64-js/test/big-data.js b/node_modules/base64-js/test/big-data.js index be16ebe6b..107e09ecf 100644 --- a/node_modules/base64-js/test/big-data.js +++ b/node_modules/base64-js/test/big-data.js @@ -10,6 +10,7 @@ test('convert big data to base64', function (t) { b64str = b64.fromByteArray(big) arr = b64.toByteArray(b64str) t.ok(equal(arr, big)) + t.equal(b64.byteLength(b64str), arr.length) t.end() }) diff --git a/node_modules/base64-js/test/convert.js b/node_modules/base64-js/test/convert.js index d68e105d7..017a13322 100644 --- a/node_modules/base64-js/test/convert.js +++ b/node_modules/base64-js/test/convert.js @@ -29,6 +29,46 @@ test('convert to base64 and back', function (t) { } }) +var data = [ + [[0, 0, 0], 'AAAA'], + [[0, 0, 1], 'AAAB'], + [[0, 1, -1], 'AAH/'], + [[1, 1, 1], 'AQEB'], + [[0, -73, 23], 'ALcX'] +] + +test('convert known data to string', function (t) { + for (var i = 0; i < data.length; i++) { + var bytes = data[i][0] + var expected = data[i][1] + var actual = b64.fromByteArray(bytes) + t.equal(actual, expected, 'Ensure that ' + bytes + ' serialise to ' + expected) + } + t.end() +}) + +test('convert known data from string', function (t) { + for (var i = 0; i < data.length; i++) { + var expected = data[i][0] + var string = data[i][1] + var actual = b64.toByteArray(string) + t.ok(equal(actual, expected), 'Ensure that ' + string + ' deserialise to ' + expected) + var length = b64.byteLength(string) + t.equal(length, expected.length, 'Ensure that ' + string + ' has byte lentgh of ' + expected.length) + } + t.end() +}) + +function equal (a, b) { + var i + var length = a.length + if (length !== b.length) return false + for (i = 0; i < length; ++i) { + if ((a[i] & 0xFF) !== (b[i] & 0xFF)) return false + } + return true +} + function map (arr, callback) { var res = [] var kValue, mappedValue diff --git a/node_modules/base64-js/test/url-safe.js b/node_modules/base64-js/test/url-safe.js index 3203b33d5..4382e06c6 100644 --- a/node_modules/base64-js/test/url-safe.js +++ b/node_modules/base64-js/test/url-safe.js @@ -4,15 +4,21 @@ var b64 = require('../') test('decode url-safe style base64 strings', function (t) { var expected = [0xff, 0xff, 0xbe, 0xff, 0xef, 0xbf, 0xfb, 0xef, 0xff] - var actual = b64.toByteArray('//++/++/++//') + var str = '//++/++/++//' + var actual = b64.toByteArray(str) for (var i = 0; i < actual.length; i++) { t.equal(actual[i], expected[i]) } - actual = b64.toByteArray('__--_--_--__') + t.equal(b64.byteLength(str), actual.length) + + str = '__--_--_--__' + actual = b64.toByteArray(str) for (i = 0; i < actual.length; i++) { t.equal(actual[i], expected[i]) } + t.equal(b64.byteLength(str), actual.length) + t.end() }) |