igneum/relay/test/auth.test.mjs

14 lines
756 B
JavaScript

// node --test relay/test/auth.test.mjs
import { test } from 'node:test';
import assert from 'node:assert/strict';
import { sameSecret } from '../lib/auth.mjs';
test('sameSecret: equal strings only; never for a missing, empty or non-string side', () => {
assert.equal(sameSecret('abcdefghijklmnopqrst', 'abcdefghijklmnopqrst'), true);
assert.equal(sameSecret('abcdefghijklmnopqrsT', 'abcdefghijklmnopqrst'), false);
assert.equal(sameSecret('abcdefghijklmnopqrs', 'abcdefghijklmnopqrst'), false);
assert.equal(sameSecret(undefined, 'abcdefghijklmnopqrst'), false);
assert.equal(sameSecret(['abcdefghijklmnopqrst'], 'abcdefghijklmnopqrst'), false);
assert.equal(sameSecret('', ''), false);
assert.equal(sameSecret('x', undefined), false);
});