Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
UsersPgTests.java 2.88 KiB
Newer Older
import ddsl.DomiSMPPage;
import ddsl.enums.Pages;
import domiSMPTests.SeleniumTest;
import org.openqa.selenium.WebElement;
import org.testng.annotations.BeforeMethod;
import pages.systemSettings.UsersPage;
import rest.models.UserModel;

public class UsersPgTests extends SeleniumTest {
    SoftAssert soft;
    DomiSMPPage homePage;
    LoginPage loginPage;

    @BeforeMethod(alwaysRun = true)
Mihai BOZ's avatar
Mihai BOZ committed
    public void beforeTest(){
        soft = new SoftAssert();
        homePage = new DomiSMPPage(driver);
        loginPage = homePage.goToLoginPage();
    }
    @Test(description = "USR-01 System admin is able to create new users")
Mihai BOZ's avatar
Mihai BOZ committed
    public void systemAdminIsAbleToCreateNewUsers() throws Exception {
        loginPage.login(data.getAdminUser().get("username"), data.getAdminUser().get("password"));

        UsersPage usersPage = homePage.getSidebar().navigateTo(Pages.SYSTEM_SETTINGS_USERS);
        usersPage.getCreateUserBtn().click();
        UserModel adminNewUserData = UserModel.generateUserWithADMINrole();
        usersPage.fillNewUserDataAndSave(adminNewUserData);

        usersPage.refreshPage();
        // usersPage.filter(adminNewUserData.getUsername());
        WebElement newUser = usersPage.getLeftSideGrid().searchAndGetElementInColumn("Username", adminNewUserData.getUsername());
        soft.assertEquals(usersPage.getApplicationRoleValue(), adminNewUserData.getRole());
        soft.assertEquals(usersPage.getFullNameValue(), adminNewUserData.getFullName());
        soft.assertTrue(usersPage.isSelectedUserActive(), "User active status is true");
        soft.assertEquals(usersPage.getEmailValue(), adminNewUserData.getEmailAddress());
        soft.assertEquals(usersPage.getSelectedThemeValue(), adminNewUserData.getSmpTheme());
        soft.assertEquals(usersPage.getSelectedLocaleValue(), "English");
    @Test(description = "USR-02 System admin is not able to create duplicated user")
Mihai BOZ's avatar
Mihai BOZ committed
    public void systemAdminIsNotAbleToCreateDuplicatedUser() throws Exception {
        loginPage.login(data.getAdminUser().get("username"), data.getAdminUser().get("password"));

        UsersPage usersPage = homePage.getSidebar().navigateTo(Pages.SYSTEM_SETTINGS_USERS);
        usersPage.getCreateUserBtn().click();
        UserModel adminNewUserData = UserModel.generateUserWithADMINrole();
        usersPage.fillNewUserDataAndSave(adminNewUserData);

        usersPage.refreshPage();
        usersPage.getCreateUserBtn().click();
        String alertMessage = usersPage.fillNewUserDataAndSave(adminNewUserData);
        soft.assertEquals(alertMessage, "Invalid request [CreateUser]. Error: User with username [" + adminNewUserData.getUsername() + "] already exists!!");
        soft.assertAll();