8d72f8a705
* upgrade cypress * fixed delete now has dialog * also check "unAssign" * client type no longer required * providers and group changes * grp creation working * moved create realm button ouside the dropdown * sped up test and added cleanup * Revert "moved create realm button ouside the dropdown" This reverts commit e2076a5305808417de910ba8fada8e528e5c356a. * make test re-runnable * removed un needed navigation * Fix misformed Cypress config for GitHub Action * cleanup after test * fixed cleanup * temporary removed this test * also remove user "new" * try adding a wait for CI * get different modal id * add {force: true} to modal functions * mv grp search last and ignore 401 * try using cy.get and disable video for testing * add back video artifacts Co-authored-by: mfrances <mfrances@redhat.com> Co-authored-by: Jon Koops <jonkoops@gmail.com> Co-authored-by: jenny-s51 <jshandel@redhat.com>
88 lines
3 KiB
TypeScript
88 lines
3 KiB
TypeScript
import LoginPage from "../support/pages/LoginPage";
|
|
import Masthead from "../support/pages/admin_console/Masthead";
|
|
import ListingPage from "../support/pages/admin_console/ListingPage";
|
|
import SidebarPage from "../support/pages/admin_console/SidebarPage";
|
|
import CreateClientScopePage from "../support/pages/admin_console/manage/client_scopes/CreateClientScopePage";
|
|
import { keycloakBefore } from "../support/util/keycloak_before";
|
|
import RoleMappingTab from "../support/pages/admin_console/manage/RoleMappingTab";
|
|
import ModalUtils from "../support/util/ModalUtils";
|
|
|
|
let itemId = "client_scope_crud";
|
|
const loginPage = new LoginPage();
|
|
const masthead = new Masthead();
|
|
const sidebarPage = new SidebarPage();
|
|
const listingPage = new ListingPage();
|
|
const createClientScopePage = new CreateClientScopePage();
|
|
const modalUtils = new ModalUtils();
|
|
|
|
describe("Client Scopes test", function () {
|
|
describe("Client Scope creation", function () {
|
|
beforeEach(function () {
|
|
keycloakBefore();
|
|
loginPage.logIn();
|
|
sidebarPage.goToClientScopes();
|
|
});
|
|
|
|
it("should fail creating client scope", function () {
|
|
listingPage.goToCreateItem();
|
|
|
|
createClientScopePage.save().checkClientNameRequiredMessage();
|
|
|
|
createClientScopePage
|
|
.fillClientScopeData("address")
|
|
.save()
|
|
.checkClientNameRequiredMessage(false);
|
|
|
|
// The error should inform about duplicated name/id
|
|
masthead.checkNotificationMessage(
|
|
"Could not create client scope: 'Error: Request failed with status code 409'"
|
|
);
|
|
});
|
|
|
|
it("Client scope CRUD test", () => {
|
|
itemId += "_" + (Math.random() + 1).toString(36).substring(7);
|
|
|
|
// Create
|
|
listingPage.itemExist(itemId, false).goToCreateItem();
|
|
|
|
createClientScopePage.fillClientScopeData(itemId).save();
|
|
|
|
masthead.checkNotificationMessage("Client scope created");
|
|
|
|
sidebarPage.goToClientScopes();
|
|
|
|
// Delete
|
|
listingPage.itemExist(itemId).deleteItem(itemId);
|
|
modalUtils
|
|
.checkModalMessage("Are you sure you want to delete this client scope")
|
|
.confirmModal();
|
|
|
|
masthead.checkNotificationMessage("The client scope has been deleted");
|
|
|
|
listingPage // It is not refreshing after delete
|
|
.itemExist(itemId, false);
|
|
});
|
|
});
|
|
|
|
describe("Scope test", () => {
|
|
const scopeTab = new RoleMappingTab();
|
|
const scopeName = "address";
|
|
|
|
beforeEach(() => {
|
|
keycloakBefore();
|
|
loginPage.logIn();
|
|
sidebarPage.goToClientScopes();
|
|
});
|
|
|
|
it("Assign role", () => {
|
|
const role = "offline_access";
|
|
listingPage.searchItem(scopeName, false).goToItemDetails(scopeName);
|
|
scopeTab.goToScopeTab().clickAssignRole().selectRow(role).clickAssign();
|
|
masthead.checkNotificationMessage("Role mapping updated");
|
|
scopeTab.checkRoles([role]);
|
|
scopeTab.hideInheritedRoles().selectRow(role).clickUnAssign();
|
|
modalUtils.checkModalTitle("Remove mapping?").confirmModal();
|
|
scopeTab.checkRoles([]);
|
|
});
|
|
});
|
|
});
|