diff --git a/cypress/e2e/po/detail/management.cattle.io.roletemplate.po.ts b/cypress/e2e/po/detail/management.cattle.io.roletemplate.po.ts index 1a7fc95177..dd0cbe5010 100644 --- a/cypress/e2e/po/detail/management.cattle.io.roletemplate.po.ts +++ b/cypress/e2e/po/detail/management.cattle.io.roletemplate.po.ts @@ -1,11 +1,18 @@ import RoleDetailPo from '@/cypress/e2e/po/detail/role.po'; import RoleTemplateEditPo from '@/cypress/e2e/po/edit/management.cattle.io.roletemplate.po'; import ResourceDetailPo from '@/cypress/e2e/po/edit/resource-detail.po'; +import ActionMenu from '@/cypress/e2e/po/components/action-menu.po'; class RoleTemplateDetailComponentPo extends ResourceDetailPo { userCreateEditView(clusterId: string, userId?: string ) { return new RoleTemplateEditPo(clusterId, userId); } + + openMastheadActionMenu() { + this.self().get('[data-testid="mathead-action-menu"]').click(); + + return new ActionMenu(undefined); + } } export default class RoleTemplateDetailPo extends RoleDetailPo { diff --git a/cypress/e2e/tests/pages/users-and-auth/roles.spec.ts b/cypress/e2e/tests/pages/users-and-auth/roles.spec.ts index 66d25b0693..4344a64530 100644 --- a/cypress/e2e/tests/pages/users-and-auth/roles.spec.ts +++ b/cypress/e2e/tests/pages/users-and-auth/roles.spec.ts @@ -228,6 +228,25 @@ describe('Roles Templates', { tags: ['@usersAndAuths', '@adminUser'] }, () => { promptRemove.warning().first().should('contain.text', 'Caution:'); // Check warning message content }); + it('can delete a role template from the detail page', () => { + // Delete role and verify role is removed from list + roles.waitForRequests(); + const oneRoleTemplateId = roleTemplatesToDelete.splice(0, 1)[0]; + const detailPage = roles.detailRole(oneRoleTemplateId); + + detailPage.goTo(); + detailPage.waitForPage(); + + const actionMenu = detailPage.detail().openMastheadActionMenu(); + + actionMenu.clickMenuItem(5); + + const promptRemove = new PromptRemove(); + + promptRemove.remove(); + roles.list('CLUSTER').elementWithName(oneRoleTemplateId).should('not.exist'); + }); + it('can delete a role template', () => { // Delete role and verify role is removed from list roles.waitForRequests(); diff --git a/shell/components/PromptRemove.vue b/shell/components/PromptRemove.vue index 5320f26bf3..384c83e98a 100644 --- a/shell/components/PromptRemove.vue +++ b/shell/components/PromptRemove.vue @@ -105,8 +105,8 @@ export default { return null; } - if (this.toRemove[0].doneLocationRemove) { - return this.toRemove[0].doneLocationRemove; + if (this.toRemove[0].doneOverride) { + return this.toRemove[0].doneOverride; } const currentRoute = this.toRemove[0].currentRoute(); diff --git a/shell/components/ResourceDetail/Masthead.vue b/shell/components/ResourceDetail/Masthead.vue index b8f66fb591..21889fc61b 100644 --- a/shell/components/ResourceDetail/Masthead.vue +++ b/shell/components/ResourceDetail/Masthead.vue @@ -521,6 +521,7 @@ export default {