PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/sodium-native/test
Просмотр файла: helpers.js
var test = require('tape')
var sodium = require('..')
test('sodium_memcmp', function (assert) {
var b1 = Buffer.from([0, 1, 2, 3])
var b2 = Buffer.from([3, 2, 1, 0])
assert.throws(_ => sodium.sodium_memcmp(), 'no args')
assert.throws(_ => sodium.sodium_memcmp(b1), 'arg mismatch')
assert.throws(_ => sodium.sodium_memcmp(b1, b2.slice(1)), 'length mismatch')
assert.ok(sodium.sodium_memcmp(Buffer.alloc(0), Buffer.alloc(0)))
assert.ok(sodium.sodium_memcmp(Buffer.alloc(5), Buffer.alloc(5)))
assert.ok(sodium.sodium_memcmp(b1, b1))
assert.notOk(sodium.sodium_memcmp(b2, b1))
assert.notOk(sodium.sodium_memcmp(b1, b2))
assert.end()
})
test('sodium_compare', function (assert) {
var one = Buffer.from([1])
var two = Buffer.from([2])
var three = Buffer.from([3])
assert.equal(sodium.sodium_compare(Buffer.alloc(0), Buffer.alloc(0)), 0)
assert.equal(sodium.sodium_compare(one, one), 0)
assert.equal(sodium.sodium_compare(two, two), 0)
assert.equal(sodium.sodium_compare(three, three), 0)
assert.equal(sodium.sodium_compare(one, two), -1)
assert.equal(sodium.sodium_compare(one, three), -1)
assert.equal(sodium.sodium_compare(two, one), 1)
assert.equal(sodium.sodium_compare(three, one), 1)
assert.equal(sodium.sodium_compare(two, three), -1)
assert.equal(sodium.sodium_compare(three, two), 1)
assert.end()
})
test('sodium_add', function (assert) {
var large = Buffer.alloc(32)
large[23] = 0b00000011
var largeLessOne = Buffer.alloc(32)
largeLessOne[23] = 0b00000001
var c = Buffer.from(large)
sodium.sodium_add(c, largeLessOne)
assert.ok(large[23], 4)
var overflow = Buffer.alloc(56, 0xff)
var one = Buffer.alloc(56)
one[0] = 1
sodium.sodium_add(overflow, one)
assert.ok(sodium.sodium_is_zero(overflow))
assert.end()
})
test('sub', function (assert) {
var large = Buffer.alloc(32)
large[23] = 0b00000011
var largeLessOne = Buffer.alloc(32)
largeLessOne[23] = 0b00000001
var c = Buffer.from(large)
sodium.sodium_sub(c, largeLessOne)
assert.ok(large[23], 2)
var overflow = Buffer.alloc(56, 0x00)
var one = Buffer.alloc(56)
one[0] = 1
sodium.sodium_sub(overflow, one)
assert.ok(sodium.sodium_memcmp(overflow, Buffer.alloc(56, 0xff)))
assert.end()
})
test('sodium_increment', function (assert) {
var zero = Buffer.alloc(4)
sodium.sodium_increment(zero)
assert.ok(zero[0], 1)
var overflow = Buffer.alloc(56, 0xff)
sodium.sodium_increment(overflow)
assert.ok(sodium.sodium_is_zero(overflow))
assert.end()
})
test('sodium_is_zero', function (assert) {
var buf = Buffer.from([0, 0, 0, 1])
assert.throws(_ => sodium.sodium_is_zero(), 'no args')
assert.throws(_ => sodium.sodium_is_zero(null), 'missing buf')
assert.ok(sodium.sodium_is_zero(Buffer.alloc(0)), 'empty buffer')
assert.ok(sodium.sodium_is_zero(buf.subarray(0, 0)), 'zero bytes')
assert.ok(sodium.sodium_is_zero(buf.subarray(0, 1)), 'one byte')
assert.ok(sodium.sodium_is_zero(buf.subarray(0, 2)), 'two bytes')
assert.ok(sodium.sodium_is_zero(buf.subarray(0, 3)), '3 bytes')
assert.notOk(sodium.sodium_is_zero(buf), 'first non-zero byte')
assert.ok(sodium.sodium_is_zero(buf.subarray(1, 2)), 'view')
assert.ok(sodium.sodium_is_zero(buf.subarray(1, 2)), 'view')
assert.notOk(sodium.sodium_is_zero(buf.subarray(3)), 'view')
assert.end()
})
Выполнить команду
Для локальной разработки. Не используйте в интернете!