Newer
Older

Mihai BOZ
committed
package domiSMPTests.ui;
import ddsl.DomiSMPPage;

Mihai BOZ
committed
import ddsl.enums.Pages;
import domiSMPTests.SeleniumTest;
import org.openqa.selenium.WebElement;

Mihai BOZ
committed
import org.testng.annotations.BeforeMethod;

Mihai BOZ
committed
import org.testng.annotations.Test;

Mihai BOZ
committed
import org.testng.asserts.SoftAssert;

Mihai BOZ
committed
import pages.LoginPage;
import pages.systemSettings.UsersPage;

Mihai BOZ
committed
import rest.models.UserModel;
public class UsersPgTests extends SeleniumTest {

Mihai BOZ
committed
SoftAssert soft;
DomiSMPPage homePage;
LoginPage loginPage;
@BeforeMethod(alwaysRun = true)

Mihai BOZ
committed
soft = new SoftAssert();
homePage = new DomiSMPPage(driver);
loginPage = homePage.goToLoginPage();
}

Mihai BOZ
committed
@Test(description = "USR-01 System admin is able to create new users")
public void systemAdminIsAbleToCreateNewUsers() throws Exception {
loginPage.login(data.getAdminUser().get("username"), data.getAdminUser().get("password"));

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

Mihai BOZ
committed
// usersPage.filter(adminNewUserData.getUsername());
WebElement newUser = usersPage.getLeftSideGrid().searchAndGetElementInColumn("Username", adminNewUserData.getUsername());

Mihai BOZ
committed
soft.assertNotNull(newUser);

Mihai BOZ
committed
soft.assertEquals(usersPage.getApplicationRoleValue(), adminNewUserData.getRole());
soft.assertEquals(usersPage.getFullNameValue(), adminNewUserData.getFullName());
soft.assertTrue(usersPage.isSelectedUserActive(), "User active status is true");

Mihai BOZ
committed
soft.assertEquals(usersPage.getEmailValue(), adminNewUserData.getEmailAddress());
soft.assertEquals(usersPage.getSelectedThemeValue(), adminNewUserData.getSmpTheme());
soft.assertEquals(usersPage.getSelectedLocaleValue(), "English");

Mihai BOZ
committed
soft.assertAll();
@Test(description = "USR-02 System admin is not able to create duplicated user")
public void systemAdminIsNotAbleToCreateDuplicatedUser() throws Exception {

Mihai BOZ
committed
loginPage.login(data.getAdminUser().get("username"), data.getAdminUser().get("password"));

Mihai BOZ
committed
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);

Mihai BOZ
committed
soft.assertEquals(alertMessage, "Invalid request [CreateUser]. Error: User with username [" + adminNewUserData.getUsername() + "] already exists!!");
soft.assertAll();