open-vault/ui/tests/pages/secrets/backend/kv/show.js
Matthew Irish d56f0ccb72
UI - write without read for kv (#6570)
* wait for all hash promises to be settled

* skeleton tests with policies for write without read

* adjust what gets returned from the model hook

* refactor secret-edit model hook to use async/await

* return a stub version if we can't read secret data

* return a stub model for v1 kv

* tweak tests to make re-runs friendlier

* allow write without CAS if both v2 models cannot be read

* show warnings on edit pages for different write without read scenarios

* add no read empty states on secret show pages

* review feedback

* make message language consistent

* use version models from metadata if we can read it

* refresh route on delete / undelete / destroy

* hide controls in the toolbar when you can't read the secret data

* show deleted / destroyed messaging over cannot read messaging on the show page

* fix test with model stub

* refactor large model hook into several functions

* comment clarifications
2019-04-16 15:27:23 -05:00

26 lines
963 B
JavaScript

import { Base } from '../show';
import { create, clickable, collection, isPresent, text } from 'ember-cli-page-object';
import { code } from 'vault/tests/pages/helpers/codemirror';
export default create({
...Base,
breadcrumbs: collection('[data-test-secret-breadcrumb]', {
text: text(),
}),
deleteBtn: clickable('[data-test-secret-delete] button'),
confirmBtn: clickable('[data-test-confirm-button]'),
rows: collection('data-test-row-label'),
toggleJSON: clickable('[data-test-secret-json-toggle]'),
toggleIsPresent: isPresent('[data-test-secret-json-toggle]'),
edit: clickable('[data-test-secret-edit]'),
editIsPresent: isPresent('[data-test-secret-edit]'),
noReadIsPresent: isPresent('[data-test-write-without-read-empty-message]'),
noReadMessage: text('data-test-empty-state-message'),
editor: {
content: code('[data-test-component="json-editor"]'),
},
deleteSecret() {
return this.deleteBtn().confirmBtn();
},
});