mirror of
https://github.com/hashicorp/vault.git
synced 2025-08-17 20:17:00 +02:00
* 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
37 lines
1.4 KiB
JavaScript
37 lines
1.4 KiB
JavaScript
import { Base } from '../create';
|
|
import { isPresent, clickable, visitable, create, fillable } from 'ember-cli-page-object';
|
|
import { codeFillable } from 'vault/tests/pages/helpers/codemirror';
|
|
export default create({
|
|
...Base,
|
|
path: fillable('[data-test-secret-path]'),
|
|
secretKey: fillable('[data-test-secret-key]'),
|
|
secretValue: fillable('[data-test-secret-value] textarea'),
|
|
save: clickable('[data-test-secret-save]'),
|
|
deleteBtn: clickable('[data-test-secret-delete] button'),
|
|
confirmBtn: clickable('[data-test-confirm-button]'),
|
|
visitEdit: visitable('/vault/secrets/:backend/edit/:id'),
|
|
visitEditRoot: visitable('/vault/secrets/:backend/edit'),
|
|
toggleJSON: clickable('[data-test-secret-json-toggle]'),
|
|
hasMetadataFields: isPresent('[data-test-metadata-fields]'),
|
|
showsNoCASWarning: isPresent('[data-test-v2-no-cas-warning]'),
|
|
showsV2WriteWarning: isPresent('[data-test-v2-write-without-read]'),
|
|
showsV1WriteWarning: isPresent('[data-test-v1-write-without-read]'),
|
|
editor: {
|
|
fillIn: codeFillable('[data-test-component="json-editor"]'),
|
|
},
|
|
deleteSecret() {
|
|
return this.deleteBtn().confirmBtn();
|
|
},
|
|
createSecret: async function(path, key, value) {
|
|
return this.path(path)
|
|
.secretKey(key)
|
|
.secretValue(value)
|
|
.save();
|
|
},
|
|
editSecret: async function(key, value) {
|
|
return this.secretKey(key)
|
|
.secretValue(value)
|
|
.save();
|
|
},
|
|
});
|