ICU-13879 (#2372)
* Updated Dropdown in Roles menu to reflect Hds Dropdown * Added data-test attributes * Removed mixed rose code * Fixed lint issues * Fixed up tests and removed bare text to be replaced with translation. * Fixed lint issues * Updated Manage Scopes to reflect HDS self-closing element * Lint issues
This commit is contained in:
1 parent
4004431c6a
commit
3bcc5aabd8
5 files changed
+47
-25
No files matched your search
@@ -3,38 +3,29 @@
|
||||
SPDX-License-Identifier: BUSL-1.1
|
||||
}}
|
||||
|
||||
{{!TODO Refactor page to use hds dropdown in ICU-13879}}
|
||||
<Rose::Dropdown
|
||||
@text={{t 'actions.manage'}}
|
||||
@dropdownRight={{true}}
|
||||
as |dropdown|
|
||||
>
|
||||
<Hds::Dropdown as |dd|>
|
||||
<dd.ToggleButton @text={{t 'actions.manage'}} @color='secondary' />
|
||||
{{#if (can 'addPrincipals role' @model)}}
|
||||
<dropdown.link
|
||||
<dd.Interactive
|
||||
@text={{t 'resources.role.principal.actions.add-principals'}}
|
||||
@route='scopes.scope.roles.role.add-principals'
|
||||
data-test-manage-dropdown-principals
|
||||
>
|
||||
{{t 'resources.role.principal.actions.add-principals'}}
|
||||
</dropdown.link>
|
||||
/>
|
||||
{{/if}}
|
||||
|
||||
{{#if (can 'setGrantScopes role' @model)}}
|
||||
<dropdown.link
|
||||
<dd.Interactive
|
||||
@text={{t 'resources.role.scope.actions.manage-scopes'}}
|
||||
@route='scopes.scope.roles.role.manage-scopes'
|
||||
data-test-manage-dropdown-scopes
|
||||
>
|
||||
{{t 'resources.role.scope.actions.manage-scopes'}}
|
||||
</dropdown.link>
|
||||
/>
|
||||
{{/if}}
|
||||
|
||||
{{#if (can 'delete model' @model)}}
|
||||
<dropdown.separator />
|
||||
<dropdown.button
|
||||
@style='danger'
|
||||
<dd.Separator />
|
||||
<dd.Interactive
|
||||
@text={{t 'resources.role.actions.delete'}}
|
||||
@color='critical'
|
||||
@disabled={{@model.canSave}}
|
||||
{{on 'click' (fn @delete @model)}}
|
||||
>
|
||||
{{t 'resources.role.actions.delete'}}
|
||||
</dropdown.button>
|
||||
/>
|
||||
{{/if}}
|
||||
</Rose::Dropdown>
|
||||
</Hds::Dropdown>
|
||||
@@ -19,6 +19,9 @@ module('Acceptance | roles | delete', function (hooks) {
|
||||
setupApplicationTest(hooks);
|
||||
setupMirage(hooks);
|
||||
|
||||
const MANAGE_DROPDOWN_SELECTOR = '.hds-dropdown-toggle-button';
|
||||
const DELETE_DROPDOWN_SELECTOR = '.hds-dropdown-list-item--color-critical button'
|
||||
|
||||
const instances = {
|
||||
scopes: {
|
||||
global: null,
|
||||
@@ -63,7 +66,8 @@ module('Acceptance | roles | delete', function (hooks) {
|
||||
test('can delete a role', async function (assert) {
|
||||
const rolesCount = this.server.db.roles.length;
|
||||
await visit(urls.role);
|
||||
await click('.rose-layout-page-actions .rose-dropdown-button-danger');
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(DELETE_DROPDOWN_SELECTOR);
|
||||
assert.strictEqual(this.server.db.roles.length, rolesCount - 1);
|
||||
});
|
||||
|
||||
@@ -89,7 +93,8 @@ module('Acceptance | roles | delete', function (hooks) {
|
||||
);
|
||||
});
|
||||
await visit(urls.role);
|
||||
await click('.rose-layout-page-actions .rose-dropdown-button-danger');
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(DELETE_DROPDOWN_SELECTOR);
|
||||
assert.strictEqual(
|
||||
find('.rose-notification-body').textContent.trim(),
|
||||
'Oops.',
|
||||
|
||||
@@ -37,6 +37,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
const TABLE_PARENT_SCOPE_SELECTOR = 'tbody tr:nth-child(2) td:nth-child(3) a';
|
||||
const SAVE_BTN_SELECTOR = 'form [type="submit"]';
|
||||
const CANCEL_BTN_SELECTOR = '.rose-form-actions [type="button"]';
|
||||
const MANAGE_DROPDOWN_SELECTOR = '.hds-dropdown-toggle-button';
|
||||
const MANAGE_SCOPES_SELECTOR = '[data-test-manage-dropdown-scopes]';
|
||||
const TOAST_SELECTOR = '[role="alert"]';
|
||||
const SEARCH_INPUT_SELECTOR = '.search-filtering [type="search"]';
|
||||
@@ -154,6 +155,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
test('correct toggles are visible for global level role on manage scopes page', async function (assert) {
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
|
||||
assert.strictEqual(currentURL(), urls.manageScopes);
|
||||
@@ -170,6 +172,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await a11yAudit();
|
||||
|
||||
@@ -193,6 +196,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
|
||||
assert.strictEqual(currentURL(), urls.manageScopes);
|
||||
@@ -223,6 +227,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
instances.role.update({ grant_scope_ids: [] });
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(SCOPE_TOGGLE_SELECTOR(GRANT_SCOPE_THIS));
|
||||
await click(SAVE_BTN_SELECTOR);
|
||||
@@ -238,6 +243,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
|
||||
assert.strictEqual(currentURL(), urls.manageScopes);
|
||||
@@ -269,6 +275,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
|
||||
assert.strictEqual(currentURL(), urls.manageScopes);
|
||||
@@ -305,6 +312,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
instances.role.update({ grant_scope_ids: [] });
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageCustomScopes}"]`);
|
||||
await click(SCOPE_CHECKBOX_SELECTOR('org', instances.scopes.org.id));
|
||||
@@ -370,6 +378,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageCustomScopes}"]`);
|
||||
await click(
|
||||
@@ -409,6 +418,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageCustomScopes}"]`);
|
||||
await click(
|
||||
@@ -455,6 +465,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
instances.role.update({ grant_scope_ids: [] });
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageCustomScopes}"]`);
|
||||
await click(
|
||||
@@ -475,6 +486,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
});
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageCustomScopes}"]`);
|
||||
await click(
|
||||
@@ -508,6 +520,7 @@ module('Acceptance | roles | global-scope', function (hooks) {
|
||||
});
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageCustomScopes}"]`);
|
||||
await click(
|
||||
|
||||
@@ -37,6 +37,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
const TABLE_PARENT_SCOPE_SELECTOR = 'tbody tr:nth-child(2) td:nth-child(3) a';
|
||||
const SAVE_BTN_SELECTOR = 'form [type="submit"]';
|
||||
const CANCEL_BTN_SELECTOR = '.rose-form-actions [type="button"]';
|
||||
const MANAGE_DROPDOWN_SELECTOR = '.hds-dropdown-toggle-button';
|
||||
const MANAGE_SCOPES_SELECTOR = '[data-test-manage-dropdown-scopes]';
|
||||
const TOAST_SELECTOR = '[role="alert"]';
|
||||
const SEARCH_INPUT_SELECTOR = '.search-filtering [type="search"]';
|
||||
@@ -151,6 +152,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
test('correct toggles are visible for org level role on manage scopes page', async function (assert) {
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
|
||||
assert.strictEqual(currentURL(), urls.manageScopes);
|
||||
@@ -167,6 +169,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await a11yAudit();
|
||||
|
||||
@@ -190,6 +193,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
|
||||
assert.strictEqual(currentURL(), urls.manageScopes);
|
||||
@@ -220,6 +224,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
instances.role.update({ grant_scope_ids: [] });
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(SCOPE_TOGGLE_SELECTOR(GRANT_SCOPE_THIS));
|
||||
await click(SAVE_BTN_SELECTOR);
|
||||
@@ -235,6 +240,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageOrgProjects}"]`);
|
||||
await a11yAudit();
|
||||
@@ -267,6 +273,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
|
||||
assert.strictEqual(findAll(TABLE_ROW_SELECTOR).length, 0);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageOrgProjects}"]`);
|
||||
await a11yAudit();
|
||||
@@ -307,6 +314,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
instances.role.update({ grant_scope_ids: [] });
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageOrgProjects}"]`);
|
||||
await click(
|
||||
@@ -324,6 +332,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
});
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageOrgProjects}"]`);
|
||||
|
||||
@@ -354,6 +363,7 @@ module('Acceptance | roles | org-scope', function (hooks) {
|
||||
});
|
||||
await visit(urls.role);
|
||||
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(MANAGE_SCOPES_SELECTOR);
|
||||
await click(`[href="${urls.manageOrgProjects}"]`);
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@ module('Acceptance | roles | principals', function (hooks) {
|
||||
setupMirage(hooks);
|
||||
setupIndexedDb(hooks);
|
||||
|
||||
const MANAGE_DROPDOWN_SELECTOR = '.hds-dropdown-toggle-button';
|
||||
const ADD_PRINCIPALS_SELECTOR = '[data-test-manage-dropdown-principals]';
|
||||
|
||||
const instances = {
|
||||
@@ -120,6 +121,7 @@ module('Acceptance | roles | principals', function (hooks) {
|
||||
instances.role.update({ userIds: [], groupIds: [], managedGroupIds: [] });
|
||||
await visit(urls.rolePrincipals);
|
||||
assert.strictEqual(findAll('tbody tr').length, 0);
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(ADD_PRINCIPALS_SELECTOR);
|
||||
assert.strictEqual(currentURL(), urls.addPrincipals);
|
||||
// Click three times to select, unselect, then reselect (for coverage)
|
||||
@@ -138,6 +140,7 @@ module('Acceptance | roles | principals', function (hooks) {
|
||||
await click('.hds-dropdown-toggle-icon');
|
||||
await click('tbody tr .hds-dropdown-list-item button');
|
||||
assert.strictEqual(findAll('tbody tr').length, principalsCount - 1);
|
||||
await click(MANAGE_DROPDOWN_SELECTOR);
|
||||
await click(ADD_PRINCIPALS_SELECTOR);
|
||||
assert.strictEqual(currentURL(), urls.addPrincipals);
|
||||
await click('tbody label');
|
||||
|
||||
Reference in new issue
Block a user