64 lines
2.3 KiB
JavaScript
64 lines
2.3 KiB
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*/
|
|
|
|
import { resolve } from 'rsvp';
|
|
import { module, test } from 'qunit';
|
|
import { setupTest } from 'ember-qunit';
|
|
|
|
module('Unit | Adapter | tools', function (hooks) {
|
|
setupTest(hooks);
|
|
|
|
test('wrapping api urls', function (assert) {
|
|
let url, method, options;
|
|
const adapter = this.owner.factoryFor('adapter:tools').create({
|
|
ajax: (...args) => {
|
|
[url, method, options] = args;
|
|
return resolve();
|
|
},
|
|
});
|
|
|
|
let clientToken;
|
|
let data = { foo: 'bar' };
|
|
adapter.toolAction('wrap', data, { wrapTTL: '30m' });
|
|
assert.strictEqual(url, '/v1/sys/wrapping/wrap', 'wrapping:wrap url OK');
|
|
assert.strictEqual(method, 'POST', 'wrapping:wrap method OK');
|
|
assert.deepEqual({ data: data, wrapTTL: '30m', clientToken }, options, 'wrapping:wrap options OK');
|
|
|
|
data = { token: 'token' };
|
|
adapter.toolAction('lookup', data);
|
|
assert.strictEqual(url, '/v1/sys/wrapping/lookup', 'wrapping:lookup url OK');
|
|
assert.strictEqual(method, 'POST', 'wrapping:lookup method OK');
|
|
assert.deepEqual({ data, clientToken }, options, 'wrapping:lookup options OK');
|
|
|
|
adapter.toolAction('unwrap', data);
|
|
assert.strictEqual(url, '/v1/sys/wrapping/unwrap', 'wrapping:unwrap url OK');
|
|
assert.strictEqual(method, 'POST', 'wrapping:unwrap method OK');
|
|
assert.deepEqual({ data, clientToken }, options, 'wrapping:unwrap options OK');
|
|
|
|
adapter.toolAction('rewrap', data);
|
|
assert.strictEqual(url, '/v1/sys/wrapping/rewrap', 'wrapping:rewrap url OK');
|
|
assert.strictEqual(method, 'POST', 'wrapping:rewrap method OK');
|
|
assert.deepEqual({ data, clientToken }, options, 'wrapping:rewrap options OK');
|
|
});
|
|
|
|
test('tools api urls', function (assert) {
|
|
let url, method;
|
|
const adapter = this.owner.factoryFor('adapter:tools').create({
|
|
ajax: (...args) => {
|
|
[url, method] = args;
|
|
return resolve();
|
|
},
|
|
});
|
|
|
|
adapter.toolAction('hash', { input: 'someBase64' });
|
|
assert.strictEqual(url, '/v1/sys/tools/hash', 'sys tools hash: url OK');
|
|
assert.strictEqual(method, 'POST', 'sys tools hash: method OK');
|
|
|
|
adapter.toolAction('random', { bytes: '32' });
|
|
assert.strictEqual(url, '/v1/sys/tools/random', 'sys tools random: url OK');
|
|
assert.strictEqual(method, 'POST', 'sys tools random: method OK');
|
|
});
|
|
});
|