keycloak-scim/tests/cypress/integration/clients_test.spec.js

92 lines
2.5 KiB
JavaScript
Raw Normal View History

import LoginPage from "../support/pages/LoginPage.js";
import Masthead from "../support/pages/admin_console/Masthead.js";
import ListingPage from "../support/pages/admin_console/ListingPage.js";
import SidebarPage from "../support/pages/admin_console/SidebarPage.js";
import CreateClientPage from "../support/pages/admin_console/manage/clients/CreateClientPage.js";
describe("Clients test", function () {
const itemId = "client_1";
const loginPage = new LoginPage();
const masthead = new Masthead();
const sidebarPage = new SidebarPage();
const listingPage = new ListingPage();
const createClientPage = new CreateClientPage();
describe("Client creation", function () {
beforeEach(function () {
cy.visit("");
});
it("should fail creating client", function () {
loginPage.logIn();
sidebarPage.goToClients();
listingPage.goToCreateItem();
createClientPage
.continue()
.checkClientTypeRequiredMessage()
.checkClientIdRequiredMessage();
createClientPage
.fillClientData(itemId)
.continue()
.checkClientTypeRequiredMessage()
.checkClientIdRequiredMessage(false);
createClientPage
.fillClientData("")
.selectClientType("openid-connect")
.continue()
.checkClientTypeRequiredMessage(false)
.checkClientIdRequiredMessage();
createClientPage.fillClientData("account").continue().continue();
// The error should inform about duplicated name/id
masthead.checkNotificationMessage(
"Could not create client: 'Error: Request failed with status code 409'"
);
});
it("should create client", function () {
loginPage.logIn();
sidebarPage.goToClients();
listingPage.itemExist(itemId, false).goToCreateItem();
createClientPage
.selectClientType("openid-connect")
.fillClientData(itemId)
.continue()
.continue();
masthead.checkNotificationMessage("Client created successfully");
sidebarPage.goToClients();
listingPage.itemExist(itemId).searchItem(itemId).itemExist(itemId);
});
});
describe("Client elimination", function () {
beforeEach(function () {
cy.visit("");
});
it("should delete client", function () {
loginPage.logIn();
sidebarPage.goToClients();
listingPage.itemExist(itemId).deleteItem(itemId); // There should be a confirmation pop-up
masthead.checkNotificationMessage("The client has been deleted");
listingPage.itemExist(itemId, false);
});
});
});