mirror of
https://github.com/optim-enterprises-bv/vault.git
synced 2025-12-29 00:11:05 +00:00
* first round, there shall be more * fix secret test * more clean up * maybe last round of clean up? * this is going to take a while * all the things or more of them at least * this is the song that never ends... * ... it goes on and on my friend. * clean up clean up everybody lets clean up * rename mount helper to mountBackend * clean up 🧹 * address pr comments --------- Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
98 lines
3.4 KiB
JavaScript
98 lines
3.4 KiB
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: BUSL-1.1
|
|
*/
|
|
|
|
import { currentURL, visit, click, fillIn } from '@ember/test-helpers';
|
|
import { module, test } from 'qunit';
|
|
import { setupApplicationTest } from 'ember-qunit';
|
|
import { v4 as uuidv4 } from 'uuid';
|
|
|
|
import backendListPage from 'vault/tests/pages/secrets/backends';
|
|
import mountSecrets from 'vault/tests/pages/settings/mount-secret-backend';
|
|
import authPage from 'vault/tests/pages/auth';
|
|
import { deleteEngineCmd, mountEngineCmd, runCmd } from 'vault/tests/helpers/commands';
|
|
import { GENERAL } from 'vault/tests/helpers/general-selectors';
|
|
import { MOUNT_BACKEND_FORM } from 'vault/tests/helpers/components/mount-backend-form-selectors';
|
|
|
|
const { searchSelect } = GENERAL;
|
|
|
|
module('Acceptance | secret engine mount settings', function (hooks) {
|
|
setupApplicationTest(hooks);
|
|
|
|
hooks.beforeEach(function () {
|
|
this.uid = uuidv4();
|
|
return authPage.login();
|
|
});
|
|
|
|
test('it allows you to mount a secret engine', async function (assert) {
|
|
const type = 'consul';
|
|
const path = `settings-path-${this.uid}`;
|
|
|
|
// mount unsupported backend
|
|
await visit('/vault/settings/mount-secret-backend');
|
|
|
|
assert.strictEqual(
|
|
currentURL(),
|
|
'/vault/settings/mount-secret-backend',
|
|
'navigates to the mount secret backend page'
|
|
);
|
|
await click(MOUNT_BACKEND_FORM.mountType(type));
|
|
await fillIn(GENERAL.inputByAttr('path'), path);
|
|
await click(GENERAL.toggleGroup('Method Options'));
|
|
await mountSecrets.enableDefaultTtl().defaultTTLUnit('s').defaultTTLVal(100);
|
|
await click(GENERAL.saveButton);
|
|
|
|
assert
|
|
.dom(`${GENERAL.flashMessage}.is-success`)
|
|
.includesText(
|
|
`Success Successfully mounted the ${type} secrets engine at ${path}`,
|
|
'flash message is shown after mounting'
|
|
);
|
|
|
|
assert.strictEqual(currentURL(), `/vault/secrets`, 'redirects to secrets page');
|
|
// cleanup
|
|
await runCmd(deleteEngineCmd(path));
|
|
});
|
|
|
|
test('it navigates to ember engine configuration page', async function (assert) {
|
|
const type = 'ldap';
|
|
const path = `ldap-${this.uid}`;
|
|
|
|
await visit('/vault/settings/mount-secret-backend');
|
|
await runCmd(mountEngineCmd(type, path), false);
|
|
await visit('/vault/secrets');
|
|
await click(searchSelect.trigger('filter-by-engine-name'));
|
|
await click(searchSelect.option(searchSelect.optionIndex(path)));
|
|
await click(GENERAL.menuTrigger);
|
|
await backendListPage.configLink();
|
|
assert.strictEqual(
|
|
currentURL(),
|
|
`/vault/secrets/${path}/${type}/configuration`,
|
|
'navigates to the config page for ember engine'
|
|
);
|
|
// clean up
|
|
await runCmd(deleteEngineCmd(path));
|
|
});
|
|
|
|
test('it navigates to non-ember engine configuration page', async function (assert) {
|
|
const type = 'ssh';
|
|
const path = `ssh-${this.uid}`;
|
|
|
|
await visit('/vault/settings/mount-secret-backend');
|
|
await runCmd(mountEngineCmd(type, path), false);
|
|
await visit('/vault/secrets');
|
|
await click(searchSelect.trigger('filter-by-engine-name'));
|
|
await click(searchSelect.option(searchSelect.optionIndex(path)));
|
|
await click(GENERAL.menuTrigger);
|
|
await backendListPage.configLink();
|
|
assert.strictEqual(
|
|
currentURL(),
|
|
`/vault/secrets/${path}/configuration`,
|
|
'navigates to the config page for non-ember engine'
|
|
);
|
|
// clean up
|
|
await runCmd(deleteEngineCmd(path));
|
|
});
|
|
});
|