diff --git a/smp-ui-tests/src/main/java/pages/components/SandwichMenu.java b/smp-ui-tests/src/main/java/pages/components/SandwichMenu.java
index cea32852cb3623d952d4a84c63718dd36119e559..73204029c5cc7e5ebc8f79e2b6bd5224e1bd042d 100644
--- a/smp-ui-tests/src/main/java/pages/components/SandwichMenu.java
+++ b/smp-ui-tests/src/main/java/pages/components/SandwichMenu.java
@@ -11,33 +11,27 @@ import pages.service_groups.search.SearchPage;
 import utils.PROPERTIES;
 
 public class SandwichMenu extends PageComponent {
-	public SandwichMenu(WebDriver driver) {
-		super(driver);
-		log.info("sandwich menu init");
-		
-		PageFactory.initElements( new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
-	}
-
-
 	@SuppressWarnings("SpellCheckingInspection")
 	@FindBy(id = "settingsmenu_id")
 	WebElement expandoButton;
-
 	@FindBy(css = "div.mat-menu-content")
 	WebElement lnkContainer;
-
 	@SuppressWarnings("SpellCheckingInspection")
 	@FindBy(id = "currentuser_id")
 	WebElement currentUserID;
-
 	@FindBy(id = "logout_id")
 	WebElement logoutLnk;
-
 	@FindBy(id = "changePassword_id")
 	WebElement passChangeLnk;
 
+	public SandwichMenu(WebDriver driver) {
+		super(driver);
+		log.info("sandwich menu init");
+
+		PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
+	}
 
-	public boolean isLoggedIn(){
+	public boolean isLoggedIn() {
 		clickVoidSpace();
 
 		waitForElementToBeClickable(expandoButton).click();
@@ -46,24 +40,26 @@ public class SandwichMenu extends PageComponent {
 		try {
 			String text = waitForElementToBeVisible(lnkContainer).getText();
 			isLoggedIn = !text.contains("Not logged in");
-		} catch (Exception e) {		}
+		} catch (Exception e) {
+		}
 
 		log.info("User login status is: " + isLoggedIn);
 
 		clickVoidSpace();
 		return isLoggedIn;
 	}
-	public PasswordChangepopup clickChangePasswordOption()
-	{
+
+	public PasswordChangepopup clickChangePasswordOption() {
 		waitForElementToBeClickable(expandoButton).click();
+		waitForElementToBeGone(expandoButton);
 		waitForElementToBeClickable(passChangeLnk).click();
 		return new PasswordChangepopup(driver);
 	}
 
-	public SearchPage logout(){
+	public SearchPage logout() {
 		clickVoidSpace();
 
-		if(isLoggedIn()){
+		if (isLoggedIn()) {
 			waitForElementToBeClickable(expandoButton).click();
 			waitForElementToBeClickable(logoutLnk).click();
 			log.info("Logging out...");
@@ -71,7 +67,7 @@ public class SandwichMenu extends PageComponent {
 		return new SearchPage(driver);
 	}
 
-	public void waitForSandwichMenu(){
+	public void waitForSandwichMenu() {
 		log.info("waiting for sandwich menu");
 		waitForXMillis(500);
 		waitForElementToBeVisible(expandoButton);
diff --git a/smp-ui-tests/src/main/java/pages/components/baseComponents/Header.java b/smp-ui-tests/src/main/java/pages/components/baseComponents/Header.java
index 7e81bd57fb19b02e92f021a2c6e20664eb0928ac..e5535ddcfb1ce2dff21efaf0c617c44b0b5b07fe 100644
--- a/smp-ui-tests/src/main/java/pages/components/baseComponents/Header.java
+++ b/smp-ui-tests/src/main/java/pages/components/baseComponents/Header.java
@@ -7,16 +7,11 @@ import org.openqa.selenium.support.PageFactory;
 import org.openqa.selenium.support.pagefactory.AjaxElementLocatorFactory;
 import pages.components.SandwichMenu;
 import pages.login.LoginPage;
-import pages.password.PasswordChangepopup;
 import utils.PROPERTIES;
 
-public class Header extends PageComponent{
-
-	public Header(WebDriver driver) {
-		super(driver);
-		PageFactory.initElements( new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
-	}
+public class Header extends PageComponent {
 
+	public SandwichMenu sandwichMenu = new SandwichMenu(driver);
 	@FindBy(id = "_header_id")
 	private WebElement pageTitle;
 
@@ -29,41 +24,33 @@ public class Header extends PageComponent{
 	@FindBy(css = "#sandwichMenu .ng-star-inserted")
 	private WebElement role;
 
-	@FindBy(css = "#changePassword_id")
-	private WebElement changePasswordOption;
-
-	public SandwichMenu sandwichMenu = new SandwichMenu(driver);
-
-	public PasswordChangepopup clickChangePasswordOption()
-	{
-		log.info("Clicking on changepassword option");
-		waitForElementToBeClickable(changePasswordOption).click();
-		return new PasswordChangepopup(driver);
+	public Header(WebDriver driver) {
+		super(driver);
+		PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
 	}
 
-	public LoginPage goToLogin(){
+	public LoginPage goToLogin() {
 		log.info("Going to login page");
 		waitForElementToBeClickable(loginLnk).click();
 		return new LoginPage(driver);
 	}
 
 
-	public void waitForTitleToBe(String title){
+	public void waitForTitleToBe(String title) {
 		log.info("waiting for page title to be " + title);
 		waitForXMillis(500);
 		waitForElementToHaveText(pageTitle, title);
 	}
 
-	public void waitForTitleToBe(){
+	public void waitForTitleToBe() {
 		log.info("waiting for page title to be present");
 		waitForXMillis(500);
 		waitForElementToBeVisible(pageTitle);
 	}
 
-	public String getRoleName()
-	{
+	public String getRoleName() {
 		String getUserRole = role.getText();
-		String roleName= getUserRole.split(":")[0].trim();
+		String roleName = getUserRole.split(":")[0].trim();
 		return roleName;
 	}
 }
diff --git a/smp-ui-tests/src/main/java/pages/components/baseComponents/PageComponent.java b/smp-ui-tests/src/main/java/pages/components/baseComponents/PageComponent.java
index 91bda2be35a31286f8cf355e488c8648af370dd6..c882b8d5e57ba8da3db2ccb537687d177fd3e170 100644
--- a/smp-ui-tests/src/main/java/pages/components/baseComponents/PageComponent.java
+++ b/smp-ui-tests/src/main/java/pages/components/baseComponents/PageComponent.java
@@ -1,7 +1,6 @@
 package pages.components.baseComponents;
 
 
-import com.google.common.base.Stopwatch;
 import org.apache.log4j.Logger;
 import org.openqa.selenium.By;
 import org.openqa.selenium.JavascriptExecutor;
@@ -15,184 +14,177 @@ import utils.PROPERTIES;
 
 public class PageComponent {
 
-    protected WebDriver driver;
-    protected WebDriverWait wait;
-    protected Logger log = Logger.getLogger(this.getClass());
-    protected By loadingBar = By.cssSelector(".container .bar");
-
-
-    public PageComponent(WebDriver driver) {
-        this.driver = driver;
-        this.wait = new WebDriverWait(this.driver, PROPERTIES.TIMEOUT);
-    }
-
-    public WebElement waitForElementToBeClickable(WebElement element) {
-        return wait.until(ExpectedConditions.elementToBeClickable(element));
-    }
-
-    public WebElement waitForElementToBeVisible(WebElement element) {
-        return wait.until(ExpectedConditions.visibilityOf(element));
-    }
-
-    public WebElement waitForElementToBeVisible(By elementSelector) {
-        return wait.until(ExpectedConditions.visibilityOfElementLocated(elementSelector));
-    }
-
-    public void waitForElementToBeEnabled(WebElement element) {
-        int maxTimeout = PROPERTIES.SHORT_UI_TIMEOUT * 1000;
-        int waitedSoFar = 0;
-        while ((null != element.getAttribute("disabled")) && (waitedSoFar < maxTimeout)) {
-            waitedSoFar += 100;
-            waitForXMillis(100);
-        }
-    }
-
-    public void waitForElementToBeDisabled(WebElement element) {
-        int maxTimeout = PROPERTIES.SHORT_UI_TIMEOUT * 1000;
-        int waitedSoFar = 0;
-        while ((null == element.getAttribute("disabled")) && (waitedSoFar < maxTimeout)) {
-            waitedSoFar += 100;
-            waitForXMillis(100);
-        }
-    }
-
-    public void waitForElementToBeGone(WebElement element) {
-        waitForXMillis(1000);
-    }
-
-
-    public void waitForNumberOfWindowsToBe(int noOfWindows) {
-        try {
-            wait.until(numberOfWindowsToBe(noOfWindows));
-        } catch (Exception e) {
-        }
-    }
-
-    public void clearAndFillInput(WebElement element, String toFill) {
-
-        log.info("clearing input");
-        waitForElementToBeEnabled(element);
-        element.clear();
-        element.sendKeys(toFill);
-        log.info("filled in text " + toFill);
-    }
-
-    public void clickVoidSpace() {
-        log.info("clicking void");
-        try {
-            waitForXMillis(500);
-            ((JavascriptExecutor) driver).executeScript("document.querySelector('[class*=\"overlay-backdrop\"]').click()");
-            waitForXMillis(500);
-        } catch (Exception e) {
-        }
-        waitForXMillis(500);
-    }
-
-    private ExpectedCondition<Boolean> numberOfWindowsToBe(final int numberOfWindows) {
-        return new ExpectedCondition<Boolean>() {
-            @Override
-            public Boolean apply(WebDriver driver) {
-                driver.getWindowHandles();
-                return driver.getWindowHandles().size() == numberOfWindows;
-            }
-        };
-    }
-
-    public void waitForXMillis(Integer millis) {
-        try {
-            Thread.sleep(millis);
-        } catch (InterruptedException e) {
-            log.error("EXCEPTION: ", e);
-        }
-    }
-
-    public void waitForAttributeNotEmpty(WebElement element, String attributeName) {
-        wait.until(ExpectedConditions.attributeToBeNotEmpty(element, attributeName));
-    }
-
-    public void waitForElementToHaveText(WebElement element, String title) {
-        wait.until(ExpectedConditions.textToBePresentInElement(element, title));
-    }
-
-    public void waitForElementToBe(WebElement element) {
-
-        wait.until(ExpectedConditions.visibilityOf(element));
-//        wait.until(new ExpectedCondition<Boolean>() {
-//            @Override
-//            public Boolean apply(WebDriver driver) {
-//                return element.getLocation() != null;
-//            }
-//        });
-
-    }
-
-    public void waitForAttributeToContain(WebElement element, String attributeName, String value) {
-        wait.until(ExpectedConditions.attributeContains(element, attributeName, value));
-    }
-
-    public void waitForElementToHaveText(WebElement element) {
-        wait.until(new ExpectedCondition<Boolean>() {
-            @Override
-            public Boolean apply(WebDriver driver) {
-                return !element.getText().trim().isEmpty();
-            }
-        });
-    }
-
-    public void waitForElementToContainText(WebElement element, String text) {
-        wait.until(ExpectedConditions.textToBePresentInElement(element, text));
-    }
-
-    public boolean isVisible(WebElement element) {
-        log.info("checking if element is visible");
-
-        try {
-            waitForElementToBe(element);
-            return element.isDisplayed();
-        } catch (Exception e) {
-        }
-        return false;
-    }
-
-    public boolean isEnabled(WebElement element) {
-        log.info("checking if element is enabled");
-        try {
-            waitForElementToBeEnabled(element);
-        } catch (Exception e) {
-            return false;
-        }
-        return element.isEnabled();
-    }
-
-    public boolean isDisabled(WebElement element) {
-        log.info("checking if element is disabled");
-        try {
-            waitForElementToBeDisabled(element);
-        } catch (Exception e) {
-            return false;
-        }
-        return true;
-    }
-
-    public void waitForRowsToLoad() {
-
-        log.info("waiting for rows to load");
-        try {
-            waitForXMillis(100);
-            int bars = 1;
-            int waits = 0;
-            while (bars > 0 && waits < 30) {
-                Object tmp = ((JavascriptExecutor) driver).executeScript("return document.querySelectorAll('.container .bar').length;");
-                bars = Integer.valueOf(tmp.toString());
-                waits++;
-                waitForXMillis(200);
-            }
-            log.debug("waited for rows to load for ms = 200*" + waits);
-            waitForXMillis(200);
-        } catch (Exception e) {
-        }
-
-    }
+	protected WebDriver driver;
+	protected WebDriverWait wait;
+	protected Logger log = Logger.getLogger(this.getClass());
+	protected By loadingBar = By.cssSelector(".container .bar");
+
+
+	public PageComponent(WebDriver driver) {
+		this.driver = driver;
+		this.wait = new WebDriverWait(this.driver, PROPERTIES.TIMEOUT);
+	}
+
+	public WebElement waitForElementToBeClickable(WebElement element) {
+		return wait.until(ExpectedConditions.elementToBeClickable(element));
+	}
+
+	public WebElement waitForElementToBeVisible(WebElement element) {
+		return wait.until(ExpectedConditions.visibilityOf(element));
+	}
+
+	public WebElement waitForElementToBeVisible(By elementSelector) {
+		return wait.until(ExpectedConditions.visibilityOfElementLocated(elementSelector));
+	}
+
+	public void waitForElementToBeEnabled(WebElement element) {
+		int maxTimeout = PROPERTIES.SHORT_UI_TIMEOUT * 1000;
+		int waitedSoFar = 0;
+		while ((null != element.getAttribute("disabled")) && (waitedSoFar < maxTimeout)) {
+			waitedSoFar += 100;
+			waitForXMillis(100);
+		}
+	}
+
+	public void waitForElementToBeDisabled(WebElement element) {
+		int maxTimeout = PROPERTIES.SHORT_UI_TIMEOUT * 1000;
+		int waitedSoFar = 0;
+		while ((null == element.getAttribute("disabled")) && (waitedSoFar < maxTimeout)) {
+			waitedSoFar += 100;
+			waitForXMillis(100);
+		}
+	}
+
+	public void waitForElementToBeGone(WebElement element) {
+		waitForXMillis(1000);
+	}
+
+
+	public void waitForNumberOfWindowsToBe(int noOfWindows) {
+		try {
+			wait.until(numberOfWindowsToBe(noOfWindows));
+		} catch (Exception e) {
+		}
+	}
+
+	public void clearAndFillInput(WebElement element, String toFill) {
+
+		log.info("clearing input");
+		waitForElementToBeEnabled(element);
+		element.clear();
+		element.sendKeys(toFill);
+		log.info("filled in text " + toFill);
+	}
+
+	public void clickVoidSpace() {
+		log.info("clicking void");
+		try {
+			waitForXMillis(500);
+			((JavascriptExecutor) driver).executeScript("document.querySelector('[class*=\"overlay-backdrop\"]').click()");
+			waitForXMillis(500);
+		} catch (Exception e) {
+		}
+		waitForXMillis(500);
+	}
+
+	private ExpectedCondition<Boolean> numberOfWindowsToBe(final int numberOfWindows) {
+		return new ExpectedCondition<Boolean>() {
+			@Override
+			public Boolean apply(WebDriver driver) {
+				driver.getWindowHandles();
+				return driver.getWindowHandles().size() == numberOfWindows;
+			}
+		};
+	}
+
+	public void waitForXMillis(Integer millis) {
+		try {
+			Thread.sleep(millis);
+		} catch (InterruptedException e) {
+			log.error("EXCEPTION: ", e);
+		}
+	}
+
+	public void waitForAttributeNotEmpty(WebElement element, String attributeName) {
+		wait.until(ExpectedConditions.attributeToBeNotEmpty(element, attributeName));
+	}
+
+	public void waitForElementToHaveText(WebElement element, String title) {
+		wait.until(ExpectedConditions.textToBePresentInElement(element, title));
+	}
+
+	public void waitForElementToBe(WebElement element) {
+
+		wait.until(ExpectedConditions.visibilityOf(element));
+	}
+
+	public void waitForAttributeToContain(WebElement element, String attributeName, String value) {
+		wait.until(ExpectedConditions.attributeContains(element, attributeName, value));
+	}
+
+	public void waitForElementToHaveText(WebElement element) {
+		wait.until(new ExpectedCondition<Boolean>() {
+			@Override
+			public Boolean apply(WebDriver driver) {
+				return !element.getText().trim().isEmpty();
+			}
+		});
+	}
+
+	public void waitForElementToContainText(WebElement element, String text) {
+		wait.until(ExpectedConditions.textToBePresentInElement(element, text));
+	}
+
+	public boolean isVisible(WebElement element) {
+		log.info("checking if element is visible");
+
+		try {
+			waitForElementToBe(element);
+			return element.isDisplayed();
+		} catch (Exception e) {
+		}
+		return false;
+	}
+
+	public boolean isEnabled(WebElement element) {
+		log.info("checking if element is enabled");
+		try {
+			waitForElementToBeEnabled(element);
+		} catch (Exception e) {
+			return false;
+		}
+		return element.isEnabled();
+	}
+
+	public boolean isDisabled(WebElement element) {
+		log.info("checking if element is disabled");
+		try {
+			waitForElementToBeDisabled(element);
+		} catch (Exception e) {
+			return false;
+		}
+		return true;
+	}
+
+	public void waitForRowsToLoad() {
+
+		log.info("waiting for rows to load");
+		try {
+			waitForXMillis(100);
+			int bars = 1;
+			int waits = 0;
+			while (bars > 0 && waits < 30) {
+				Object tmp = ((JavascriptExecutor) driver).executeScript("return document.querySelectorAll('.container .bar').length;");
+				bars = Integer.valueOf(tmp.toString());
+				waits++;
+				waitForXMillis(200);
+			}
+			log.debug("waited for rows to load for ms = 200*" + waits);
+			waitForXMillis(200);
+		} catch (Exception e) {
+		}
+
+	}
 
 
 }
diff --git a/smp-ui-tests/src/main/java/pages/components/grid/BasicGrid.java b/smp-ui-tests/src/main/java/pages/components/grid/BasicGrid.java
index 9c3d4b281f03c1c1974e27d65a4a74a847f17423..011f041d9768b1c5aa5c0062cef7745f401d3bf7 100644
--- a/smp-ui-tests/src/main/java/pages/components/grid/BasicGrid.java
+++ b/smp-ui-tests/src/main/java/pages/components/grid/BasicGrid.java
@@ -14,58 +14,59 @@ import java.util.List;
 
 public class BasicGrid extends PageComponent {
 
-    @FindBy(css = "datatable-header div.datatable-row-center datatable-header-cell")
-    protected List<WebElement> gridHeaders;
-    @FindBy(css = "datatable-body-row > div.datatable-row-center.datatable-row-group")
-    protected List<WebElement> gridRows;
-    protected ArrayList<String> headerTxt = new ArrayList<String>();
+	@FindBy(css = "datatable-header div.datatable-row-center datatable-header-cell")
+	protected List<WebElement> gridHeaders;
+	@FindBy(css = "datatable-body-row > div.datatable-row-center.datatable-row-group")
+	protected List<WebElement> gridRows;
+	protected ArrayList<String> headerTxt = new ArrayList<String>();
 
 
-    public BasicGrid(WebDriver driver, WebElement container) {
-        super(driver);
+	public BasicGrid(WebDriver driver, WebElement container) {
+		super(driver);
 
-        log.info("Loading basic grid");
-        waitForRowsToLoad();
-        PageFactory.initElements(new DefaultElementLocatorFactory(container), this);
+		log.info("Loading basic grid");
+		waitForRowsToLoad();
+		PageFactory.initElements(new DefaultElementLocatorFactory(container), this);
 
-        for (int i = 0; i < gridHeaders.size(); i++) {
-            headerTxt.add(gridHeaders.get(i).getText().trim());
-        }
+		for (int i = 0; i < gridHeaders.size(); i++) {
+			headerTxt.add(gridHeaders.get(i).getText().trim());
+		}
 
-    }
+	}
 
-    public void selectRow(int rowNumber) {
-        log.info("selecting row with number ... " + rowNumber);
-        if (rowNumber >= gridRows.size()) {
-            return;
-        }
-        gridRows.get(rowNumber).click();
-        waitForXMillis(500);
-    }
+	public void selectRow(int rowNumber) {
+		log.info("selecting row with number ... " + rowNumber);
+		waitForRowsToLoad();
+		if (rowNumber >= gridRows.size()) {
+			return;
+		}
+		gridRows.get(rowNumber).click();
+		waitForXMillis(500);
+	}
 
-    public void doubleClickRow(int rowNumber) {
+	public void doubleClickRow(int rowNumber) {
 
-        log.info("double clicking row ... " + rowNumber);
-        waitForXMillis(500);
-        if (rowNumber >= gridRows.size()) {
-            return;
-        }
-        Actions action = new Actions(driver);
-        action.doubleClick(gridRows.get(rowNumber)).perform();
-    }
+		log.info("double clicking row ... " + rowNumber);
+		waitForXMillis(500);
+		if (rowNumber >= gridRows.size()) {
+			return;
+		}
+		Actions action = new Actions(driver);
+		action.doubleClick(gridRows.get(rowNumber)).perform();
+	}
 
-    public int getColumnsNo() {
-        log.info("getting number of columns");
-        return gridHeaders.size();
-    }
+	public int getColumnsNo() {
+		log.info("getting number of columns");
+		return gridHeaders.size();
+	}
 
-    public int getRowsNo() {
-        return gridRows.size();
-    }
+	public int getRowsNo() {
+		return gridRows.size();
+	}
 
-    public void scrollRow(int index) {
-        JavascriptExecutor js = (JavascriptExecutor) driver;
-        js.executeScript("arguments[0].scrollIntoView();", gridRows.get(index));
-        waitForXMillis(500);
-    }
+	public void scrollRow(int index) {
+		JavascriptExecutor js = (JavascriptExecutor) driver;
+		js.executeScript("arguments[0].scrollIntoView();", gridRows.get(index));
+		waitForXMillis(500);
+	}
 }
diff --git a/smp-ui-tests/src/main/java/pages/domain/DomainPopup.java b/smp-ui-tests/src/main/java/pages/domain/DomainPopup.java
index 4f6eeb4cce58acbb902a5d47d762826388888459..00f424fae55c715a1e73514931cca27de8098a67 100644
--- a/smp-ui-tests/src/main/java/pages/domain/DomainPopup.java
+++ b/smp-ui-tests/src/main/java/pages/domain/DomainPopup.java
@@ -11,51 +11,43 @@ import pages.components.baseComponents.PageComponent;
 import utils.PROPERTIES;
 
 public class DomainPopup extends PageComponent {
-	public DomainPopup(WebDriver driver) {
-		super(driver);
-		PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
-
-		signatureCertSelect = new GenericSelect(driver, signatureCertSelectContainer);
-		smlClientAliasSelect = new GenericSelect(driver, smlClientAliasSelectContainer);
-
-
-	}
-
 	@FindBy(css = "domain-details-dialog button:nth-child(1)")
 	WebElement okBtn;
-
 	@FindBy(css = "domain-details-dialog button:nth-child(2)")
 	WebElement cancelBtn;
-
 	@FindBy(css = "#domainCode_id")
 	WebElement domainCodeInput;
-
 	@FindBy(css = "#smldomain_id")
 	WebElement smlDomainInput;
-
 	@FindBy(css = "#signatureKeyAlias_id")
 	WebElement signatureCertSelectContainer;
 	GenericSelect signatureCertSelect;
-
 	@FindBy(css = "#smlSMPId_id")
 	WebElement smlSMPIdInput;
-
 	@FindBy(css = "span.mat-slide-toggle-bar")
 	WebElement userClientCertHeaderToggle;
-
 	@FindBy(css = "#smlClientCertHeaderAuth_id-input")
 	WebElement userClientCertHeaderToggleInput;
-
-	@FindBy(css = "div.mat-form-field-infix > div.ng-star-inserted")
+	@FindBy(css = "#domainCode_id + div")
 	WebElement domainCodeValidationError;
 
-	@FindBy(css = "#MetadataTextArea")
-	private WebElement metadataTextArea;
-
+	@FindBy(css = "#smlSMPId_id + div")
+	WebElement smlSmpIdValidationError;
 	@FindBy(css = "#smlClientKeyAlias_id")
 	WebElement smlClientAliasSelectContainer;
 	GenericSelect smlClientAliasSelect;
+	@FindBy(css = "#MetadataTextArea")
+	private WebElement metadataTextArea;
 
+	public DomainPopup(WebDriver driver) {
+		super(driver);
+		PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
+
+		signatureCertSelect = new GenericSelect(driver, signatureCertSelectContainer);
+		smlClientAliasSelect = new GenericSelect(driver, smlClientAliasSelectContainer);
+
+
+	}
 
 	public void clickOK() {
 		waitForElementToBeClickable(okBtn).click();
@@ -68,9 +60,11 @@ public class DomainPopup extends PageComponent {
 		waitForElementToBeGone(cancelBtn);
 	}
 
-
 	public boolean isLoaded() {
 		log.info("checking if domain popup is properly loaded");
+
+		waitForElementToBeEnabled(okBtn);
+
 		return isVisible(okBtn)
 				&& isVisible(domainCodeInput)
 				&& isVisible(smlDomainInput)
@@ -147,29 +141,12 @@ public class DomainPopup extends PageComponent {
 		}
 
 	}
-	public String domainCode63CharValidationGetErrMsg() {
-		try {
-			waitForElementToBeVisible(domainCodeValidationError);
-			return domainCodeValidationError.getAttribute("value");
-		} catch (Exception e) {
-		}
-		return null;
-	}
-
-	public String getSmlSmpId63CharValidationMsg() {
-		WebElement invalidSmlSmpIdErrorMsg = driver.findElement(By.cssSelector("div.mat-form-field-infix > div.ng-star-inserted"));
-		try {
-			waitForElementToBeVisible(invalidSmlSmpIdErrorMsg);
-			return invalidSmlSmpIdErrorMsg.getAttribute("value");
-		} catch (Exception e) {
-		}
-		return null;
-	}
 
-	public String xmlFieldVALUE(){
-		log.info("value is "+metadataTextArea.getAttribute("value"));
+	public String xmlFieldVALUE() {
+		log.info("value is " + metadataTextArea.getAttribute("value"));
 		return metadataTextArea.getAttribute("value");
 	}
+
 	public void clearAndFillDomainCodeInput(String domainCode) {
 		log.info("clear and fill domain code data");
 		clearAndFillInput(domainCodeInput, domainCode);
@@ -196,4 +173,21 @@ public class DomainPopup extends PageComponent {
 	}
 
 
+	public String domainCode63CharValidationGetErrMsg() {
+		try {
+			return waitForElementToBeVisible(domainCodeValidationError).getText().trim();
+		} catch (Exception e) {
+		}
+		return null;
+	}
+
+	public String getSmlSmpId63CharValidationMsg() {
+		try {
+			return waitForElementToBeVisible(smlSmpIdValidationError).getText().trim();
+		} catch (Exception e) {
+		}
+		return null;
+	}
+
+
 }
diff --git a/smp-ui-tests/src/main/java/pages/password/PasswordChangepopup.java b/smp-ui-tests/src/main/java/pages/password/PasswordChangepopup.java
index f666d74fdb0c6aa465c68f82cfdfbdd9805996bc..cfb1e5e5a53213f150758d3441c5aaf98bcf1a4d 100644
--- a/smp-ui-tests/src/main/java/pages/password/PasswordChangepopup.java
+++ b/smp-ui-tests/src/main/java/pages/password/PasswordChangepopup.java
@@ -14,126 +14,119 @@ import utils.PROPERTIES;
 public class PasswordChangepopup extends PageComponent {
 
 
-    @FindBy(id = "username_id")
-    WebElement userNameInput;
-    @FindBy(id = "emailAddress_id")
-    WebElement emailInput;
-    @FindBy(id = "np_id")
-    WebElement newPasswordInput;
-    @FindBy(id = "cnp_id")
-    WebElement confirmationInput;
-    /* @FindBy(css = "input#cp_id")
-     WebElement adminPassInput;
+	@FindBy(id = "username_id")
+	WebElement userNameInput;
+	@FindBy(id = "emailAddress_id")
+	WebElement emailInput;
+	@FindBy(id = "np_id")
+	WebElement newPasswordInput;
+	@FindBy(id = "cnp_id")
+	WebElement confirmationInput;
+	/* @FindBy(css = "input#cp_id")
+	 WebElement adminPassInput;
 */
-    @FindBy(xpath = "//input[@data-placeholder='Admin password for user [system]']")
-    WebElement adminPassInput;
-    @FindBy(xpath = "//input[@data-placeholder='Current password']")
-    WebElement currentPassInput;
-    @FindBy(css = "mat-form-field.username> div > div.mat-form-field-flex > div > div")
-    WebElement usernameValidationError;
-    @FindBy(css = "mat-form-field.password > div > div.mat-form-field-flex > div > div")
-    WebElement passValidationError;
-    @FindBy(css = "mat-form-field.password-confirmation > div > div.mat-form-field-flex > div > div")
-    WebElement passConfirmationValidationError;
-    @FindBy(css = ".mat-form-field-infix > div.has-error")
-    WebElement passMatchValidationError;
-    @FindBy(css = "mat-dialog-actions button:nth-child(1)")
-    WebElement okBtn;
-    @FindBy(css = "mat-dialog-actions button:nth-child(2)")
-    WebElement cancelBtn;
-    @FindBy(css = "#changePassword_id")
-    WebElement changePassword;
-    @FindBy(css = "smp-password-change-dialog mat-dialog-actions button:nth-child(1)")
-    WebElement changedPassword;
-    @FindBy(css = "#closebuttondialog_id")
-    WebElement passChangedClose;
-    @FindBy(css = "smp-password-change-dialog mat-dialog-actions button:nth-child(2)")
-    WebElement passwordDialogClose;
-
-    public PasswordChangepopup(WebDriver driver) {
-        super(driver);
-        PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
-    }
-
-    public void clickOK() {
-        log.info("click OK");
-        waitForElementToBeClickable(okBtn);
-        okBtn.click();
-        waitForElementToBeGone(okBtn);
-    }
-
-    public void clickCancel() {
-        log.info("click cancel");
-        waitForElementToBeClickable(cancelBtn);
-        cancelBtn.click();
-        waitForElementToBeGone(cancelBtn);
-    }
-
-    public void clickChangePassword() {
-        log.info("click change password");
-        waitForElementToBeClickable(changePassword);
-        changePassword.click();
-        //waitForElementToBeGone(changePassword);
-    }
-
-    public SearchPage clickCloseAfterChangedPassForLoggedUser() {
-        log.info("click close after change password");
-        waitForElementToBeClickable(passChangedClose);
-        passChangedClose.click();
-        waitForElementToBeGone(passChangedClose);
-        return new SearchPage(driver);
-    }
-
-    public void clickCloseAfterChangedPass() {
-        log.info("click close after change password");
-
-        waitForElementToBeClickable(passChangedClose);
-        passChangedClose.click();
-        waitForElementToBeGone(passChangedClose);
-
-    }
-
-    public void setOrChangePassword(String adminPass, String newPass, String confirmPass) {
-
-        clearAndFillInput(adminPassInput, adminPass);
-        clearAndFillInput(newPasswordInput, newPass);
-        clearAndFillInput(confirmationInput, confirmPass);
-    }
-
-    public void fillDataForLoggedUser(String currentPass, String newPass, String confirmPass) {
-        clearAndFillInput(currentPassInput, currentPass);
-        clearAndFillInput(newPasswordInput, newPass);
-        clearAndFillInput(confirmationInput, confirmPass);
-    }
-
-    public ConfirmationDialog clickChangedPassword() {
-        log.info("click changed password");
-        waitForElementToBeClickable(changedPassword);
-        changedPassword.click();
-        waitForElementToBeGone(changedPassword);
-        return new ConfirmationDialog(driver);
-    }
-
-    public SearchPage clickClosePasswordDialog() {
-        passwordDialogClose.click();
-        waitForElementToBeGone(passwordDialogClose);
-        return new SearchPage(driver);
-    }
-
-    public boolean isCurrentPasswordInputEnable() {
-        boolean bool = currentPassInput.isEnabled();
-        return bool;
-    }
-
-    public boolean isNewPasswordInputEnable() {
-        boolean bool = newPasswordInput.isEnabled();
-        return bool;
-    }
-
-    public boolean isConfirmPasswordInputEnable() {
-        boolean bool = confirmationInput.isEnabled();
-        return bool;
-    }
+	@FindBy(xpath = "//input[@data-placeholder='Admin password for user [system]']")
+	WebElement adminPassInput;
+	@FindBy(xpath = "//input[@data-placeholder='Current password']")
+	WebElement currentPassInput;
+	@FindBy(css = "mat-form-field.username> div > div.mat-form-field-flex > div > div")
+	WebElement usernameValidationError;
+	@FindBy(css = "mat-form-field.password > div > div.mat-form-field-flex > div > div")
+	WebElement passValidationError;
+	@FindBy(css = "mat-form-field.password-confirmation > div > div.mat-form-field-flex > div > div")
+	WebElement passConfirmationValidationError;
+	@FindBy(css = ".mat-form-field-infix > div.has-error")
+	WebElement passMatchValidationError;
+	@FindBy(css = "mat-dialog-actions button:nth-child(1)")
+	WebElement okBtn;
+	@FindBy(css = "mat-dialog-actions button:nth-child(2)")
+	WebElement cancelBtn;
+
+	@FindBy(css = "smp-password-change-dialog mat-dialog-actions button:nth-child(1)")
+	WebElement changedPassword;
+	@FindBy(css = "#closebuttondialog_id")
+	WebElement passChangedClose;
+	@FindBy(css = "smp-password-change-dialog mat-dialog-actions button:nth-child(2)")
+	WebElement passwordDialogClose;
+
+	public PasswordChangepopup(WebDriver driver) {
+		super(driver);
+		PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
+	}
+
+	public void clickOK() {
+		log.info("click OK");
+		waitForElementToBeClickable(okBtn);
+		okBtn.click();
+		waitForElementToBeGone(okBtn);
+	}
+
+	public void clickCancel() {
+		log.info("click cancel");
+		waitForElementToBeClickable(cancelBtn);
+		cancelBtn.click();
+		waitForElementToBeGone(cancelBtn);
+	}
+
+
+	public SearchPage clickCloseAfterChangedPassForLoggedUser() {
+		log.info("click close after change password");
+		waitForElementToBeClickable(passChangedClose);
+		passChangedClose.click();
+		waitForElementToBeGone(passChangedClose);
+		return new SearchPage(driver);
+	}
+
+	public void clickCloseAfterChangedPass() {
+		log.info("click close after change password");
+
+		waitForElementToBeClickable(passChangedClose);
+		passChangedClose.click();
+		waitForElementToBeGone(passChangedClose);
+
+	}
+
+	public void setOrChangePassword(String adminPass, String newPass, String confirmPass) {
+
+		clearAndFillInput(adminPassInput, adminPass);
+		clearAndFillInput(newPasswordInput, newPass);
+		clearAndFillInput(confirmationInput, confirmPass);
+	}
+
+	public void fillDataForLoggedUser(String currentPass, String newPass, String confirmPass) {
+		clearAndFillInput(currentPassInput, currentPass);
+		clearAndFillInput(newPasswordInput, newPass);
+		clearAndFillInput(confirmationInput, confirmPass);
+	}
+
+	public ConfirmationDialog clickChangedPassword() {
+		log.info("click changed password");
+		waitForElementToBeClickable(changedPassword);
+		changedPassword.click();
+		waitForElementToBeGone(changedPassword);
+		return new ConfirmationDialog(driver);
+	}
+
+	public SearchPage clickClosePasswordDialog() {
+		passwordDialogClose.click();
+		waitForElementToBeGone(passwordDialogClose);
+		return new SearchPage(driver);
+	}
+
+	public boolean isCurrentPasswordInputEnable() {
+		boolean bool = currentPassInput.isEnabled();
+		return bool;
+	}
+
+	public boolean isNewPasswordInputEnable() {
+		boolean bool = newPasswordInput.isEnabled();
+		return bool;
+	}
+
+	public boolean isConfirmPasswordInputEnable() {
+		boolean bool = confirmationInput.isEnabled();
+		return bool;
+	}
 
 }
 
diff --git a/smp-ui-tests/src/main/java/pages/service_groups/edit/AccordionSection.java b/smp-ui-tests/src/main/java/pages/service_groups/edit/AccordionSection.java
index 3135ddcd03d599c7f9501feb91831db0aea6e62c..e19087bee8395544605eb436afcfde0808b2ac3a 100644
--- a/smp-ui-tests/src/main/java/pages/service_groups/edit/AccordionSection.java
+++ b/smp-ui-tests/src/main/java/pages/service_groups/edit/AccordionSection.java
@@ -5,7 +5,6 @@ import org.openqa.selenium.WebElement;
 import org.openqa.selenium.support.FindBy;
 import org.openqa.selenium.support.PageFactory;
 import org.openqa.selenium.support.pagefactory.AjaxElementLocatorFactory;
-import org.openqa.selenium.support.pagefactory.DefaultElementLocatorFactory;
 import pages.components.baseComponents.PageComponent;
 import utils.PROPERTIES;
 
@@ -13,24 +12,20 @@ import java.util.ArrayList;
 import java.util.List;
 
 public class AccordionSection extends PageComponent {
-	public AccordionSection(WebDriver driver, WebElement container) {
-		super(driver);
-		PageFactory.initElements(new AjaxElementLocatorFactory(container, PROPERTIES.TIMEOUT), this);
-	}
-
 	@FindBy(css = "span.mat-content > mat-panel-title")
 	WebElement title;
-
 	@FindBy(css = "span.mat-content > mat-panel-description > div")
 	WebElement selectCount;
-
-
 	@FindBy(css = ".mat-expansion-indicator")
 	WebElement expandButton;
-
 	@FindBy(tagName = "mat-list-option")
 	List<WebElement> options;
 
+	public AccordionSection(WebDriver driver, WebElement container) {
+		super(driver);
+		PageFactory.initElements(new AjaxElementLocatorFactory(container, PROPERTIES.TIMEOUT), this);
+	}
+
 	public boolean isExpanded() {
 		log.info("check if expanded");
 		return isVisible(options.get(0));
@@ -85,15 +80,13 @@ public class AccordionSection extends PageComponent {
 		if (option.getAttribute("aria-selected").contains("true")) {
 			return;
 		}
-
-		option.click();
+		waitForElementToBeClickable(option).click();
 		return;
 	}
 
 	public boolean optionsEnabled() {
 		log.info("checking if options are enabled");
 		waitForElementToBeVisible(title);
-//		waitForElementToBeVisible(options.get(0));
 		boolean isDisabled = options.get(0).getAttribute("aria-disabled").equalsIgnoreCase("true");
 		return !isDisabled;
 	}
diff --git a/smp-ui-tests/src/main/java/pages/service_groups/edit/EditPage.java b/smp-ui-tests/src/main/java/pages/service_groups/edit/EditPage.java
index 2681efd43e02c296f72cb6577ac64a8f0d09f4e6..e9a49660918dbbcd6d3e9c5e170290152f1c901e 100644
--- a/smp-ui-tests/src/main/java/pages/service_groups/edit/EditPage.java
+++ b/smp-ui-tests/src/main/java/pages/service_groups/edit/EditPage.java
@@ -146,6 +146,8 @@ public class EditPage extends SMPPage {
 		log.info("saving..");
 		waitForElementToBeClickable(saveButton).click();
 		new ConfirmationDialog(driver).confirm();
+
+		waitForRowsToLoad();
 	}
 
 }
diff --git a/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceGroupPopup.java b/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceGroupPopup.java
index 18f711888695fac98a6c28de97b92b9fa4b9dabc..27bbc475f1e01d908a3ded346a1ad28e1d52fd49 100644
--- a/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceGroupPopup.java
+++ b/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceGroupPopup.java
@@ -43,10 +43,10 @@ public class ServiceGroupPopup extends PageComponent {
 		try {
 			ownersPanel = new AccordionSection(driver, ownersPanelContainer);
 		} catch (Exception e) {
-
+			log.error("Owners panel is not present");
 		}
 		domainsPanel = new AccordionSection(driver, domainsPanelContainer);
-
+		waitForElementToBeVisible(okButton);
 	}
 
 	public boolean isOKButtonPresent() {
diff --git a/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceMetadataPopup.java b/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceMetadataPopup.java
index b3998e7587e09a09395220ea5335463d273d316f..7d1e051926f3000d5a02417fefc2522c6e62cf1d 100644
--- a/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceMetadataPopup.java
+++ b/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceMetadataPopup.java
@@ -10,74 +10,62 @@ import pages.components.baseComponents.PageComponent;
 import utils.PROPERTIES;
 
 public class ServiceMetadataPopup extends PageComponent {
-	public ServiceMetadataPopup(WebDriver driver) {
-		super(driver);
-
-		PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
-
-		domainSelect = new GenericSelect(driver, domainSelectContainer);
-	}
-
 	@FindBy(css = "mat-dialog-actions > button:nth-child(1)")
 	private WebElement okButton;
-
 	@FindBy(css = "mat-dialog-actions > button:nth-child(2)")
 	private WebElement cancelButton;
-
 	@FindBy(css = "mat-card-content > mat-toolbar > mat-toolbar-row > button:nth-child(1)")
 	private WebElement clearButton;
 	@FindBy(css = "mat-card-content > mat-toolbar > mat-toolbar-row > button:nth-child(2)")
 	private WebElement generateXMLButton;
 	@FindBy(css = "mat-card-content > mat-toolbar > mat-toolbar-row > button:nth-child(4)")
 	private WebElement validateButton;
-
 	@FindBy(css = "#MetadataTextArea")
 	private WebElement metadataTextArea;
-
 	@FindBy(css = "#participanSchema_id")
 	private WebElement participantSchemaInput;
-
 	@FindBy(css = "#participantIdentifier_id")
 	private WebElement participantIdentifierInput;
-
 	@FindBy(css = "#documentScheme_id")
 	private WebElement documentSchemeInput;
-
 	@FindBy(css = "#documentIdentifier_id")
 	private WebElement documentIdentifierInput;
-
 	@FindBy(xpath = "//span[text() ='Metadata wizard']")
 	private WebElement metadataWizardBtn;
-
 	@FindBy(css = "mat-card-content > div > div.ng-star-inserted:nth-child(2)")
 	private WebElement xmlValidationMsg;
-
 	@FindBy(css = "mat-dialog-content #domain_id")
 	private WebElement domainSelectContainer;
 	private GenericSelect domainSelect;
 
+	public ServiceMetadataPopup(WebDriver driver) {
+		super(driver);
 
-	public EditPage clickOK(){
-		/*waitForElementToBeClickable(okButton);
-		okButton.click();
-		waitForElementToBeGone(okButton);
-		return new EditPage(driver);*/
-		waitForElementToBeVisible(okButton);
+		PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
+
+		waitForElementToBeVisible(domainSelectContainer);
+		domainSelect = new GenericSelect(driver, domainSelectContainer);
+	}
+
+	public EditPage clickOK() {
+		waitForElementToBeClickable(okButton);
 		okButton.click();
 		return new EditPage(driver);
 	}
-	public boolean isOKBtnEnabled(){
+
+	public boolean isOKBtnEnabled() {
 		return okButton.isEnabled();
 	}
-	public void fillDocIdAndDocIdScheme(String docID, String docScheme){
+
+	public void fillDocIdAndDocIdScheme(String docID, String docScheme) {
 		waitForElementToBeVisible(documentIdentifierInput);
 		clearAndFillInput(documentIdentifierInput, docID);
 		clearAndFillInput(documentSchemeInput, docScheme);
 
 	}
 
-	public String xmlFieldVALUE(){
-		log.info("value is "+metadataTextArea.getAttribute("value"));
+	public String xmlFieldVALUE() {
+		log.info("value is " + metadataTextArea.getAttribute("value"));
 		return metadataTextArea.getAttribute("value");
 	}
 
@@ -91,32 +79,37 @@ public class ServiceMetadataPopup extends PageComponent {
 		generateXMLButton.click();
 
 	}
-	public String captureTextOfMetadataTextArea(){
+
+	public String captureTextOfMetadataTextArea() {
 		return metadataTextArea.getText();
 	}
 
-	public void clickValidateBtn(){
+	public void clickValidateBtn() {
 		waitForElementToBeClickable(validateButton).click();
 	}
-	public void clickGenerateXMLBtn(){
+
+	public void clickGenerateXMLBtn() {
 		waitForElementToBeClickable(generateXMLButton).click();
 	}
-	public void clickClearBtn(){
+
+	public void clickClearBtn() {
 		waitForElementToBeClickable(clearButton).click();
 	}
-	public String getXMLValidationMessage(){
+
+	public String getXMLValidationMessage() {
 		return xmlValidationMsg.getText();
 	}
-	public void addTextToMetadataTextArea(String generator){
+
+	public void addTextToMetadataTextArea(String generator) {
 		metadataTextArea.sendKeys(generator);
 
 	}
 
-	public String docIDFieldValue(){
+	public String docIDFieldValue() {
 		return documentIdentifierInput.getAttribute("value");
 	}
 
-	public String docIDSchemeFieldValue(){
+	public String docIDSchemeFieldValue() {
 		return documentSchemeInput.getAttribute("value");
 	}
 
@@ -153,9 +146,8 @@ public class ServiceMetadataPopup extends PageComponent {
 		return isEnabled(documentIdentifierInput);
 	}
 
-	public ServiceMetadataWizardPopup clickMetadataWizard(){
-		waitForElementToBeClickable(metadataWizardBtn);
-		metadataWizardBtn.click();
+	public ServiceMetadataWizardPopup clickMetadataWizard() {
+		waitForElementToBeClickable(metadataWizardBtn).click();
 		return new ServiceMetadataWizardPopup(driver);
 
 	}
diff --git a/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceMetadataWizardPopup.java b/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceMetadataWizardPopup.java
index 7bc5a30921f212f7f0cefa3c1b951b2d44ee2cde..96a1948476d2ccf21e06489991db895c28193fe0 100644
--- a/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceMetadataWizardPopup.java
+++ b/smp-ui-tests/src/main/java/pages/service_groups/edit/ServiceMetadataWizardPopup.java
@@ -11,92 +11,83 @@ import utils.PROPERTIES;
 import java.io.File;
 
 public class ServiceMetadataWizardPopup extends PageComponent {
-    public ServiceMetadataWizardPopup(WebDriver driver) {
-        super(driver);
-        PageFactory.initElements( new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
-    }
-    @FindBy(css = "#documentIdentifierScheme_id")
-    private WebElement docIdSchemeField;
-
-    @FindBy(css = "#processSchema_id")
-    private WebElement processSchemeField;
-
-    @FindBy(css = "service-metadata-wizard-dialog input#documentIdentifier_id")
-    private WebElement docIdField;
-
-    @FindBy(css = "#processidentifier_id")
-    private WebElement processIdField;
-
-    @FindBy(css = "#endpointUrl_id")
-    private WebElement endpointUrl;
-
-    @FindBy(css = "#transportProfiler_id")
-    private WebElement transportProfileField;
-
-    @FindBy(css = "service-metadata-wizard-dialog > mat-dialog-actions > button[type='button']:nth-child(1)")
-    private WebElement okButton;
-
-    @FindBy(css = "service-metadata-wizard-dialog > mat-dialog-actions > button[type='button']:nth-child(2)")
-    private WebElement cancelButton;
-
-    @FindBy(css="input#certificate-file-upload")
-    private WebElement uploadCertificateBtn;
-
-
-    @FindBy(css="#metadatacertificate_id")
-    private WebElement certificateDescriptionBox;
-
-
-    public String docIDFieldValue(){
-       return docIdField.getAttribute("value");
-    }
-
-    public String docIDSchemeFieldValue(){
-        return docIdSchemeField.getAttribute("value");
-    }
-
-    public String transportProfileFieldContent(){
-        return transportProfileField.getAttribute("value");
-    }
-
-
-    public void clickUploadCertificate(){
-        waitForElementToBeVisible(uploadCertificateBtn);
-        uploadCertificateBtn.click();
-    }
-
-    public void fillCerificateBox(String generator){
-        certificateDescriptionBox.sendKeys(generator);
-    }
-
-    public void uploadCertificate(String relativePath){
-        waitForElementToBeVisible(uploadCertificateBtn);
-        uploadCertificateBtn.click();
-        String path = new File(relativePath).getAbsolutePath();
-        uploadCertificateBtn.sendKeys(path);
-    }
-
-    public boolean isEnableOkBtn(){
-        waitForElementToBeVisible(okButton);
-        return okButton.isEnabled();
-    }
-
-    public ServiceMetadataPopup clickOK(){
-        waitForElementToBeVisible(okButton);
-        okButton.click();
-        return new ServiceMetadataPopup(driver);
-    }
-
-    public void fillForm(String docID,String docScheme,String processID,String processScheme,String transportProfile,String url){
-        waitForElementToBeVisible(docIdField);
-
-        clearAndFillInput(docIdField, docID);
-        clearAndFillInput(docIdSchemeField, docScheme);
-        clearAndFillInput(processIdField, processID);
-        clearAndFillInput(processSchemeField, processScheme);
-        clearAndFillInput(transportProfileField, transportProfile);
-        clearAndFillInput(endpointUrl,url);
-
-
-    }
+	@FindBy(css = "#documentIdentifierScheme_id")
+	private WebElement docIdSchemeField;
+	@FindBy(css = "#processSchema_id")
+	private WebElement processSchemeField;
+	@FindBy(css = "service-metadata-wizard-dialog input#documentIdentifier_id")
+	private WebElement docIdField;
+	@FindBy(css = "#processidentifier_id")
+	private WebElement processIdField;
+	@FindBy(css = "#endpointUrl_id")
+	private WebElement endpointUrl;
+	@FindBy(css = "#transportProfiler_id")
+	private WebElement transportProfileField;
+	@FindBy(css = "service-metadata-wizard-dialog > mat-dialog-actions > button[type='button']:nth-child(1)")
+	private WebElement okButton;
+	@FindBy(css = "service-metadata-wizard-dialog > mat-dialog-actions > button[type='button']:nth-child(2)")
+	private WebElement cancelButton;
+	@FindBy(css = "input#certificate-file-upload")
+	private WebElement uploadCertificateBtn;
+	@FindBy(css = "#metadatacertificate_id")
+	private WebElement certificateDescriptionBox;
+
+
+	public ServiceMetadataWizardPopup(WebDriver driver) {
+		super(driver);
+		PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this);
+	}
+
+	public String docIDFieldValue() {
+		return docIdField.getAttribute("value");
+	}
+
+	public String docIDSchemeFieldValue() {
+		return docIdSchemeField.getAttribute("value");
+	}
+
+	public String transportProfileFieldContent() {
+		return transportProfileField.getAttribute("value");
+	}
+
+
+	public void clickUploadCertificate() {
+		waitForElementToBeVisible(uploadCertificateBtn);
+		uploadCertificateBtn.click();
+	}
+
+	public void fillCerificateBox(String generator) {
+		certificateDescriptionBox.sendKeys(generator);
+	}
+
+	public void uploadCertificate(String relativePath) {
+		waitForElementToBeVisible(uploadCertificateBtn);
+		uploadCertificateBtn.click();
+		String path = new File(relativePath).getAbsolutePath();
+		uploadCertificateBtn.sendKeys(path);
+	}
+
+	public boolean isEnabledOkBtn() {
+		waitForElementToBeEnabled(okButton);
+		return okButton.isEnabled();
+	}
+
+	public ServiceMetadataPopup clickOK() {
+		waitForElementToBeVisible(okButton);
+		okButton.click();
+		return new ServiceMetadataPopup(driver);
+	}
+
+	public void fillForm(String docID, String docScheme, String processID, String processScheme, String transportProfile, String url) {
+		waitForElementToBeVisible(docIdField);
+
+		clearAndFillInput(docIdField, docID);
+		clearAndFillInput(docIdSchemeField, docScheme);
+		clearAndFillInput(processIdField, processID);
+		clearAndFillInput(processSchemeField, processScheme);
+		clearAndFillInput(transportProfileField, transportProfile);
+		clearAndFillInput(endpointUrl, url);
+
+
+	}
 }
diff --git a/smp-ui-tests/src/main/java/pages/users/UserPopup.java b/smp-ui-tests/src/main/java/pages/users/UserPopup.java
index 4049bb5e945c623caeb35b5da3f95cb574ecab0d..af40d3f1e2d0a577628ef3272c0fb1c634f53aff 100644
--- a/smp-ui-tests/src/main/java/pages/users/UserPopup.java
+++ b/smp-ui-tests/src/main/java/pages/users/UserPopup.java
@@ -10,279 +10,282 @@ import pages.components.GenericSelect;
 import pages.components.baseComponents.PageComponent;
 
 public class UserPopup extends PageComponent {
-    public GenericSelect rolesSelect;
-    @FindBy(id = "userDetailsToggle_id")
-    WebElement userDetailsToggle;
+	public GenericSelect rolesSelect;
+	@FindBy(id = "userDetailsToggle_id")
+	WebElement userDetailsToggle;
 
-    @FindBy(css = "#active_id > label > div > div")
-    WebElement activeToggle;
+	@FindBy(css = "#active_id > label > div > div")
+	WebElement activeToggle;
 
-    @FindBy(id = "username_id")
-    WebElement userNameInput;
+	@FindBy(id = "username_id")
+	WebElement userNameInput;
 
-    @FindBy(id = "emailAddress_id")
-    WebElement emailInput;
+	@FindBy(id = "emailAddress_id")
+	WebElement emailInput;
 
-    @FindBy(id = "np_id")
-    WebElement newPasswordInput;
+	@FindBy(id = "np_id")
+	WebElement newPasswordInput;
 
-    @SuppressWarnings("SpellCheckingInspection")
-    @FindBy(id = "cnp_id")
-    WebElement confirmationInput;
+	@SuppressWarnings("SpellCheckingInspection")
+	@FindBy(id = "cnp_id")
+	WebElement confirmationInput;
 
-    @FindBy(css = "input#cp_id")
-    WebElement adminPassInput;
+	@FindBy(css = "input#cp_id")
+	WebElement adminPassInput;
 
-    @FindBy(css = "mat-form-field.username> div > div.mat-form-field-flex > div > div")
-    WebElement usernameValidationError;
+	@FindBy(css = "mat-form-field.username> div > div.mat-form-field-flex > div > div")
+	WebElement usernameValidationError;
 
-    @FindBy(css = "smp-password-change-dialog .password-panel mat-form-field:nth-child(2) .mat-form-field-subscript-wrapper mat-error")
-    WebElement passValidationError;
+	@FindBy(css = "smp-password-change-dialog .password-panel mat-form-field:nth-child(2) .mat-form-field-subscript-wrapper mat-error")
+	WebElement passValidationError;
 
-    @FindBy(css = "mat-form-field.password-confirmation > div > div.mat-form-field-flex > div > div")
-    WebElement passConfirmationValidationError;
+	@FindBy(css = "mat-form-field.password-confirmation > div > div.mat-form-field-flex > div > div")
+	WebElement passConfirmationValidationError;
 
-    @FindBy(css = ".ng-trigger.ng-trigger-transitionMessages.ng-star-inserted > mat-error")
-    WebElement passMatchValidationError;
+	@FindBy(css = ".ng-trigger.ng-trigger-transitionMessages.ng-star-inserted > mat-error")
+	WebElement passMatchValidationError;
 
-    @FindBy(css = "mat-dialog-actions button:nth-child(1)")
-    WebElement okBtn;
+	@FindBy(css = "mat-dialog-actions button:nth-child(1)")
+	WebElement okBtn;
 
-    @FindBy(css = "mat-dialog-actions button:nth-child(2)")
-    WebElement cancelBtn;
+	@FindBy(css = "mat-dialog-actions button:nth-child(2)")
+	WebElement cancelBtn;
 
-    @FindBy(css = "#changePassword_id")
-    WebElement changePassword;
+	@FindBy(css = "#changePassword_id")
+	WebElement changePassword;
 
-    @FindBy(css = "smp-password-change-dialog mat-dialog-actions button:nth-child(1)")
-    WebElement changedPassword;
+	@FindBy(css = "smp-password-change-dialog mat-dialog-actions button:nth-child(1)")
+	WebElement changedPassword;
 
-    @FindBy(css = "#closebuttondialog_id")
-    WebElement passChangedClose;
+	@FindBy(css = "#closebuttondialog_id")
+	WebElement passChangedClose;
 
-    @FindBy(css = "smp-password-change-dialog mat-dialog-actions button:nth-child(2)")
-    WebElement passwordDialogClose;
+	@FindBy(css = "smp-password-change-dialog mat-dialog-actions button:nth-child(2)")
+	WebElement passwordDialogClose;
 
-    @FindBy(css = "#role_id")
-    WebElement rolesSelectContainer;
+	@FindBy(css = "#role_id")
+	WebElement rolesSelectContainer;
 
-    @FindBy(xpath = "//span[text()='Regenerate access token']")
-    WebElement regenarateAccessTokenBtn;
+	@FindBy(xpath = "//span[text()='Regenerate access token']")
+	WebElement regenarateAccessTokenBtn;
 
-    @FindBy(css = "label > button.mat-focus-indicator.mat-flat-button.mat-button-base.mat-primary")
-    WebElement importBtn;
+	@FindBy(css = "label > button.mat-focus-indicator.mat-flat-button.mat-button-base.mat-primary")
+	WebElement importBtn;
 
-    @FindBy(xpath = "//span[text()='Show details']")
-    WebElement showDetailsBtn;
+	@FindBy(xpath = "//span[text()='Show details']")
+	WebElement showDetailsBtn;
 
-    @FindBy(xpath = "//span[text()='Clear']")
-    WebElement clearBtn;
+	@FindBy(xpath = "//span[text()='Clear']")
+	WebElement clearBtn;
 
-    @FindBy(css = ".has-error.ng-star-inserted")
-    WebElement emailValidationError;
+	@FindBy(css = ".has-error.ng-star-inserted")
+	WebElement emailValidationError;
 
 
-    public UserPopup(WebDriver driver) {
-        super(driver);
-        PageFactory.initElements(driver, this);
-        rolesSelect = new GenericSelect(driver, rolesSelectContainer);
-    }
-
-    public boolean isAdminPasswordInputEnable() {
-        boolean bool = adminPassInput.isEnabled();
-        return bool;
-    }
+	public UserPopup(WebDriver driver) {
+		super(driver);
+		PageFactory.initElements(driver, this);
+		rolesSelect = new GenericSelect(driver, rolesSelectContainer);
+	}
+
+	public boolean isAdminPasswordInputEnable() {
+		boolean bool = adminPassInput.isEnabled();
+		return bool;
+	}
 
-    public boolean isNewPasswordInputEnable() {
-        boolean bool = newPasswordInput.isEnabled();
-        return bool;
-    }
-
-    public boolean isConfirmPasswordInputEnable() {
-        boolean bool = confirmationInput.isEnabled();
-        return bool;
-    }
-
-
-    public boolean isOKButtonActive() {
-        return isEnabled(okBtn);
-    }
+	public boolean isNewPasswordInputEnable() {
+		boolean bool = newPasswordInput.isEnabled();
+		return bool;
+	}
+
+	public boolean isConfirmPasswordInputEnable() {
+		boolean bool = confirmationInput.isEnabled();
+		return bool;
+	}
+
+
+	public boolean isOKButtonActive() {
+		return isEnabled(okBtn);
+	}
 
-    public boolean isChangedPasswordActive() {
-        return isEnabled(passChangedClose);
-    }
-
-    public boolean isChangePasswordButtonActive() {
-        return isEnabled(changedPassword);
-    }
-
-    public boolean isCancelButtonActive() {
-        return isEnabled(cancelBtn);
-    }
-
-    public void fillData(String user, String email, String role, String password, String confirmation) {
-        clearAndFillInput(userNameInput, user);
-        clearAndFillInput(emailInput, email);
-        clearAndFillInput(newPasswordInput, password);
-        clearAndFillInput(confirmationInput, confirmation);
-
-        GenericSelect rolesSelect = new GenericSelect(driver, rolesSelectContainer);
-        rolesSelect.selectOptionByText(role);
-
-    }
-
-    public void clickOK() {
-        log.info("click OK");
-        waitForElementToBeClickable(okBtn);
-        okBtn.click();
-        waitForElementToBeGone(okBtn);
-    }
-
-    public void clickCancel() {
-        log.info("click cancel");
-        waitForElementToBeClickable(cancelBtn);
-        cancelBtn.click();
-        waitForElementToBeGone(cancelBtn);
-    }
-
-
-    public void clickUserDetailsToggle() {
-        log.info("details toggle");
-        waitForElementToBeClickable(userDetailsToggle).click();
-        waitForElementToBeEnabled(userNameInput);
-    }
-
-    public void fillDetailsForm(String username,String email) {
-        clearAndFillInput(userNameInput, username);
-        clearAndFillInput(emailInput,email);
-    }
-
-    public void clickSetOrChangePassword() {
-        log.info("click change password");
-        waitForElementToBeClickable(changePassword);
-        waitForXMillis(500);
-        changePassword.click();
-        waitForXMillis(500);
-    }
-
-    public void clickCloseAfterChangedPass() {
-        log.info("click close after change password");
-        try {
-            Thread.sleep(10000);
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        waitForElementToBeClickable(passChangedClose);
-        log.info("ab");
-        passChangedClose.click();
-        log.info("bd");
-        waitForElementToBeGone(passChangedClose);
-        log.info("cd");
-    }
-
-    public ConfirmationDialog clickChangedPassword() {
-        log.info("click changed password");
-        waitForElementToBeClickable(changedPassword);
-        waitForXMillis(500);
-        changedPassword.click();
-        waitForElementToBeGone(changedPassword);
-        return new ConfirmationDialog(driver);
-    }
-
-    public boolean isPopupChangedPasswordEnabled() {
-        return changedPassword.isEnabled();
-    }
-
-    public void setOrChangePassword(String adminPass, String newPass, String confirmPass) {
-
-        clearAndFillInput(adminPassInput, adminPass);
-        clearAndFillInput(newPasswordInput, newPass);
-        clearAndFillInput(confirmationInput, confirmPass);
-    }
-
-    public void clickClosePasswordDialog() {
-        passwordDialogClose.click();
-        waitForElementToBeGone(passwordDialogClose);
-    }
-
-
-    public String getUsernameValidationError() {
-        try {
-            waitForElementToBeVisible(usernameValidationError);
-            return usernameValidationError.getText();
-        } catch (Exception e) {
-        }
-        return null;
-    }
-
-    public String userEmailValidationGetErrMsg(){
-        try {
-            waitForElementToBeVisible(emailValidationError);
-            return emailValidationError.getText();
-        } catch (Exception e) {
-        }
-        return null;
-    }
-
-    public String getPassValidationError() {
-        try {
-            waitForElementToBeVisible(passValidationError);
-            return passValidationError.getText();
-        } catch (Exception e) {
-        }
-        return null;
-    }
-
-    public String getConfirmationPassValidationError() {
-
-        try {
-            waitForElementToBeVisible(passConfirmationValidationError);
-            return passConfirmationValidationError.getText();
-        } catch (Exception e) {
-        }
-        return null;
-    }
-
-    public boolean isDuplicateUserNameErrorMsgDisPlayed() {
-        try {
-            return driver.findElement(By.cssSelector("mat-form-field.username > div .has-error")).isDisplayed();
-        } catch (Exception e) {
-            e.printStackTrace();
-            return false;
-        }
-    }
-
-    public String getPassDontMatchValidationMsg() {
-        //WebElement passwordUnmatchingMsg = driver.findElement(By.cssSelector(".ng-trigger.ng-trigger-transitionMessages.ng-star-inserted > mat-error"));
-        return passMatchValidationError.getText();
-        //".mat-form-field-infix > div.has-error"
-    }
-
-    public boolean isUsernameFieldEnabled(){
-        return isEnabled(userNameInput);
-    }
-
-    public boolean isEmailFieldEnabled(){
-        return isEnabled(emailInput);
-    }
-    public boolean isRoleSelectFieldEnabled(){
-        return isEnabled(rolesSelectContainer);
-    }
-    public boolean isSetOrChangePassOptionBtnEnabled(){
-        return isEnabled(changePassword);
-    }
-
-    public boolean isRegenerateAccesstokenBtnEnabled(){
-        return isEnabled(regenarateAccessTokenBtn);
-    }
-    public boolean isImportButtonActive(){
-        return isEnabled(importBtn);
-    }
-    public boolean isShowDetailsButtonActive(){
-        return isEnabled(showDetailsBtn);
-    }
-    public boolean isClearButtonActive(){
-        return isEnabled(clearBtn);
-    }
+	public boolean isChangedPasswordActive() {
+		return isEnabled(passChangedClose);
+	}
+
+	public boolean isChangePasswordButtonActive() {
+		return isEnabled(changedPassword);
+	}
+
+	public boolean isCancelButtonActive() {
+		return isEnabled(cancelBtn);
+	}
+
+	public void fillData(String user, String email, String role, String password, String confirmation) {
+		clearAndFillInput(userNameInput, user);
+		clearAndFillInput(emailInput, email);
+		clearAndFillInput(newPasswordInput, password);
+		clearAndFillInput(confirmationInput, confirmation);
+
+		GenericSelect rolesSelect = new GenericSelect(driver, rolesSelectContainer);
+		rolesSelect.selectOptionByText(role);
+
+	}
+
+	public void clickOK() {
+		log.info("click OK");
+		waitForElementToBeClickable(okBtn);
+		okBtn.click();
+		waitForElementToBeGone(okBtn);
+	}
+
+	public void clickCancel() {
+		log.info("click cancel");
+		waitForElementToBeClickable(cancelBtn);
+		cancelBtn.click();
+		waitForElementToBeGone(cancelBtn);
+	}
+
+
+	public void clickUserDetailsToggle() {
+		log.info("details toggle");
+		waitForElementToBeClickable(userDetailsToggle).click();
+		waitForElementToBeEnabled(userNameInput);
+	}
+
+	public void fillDetailsForm(String username, String email) {
+		clearAndFillInput(userNameInput, username);
+		clearAndFillInput(emailInput, email);
+	}
+
+	public void clickSetOrChangePassword() {
+		log.info("click change password");
+		waitForElementToBeClickable(changePassword);
+		waitForXMillis(500);
+		changePassword.click();
+		waitForXMillis(500);
+	}
+
+	public void clickCloseAfterChangedPass() {
+		log.info("click close after change password");
+		try {
+			Thread.sleep(10000);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		waitForElementToBeClickable(passChangedClose);
+		log.info("ab");
+		passChangedClose.click();
+		log.info("bd");
+		waitForElementToBeGone(passChangedClose);
+		log.info("cd");
+	}
+
+	public ConfirmationDialog clickChangedPassword() {
+		log.info("click changed password");
+		waitForElementToBeClickable(changedPassword);
+		waitForXMillis(500);
+		changedPassword.click();
+		waitForElementToBeGone(changedPassword);
+		return new ConfirmationDialog(driver);
+	}
+
+	public boolean isPopupChangedPasswordEnabled() {
+		return changedPassword.isEnabled();
+	}
+
+	public void setOrChangePassword(String adminPass, String newPass, String confirmPass) {
+
+		clearAndFillInput(adminPassInput, adminPass);
+		clearAndFillInput(newPasswordInput, newPass);
+		clearAndFillInput(confirmationInput, confirmPass);
+	}
+
+	public void clickClosePasswordDialog() {
+		passwordDialogClose.click();
+		waitForElementToBeGone(passwordDialogClose);
+	}
+
+
+	public String getUsernameValidationError() {
+		try {
+			waitForElementToBeVisible(usernameValidationError);
+			return usernameValidationError.getText();
+		} catch (Exception e) {
+		}
+		return null;
+	}
+
+	public String userEmailValidationGetErrMsg() {
+		try {
+			waitForElementToBeVisible(emailValidationError);
+			return emailValidationError.getText();
+		} catch (Exception e) {
+		}
+		return null;
+	}
+
+	public String getPassValidationError() {
+		try {
+			waitForElementToBeVisible(passValidationError);
+			return passValidationError.getText();
+		} catch (Exception e) {
+		}
+		return null;
+	}
+
+	public String getConfirmationPassValidationError() {
+
+		try {
+			waitForElementToBeVisible(passConfirmationValidationError);
+			return passConfirmationValidationError.getText();
+		} catch (Exception e) {
+		}
+		return null;
+	}
+
+	public boolean isDuplicateUserNameErrorMsgDisPlayed() {
+		try {
+			return driver.findElement(By.cssSelector("mat-form-field.username > div .has-error")).isDisplayed();
+		} catch (Exception e) {
+			e.printStackTrace();
+			return false;
+		}
+	}
+
+	public String getPassDontMatchValidationMsg() {
+		return passMatchValidationError.getText();
+	}
+
+	public boolean isUsernameFieldEnabled() {
+		return isEnabled(userNameInput);
+	}
+
+	public boolean isEmailFieldEnabled() {
+		return isEnabled(emailInput);
+	}
+
+	public boolean isRoleSelectFieldEnabled() {
+		return isEnabled(rolesSelectContainer);
+	}
+
+	public boolean isSetOrChangePassOptionBtnEnabled() {
+		return isEnabled(changePassword);
+	}
+
+	public boolean isRegenerateAccesstokenBtnEnabled() {
+		return isEnabled(regenarateAccessTokenBtn);
+	}
+
+	public boolean isImportButtonActive() {
+		return isEnabled(importBtn);
+	}
+
+	public boolean isShowDetailsButtonActive() {
+		return isEnabled(showDetailsBtn);
+	}
+
+	public boolean isClearButtonActive() {
+		return isEnabled(clearBtn);
+	}
 
 }
diff --git a/smp-ui-tests/src/main/java/pages/users/UsersPage.java b/smp-ui-tests/src/main/java/pages/users/UsersPage.java
index 355894c439b8b2bd489d76fa1ca5cd76adb15a58..23632189c41d5c7cf41694bf221de9bdb916d6ee 100644
--- a/smp-ui-tests/src/main/java/pages/users/UsersPage.java
+++ b/smp-ui-tests/src/main/java/pages/users/UsersPage.java
@@ -53,6 +53,7 @@ public class UsersPage extends SMPPage {
         log.info("save button");
         return isEnabled(saveBtn);
     }
+
     public boolean isEditButtonEnabled() {
         log.info("save button");
         return isEnabled(editBtn);
@@ -118,7 +119,8 @@ public class UsersPage extends SMPPage {
         }
         return false;
     }
-    public boolean isEditTruststoreButtonEnabled(){
+
+    public boolean isEditTruststoreButtonEnabled() {
         try {
             return isEnabled(editTruststore);
         } catch (Exception e) {
@@ -127,7 +129,8 @@ public class UsersPage extends SMPPage {
         return false;
 
     }
-    public boolean isDeleteButtonVisibled(){
+
+    public boolean isDeleteButtonVisible() {
         try {
             return isVisible(deleteBtn);
         } catch (Exception e) {
@@ -136,7 +139,7 @@ public class UsersPage extends SMPPage {
         return false;
     }
 
-    public boolean isEditButtonVisibled(){
+    public boolean isEditButtonVisible() {
         try {
             return isVisible(editBtn);
         } catch (Exception e) {
@@ -146,18 +149,15 @@ public class UsersPage extends SMPPage {
     }
 
 
-    public boolean isCancelButtonVisibled() {
+    public boolean isCancelButtonVisible() {
 
         return isVisible(cancelBtn);
     }
 
-    public boolean isSaveButtonVisibled() {
+    public boolean isSaveButtonVisible() {
 
         return isVisible(saveBtn);
     }
 
 
-
-
-
 }
diff --git a/smp-ui-tests/src/main/java/utils/DriverManager.java b/smp-ui-tests/src/main/java/utils/DriverManager.java
index e16a0469e905b50cd0a9bbf3fc25fe4a6afe2965..3a2fdade724d236982b7ad2ed8971777786ceae2 100644
--- a/smp-ui-tests/src/main/java/utils/DriverManager.java
+++ b/smp-ui-tests/src/main/java/utils/DriverManager.java
@@ -8,20 +8,8 @@ import java.util.concurrent.TimeUnit;
 
 public class DriverManager {
 
-//	public static WebDriver getDriver(){
-//
-//		ChromeOptions options = new ChromeOptions();
-//		options.addArguments("--headless");
-//		options.addArguments("--window-size=1920x1080");
-//		options.addArguments("--no-sandbox");
-//
-//		WebDriver driver = new ChromeDriver(options);
-//		driver.manage().window().maximize();
-//
-//		return driver;
-//    }
-
-    public static WebDriver getDriver() {
+
+	public static WebDriver getDriver() {
 
 		ChromeOptions options = new ChromeOptions();
 		options.setHeadless(Boolean.valueOf(PROPERTIES.HEADLESS));
@@ -33,13 +21,11 @@ public class DriverManager {
 
 
 		WebDriver driver = new ChromeDriver(options);
-        driver.manage().timeouts().implicitlyWait(1, TimeUnit.SECONDS);
+		driver.manage().timeouts().implicitlyWait(1, TimeUnit.SECONDS);
 		driver.manage().window().maximize();
 
 		return driver;
 	}
 
 
-
-
 }
diff --git a/smp-ui-tests/src/main/java/utils/Generator.java b/smp-ui-tests/src/main/java/utils/Generator.java
index 92b90026fd0f76e74a6376faae0e753cc5be2b3c..69b3a7a2b9af31d2ef1f82c1bfcfa084f097a4a6 100644
--- a/smp-ui-tests/src/main/java/utils/Generator.java
+++ b/smp-ui-tests/src/main/java/utils/Generator.java
@@ -1,16 +1,21 @@
 package utils;
 
 public class Generator {
-	
+
 	@SuppressWarnings("SpellCheckingInspection")
 	private static final String ALPHA_NUMERIC_STRING = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
-	
-	
+	private static final String ALPHA_STRING = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
+
+
 	public static String randomAlphaNumeric(int count) {
+		return randomAlpha(count);
+	}
+
+	public static String randomAlpha(int count) {
 		StringBuilder builder = new StringBuilder();
 		while (count-- != 0) {
-			int character = (int)(Math.random()*ALPHA_NUMERIC_STRING.length());
-			builder.append(ALPHA_NUMERIC_STRING.charAt(character));
+			int character = (int) (Math.random() * ALPHA_STRING.length());
+			builder.append(ALPHA_STRING.charAt(character));
 		}
 		return builder.toString();
 	}
diff --git a/smp-ui-tests/src/test/java/customReporter/ExcelTestReporter.java b/smp-ui-tests/src/test/java/customReporter/ExcelTestReporter.java
index 049b4a0a3d0ef6ca0c6cb2f4ae3cf3bcb0ff268e..f7de2399592db4e045e205af29c5831ceec849f7 100644
--- a/smp-ui-tests/src/test/java/customReporter/ExcelTestReporter.java
+++ b/smp-ui-tests/src/test/java/customReporter/ExcelTestReporter.java
@@ -160,7 +160,6 @@ public class ExcelTestReporter implements ITestListener {
 		Row currentRow = reportSheet.createRow(rowNum);
 
 		currentRow.createCell(0).setCellValue(testType);
-//		currentRow.createCell(0).setCellValue("UI");
 		currentRow.createCell(1).setCellValue(iTestResult.getTestContext().getSuite().getName());
 		currentRow.createCell(2).setCellValue(iTestResult.getMethod().getConstructorOrMethod().getMethod().getAnnotation(Test.class).description());
 		currentRow.createCell(3).setCellValue(iTestResult.getName());
diff --git a/smp-ui-tests/src/test/java/ui/DomainPgTest.java b/smp-ui-tests/src/test/java/ui/DomainPgTest.java
index 635c3ea6d5b071dd796938034a1d3cfd49fdf2c7..35c656d99daefc99fe8e4a268edd4b7b703abbbb 100644
--- a/smp-ui-tests/src/test/java/ui/DomainPgTest.java
+++ b/smp-ui-tests/src/test/java/ui/DomainPgTest.java
@@ -18,30 +18,29 @@ import utils.Generator;
 import utils.enums.SMPMessages;
 import utils.rest.SMPRestClient;
 
-import java.awt.*;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
 public class DomainPgTest extends BaseTest {
-	
+
 	@AfterMethod
-	public void logoutAndReset(){
+	public void logoutAndReset() {
 		genericLogoutProcedure();
 	}
 
-	
+
 	@BeforeMethod
-	public void loginAndGoToDomainPage(){
-		
+	public void loginAndGoToDomainPage() {
+
 		SMPPage page = genericLoginProcedure("SYS_ADMIN");
 
 		logger.info("Going to Domain page");
 		page.sidebar.goToPage(DomainPage.class);
 	}
-	
+
 	@Test(description = "DMN-0")
-	public void openDomainPage(){
+	public void openDomainPage() {
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
 
@@ -49,7 +48,7 @@ public class DomainPgTest extends BaseTest {
 		DomainGrid grid = page.grid();
 		DomainRow row0 = grid.getRowsInfo().get(0);
 		grid.doubleClickRow(0);
-		
+
 		DomainPopup popup = new DomainPopup(driver);
 
 		soft.assertTrue(popup.isLoaded(), "Domain popup is loaded");
@@ -58,7 +57,7 @@ public class DomainPgTest extends BaseTest {
 		soft.assertTrue(!popup.isSMLDomainInputEnabled(), "On double click SML Domain input is disabled");
 
 		popup.clickCancel();
-		
+
 		soft.assertEquals(row0, page.grid().getRowsInfo().get(0), "Row is unchanged");
 		soft.assertTrue(!page.isSaveButtonEnabled(), "Save button is not enabled");
 
@@ -66,7 +65,7 @@ public class DomainPgTest extends BaseTest {
 	}
 
 	@Test(description = "DMN-10")
-	public void editDomain(){
+	public void editDomain() {
 
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
@@ -110,7 +109,7 @@ public class DomainPgTest extends BaseTest {
 
 
 	@Test(description = "DMN-20")
-	public void newDomain(){
+	public void newDomain() {
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
 
@@ -142,14 +141,14 @@ public class DomainPgTest extends BaseTest {
 				"Success message is as expected");
 
 		List<DomainRow> rows = page.grid().getRowsInfo();
-		while (page.pagination.hasNextPage()){
+		while (page.pagination.hasNextPage()) {
 			page.pagination.goToNextPage();
 			rows.addAll(page.grid().getRowsInfo());
 		}
 
 		boolean found = false;
 		for (DomainRow row : rows) {
-			if(row.getDomainCode().equalsIgnoreCase(rndString)){
+			if (row.getDomainCode().equalsIgnoreCase(rndString)) {
 				found = true;
 				break;
 			}
@@ -161,7 +160,7 @@ public class DomainPgTest extends BaseTest {
 	}
 
 	@Test(description = "DMN-30")
-	public void cancelNewDomainCreation(){
+	public void cancelNewDomainCreation() {
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
 
@@ -177,11 +176,7 @@ public class DomainPgTest extends BaseTest {
 
 
 		popup.fillDataForNewDomain(rndString, rndString, rndString, rndString);
-		try {
-			Thread.sleep(1000);
-		} catch (InterruptedException e) {
-			e.printStackTrace();
-		}
+		popup.waitForXMillis(1000);
 		popup.clickOK();
 
 		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
@@ -190,14 +185,14 @@ public class DomainPgTest extends BaseTest {
 		new ConfirmationDialog(driver).confirm();
 
 		List<DomainRow> rows = page.grid().getRowsInfo();
-		while (page.pagination.hasNextPage()){
+		while (page.pagination.hasNextPage()) {
 			page.pagination.goToNextPage();
 			rows.addAll(page.grid().getRowsInfo());
 		}
 
 		boolean found = false;
 		for (DomainRow row : rows) {
-			if(row.getDomainCode().equalsIgnoreCase(rndString)){
+			if (row.getDomainCode().equalsIgnoreCase(rndString)) {
 				found = true;
 				break;
 			}
@@ -209,7 +204,7 @@ public class DomainPgTest extends BaseTest {
 	}
 
 	@Test(description = "DMN-40")
-	public void deleteDomain(){
+	public void deleteDomain() {
 		String rndStr = Generator.randomAlphaNumeric(10);
 		SMPRestClient.createDomain(rndStr);
 
@@ -221,7 +216,7 @@ public class DomainPgTest extends BaseTest {
 		soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
 		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
 
-        int index = page.grid().scrollToDomain(rndStr);
+		int index = page.grid().scrollToDomain(rndStr);
 
 		page.grid().selectRow(index);
 
@@ -235,21 +230,21 @@ public class DomainPgTest extends BaseTest {
 		page.clickCancel().confirm();
 		new ConfirmationDialog(driver).confirm();
 
-        soft.assertTrue(page.grid().isDomainStillPresent(rndStr), "Row is still present");
+		soft.assertTrue(page.grid().isDomainStillPresent(rndStr), "Row is still present");
 
-        index = page.grid().scrollToDomain(rndStr);
-        page.grid().selectRow(index);
-        page.clickDelete();
-        page.clickSave().confirm();
+		index = page.grid().scrollToDomain(rndStr);
+		page.grid().selectRow(index);
+		page.clickDelete();
+		page.clickSave().confirm();
 
-        soft.assertTrue(!page.grid().isDomainStillPresent(rndStr), "Row is still NOT present after delete");
+		soft.assertTrue(!page.grid().isDomainStillPresent(rndStr), "Row is still NOT present after delete");
 
 
 		soft.assertAll();
 	}
 
 	@Test(description = "DMN-50")
-	public void deleteDomainWithSG(){
+	public void deleteDomainWithSG() {
 
 		String domainName = Generator.randomAlphaNumeric(10);
 		String pi = Generator.randomAlphaNumeric(10);
@@ -258,16 +253,16 @@ public class DomainPgTest extends BaseTest {
 		String expectedErrorMess = String.format("Delete validation error Could not delete domains used by Service groups! Domain: %s (%s ) uses by:1 SG.", domainName, domainName);
 
 		SMPRestClient.createDomain(domainName);
-		SMPRestClient.createServiceGroup(pi, ps, new ArrayList<>(Arrays.asList("smp")),new ArrayList<>(Arrays.asList(domainName)));
+		SMPRestClient.createServiceGroup(pi, ps, new ArrayList<>(Arrays.asList("smp")), new ArrayList<>(Arrays.asList(domainName)));
 
 		SoftAssert soft = new SoftAssert();
 
 		DomainPage page = new DomainPage(driver);
 		page.refreshPage();
 
-        int index = page.grid().scrollToDomain(domainName);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
+		int index = page.grid().scrollToDomain(domainName);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
 
 		page.clickDelete();
 		AlertMessage message = page.alertArea.getAlertMessage();
@@ -280,66 +275,66 @@ public class DomainPgTest extends BaseTest {
 		soft.assertAll();
 	}
 
-    @Test(description = "DMN-60")
-    public void duplicateDomainCreation() {
-        SoftAssert soft = new SoftAssert();
-        DomainPage page = new DomainPage(driver);
-        String errorMsg = "The Domain code already exists!";
-        soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
-        String rndString = Generator.randomAlphaNumeric(10);
-        DomainPopup popup = page.clickNew();
-        soft.assertTrue(popup.isLoaded(), "Domain popup is loaded");
-        soft.assertTrue(popup.isDomainCodeInputEnabled(), "When defining new domain - Domain Code input is disabled");
-        soft.assertTrue(popup.isSMLDomainInputEnabled(), "When defining new domain -SML Domain input is disabled");
-        popup.fillDataForNewDomain(rndString, rndString, rndString, rndString);
-        popup.clickOK();
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
-        page.clickSave().confirm();
-        page.clickNew();
-        soft.assertTrue(popup.isLoaded(), "Domain popup is loaded");
-        soft.assertTrue(popup.isDomainCodeInputEnabled(), "When defining new domain - Domain Code input is disabled");
-        soft.assertTrue(popup.isSMLDomainInputEnabled(), "When defining new domain -SML Domain input is disabled");
-        popup.fillDataForNewDomain(rndString, rndString, rndString, rndString);
-        soft.assertEquals(popup.getDuplicateDomainErrorMsgText(), errorMsg, "The message is not matching with our expected error message");
-        soft.assertFalse(popup.isEnableOkButton(), "Ok button is enable");
-        soft.assertTrue(popup.isEnableCancelButton(), "Cancel button is disabled");
-        popup.clickCancel();
-        soft.assertAll();
-    }
-
-    @Test(description = "DMN-70")
-    public void onlyDomainCodeSavingMsgVerify() {
-        SoftAssert soft = new SoftAssert();
-        DomainPage page = new DomainPage(driver);
-        soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
-        int index = page.grid().scrollToSmlDomain("");
-        if (index >= 0) {
-            try {
-                page.grid().selectRow(index);
-                page.clickDelete();
-                page.clickSave().confirm();
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        }
-        String rndString = Generator.randomAlphaNumeric(10);
-        DomainPopup popup = page.clickNew();
-        soft.assertTrue(popup.isLoaded(), "Domain popup is loaded");
-        soft.assertTrue(popup.isDomainCodeInputEnabled(), "When defining new domain - Domain Code input is disabled");
-        popup.clearAndFillDomainCodeInput(rndString);
-        soft.assertTrue(popup.isEnableOkButton(), "Ok button is disabled");
-        popup.clickOK();
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
-        page.clickSave().confirm();
-        soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18),
-                "Success message is as expected");
-        index = page.grid().scrollToSmlDomain("");
-        if (index >= 0) {
-            page.grid().scrollRow(index);
-        }
-        int rowNumber = index + 1;
-        soft.assertAll();
-    }
+	@Test(description = "DMN-60")
+	public void duplicateDomainCreation() {
+		SoftAssert soft = new SoftAssert();
+		DomainPage page = new DomainPage(driver);
+		String errorMsg = "The Domain code already exists!";
+		soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
+		String rndString = Generator.randomAlpha(10);
+		DomainPopup popup = page.clickNew();
+		soft.assertTrue(popup.isLoaded(), "Domain popup is loaded");
+		soft.assertTrue(popup.isDomainCodeInputEnabled(), "When defining new domain - Domain Code input is disabled");
+		soft.assertTrue(popup.isSMLDomainInputEnabled(), "When defining new domain -SML Domain input is disabled");
+		popup.fillDataForNewDomain(rndString, rndString, rndString, rndString);
+		popup.clickOK();
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
+		page.clickSave().confirm();
+		page.clickNew();
+		soft.assertTrue(popup.isLoaded(), "Domain popup is loaded");
+		soft.assertTrue(popup.isDomainCodeInputEnabled(), "When defining new domain - Domain Code input is disabled");
+		soft.assertTrue(popup.isSMLDomainInputEnabled(), "When defining new domain -SML Domain input is disabled");
+		popup.fillDataForNewDomain(rndString, rndString, rndString, rndString);
+		soft.assertEquals(popup.getDuplicateDomainErrorMsgText(), errorMsg, "The message is not matching with our expected error message");
+		soft.assertFalse(popup.isEnableOkButton(), "Ok button is enabled");
+		soft.assertTrue(popup.isEnableCancelButton(), "Cancel button is disabled");
+		popup.clickCancel();
+		soft.assertAll();
+	}
+
+	@Test(description = "DMN-70")
+	public void onlyDomainCodeSavingMsgVerify() {
+		SoftAssert soft = new SoftAssert();
+		DomainPage page = new DomainPage(driver);
+		soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
+		int index = page.grid().scrollToSmlDomain("");
+		if (index >= 0) {
+			try {
+				page.grid().selectRow(index);
+				page.clickDelete();
+				page.clickSave().confirm();
+			} catch (Exception e) {
+				e.printStackTrace();
+			}
+		}
+		String rndString = Generator.randomAlpha(10);
+		DomainPopup popup = page.clickNew();
+		soft.assertTrue(popup.isLoaded(), "Domain popup is loaded");
+		soft.assertTrue(popup.isDomainCodeInputEnabled(), "When defining new domain - Domain Code input is disabled");
+		popup.clearAndFillDomainCodeInput(rndString);
+		soft.assertTrue(popup.isEnableOkButton(), "Ok button is disabled");
+		popup.clickOK();
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
+		page.clickSave().confirm();
+		soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18),
+				"Success message is as expected");
+		index = page.grid().scrollToSmlDomain("");
+		if (index >= 0) {
+			page.grid().scrollRow(index);
+		}
+		int rowNumber = index + 1;
+		soft.assertAll();
+	}
 
 	@Test(description = "DMN-80")
 	public void onlyDomainCodeAndSMLDomainSavingMsgVerify() {
@@ -372,23 +367,23 @@ public class DomainPgTest extends BaseTest {
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
 		soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
-		String pass="test123";
+		String pass = "test123";
 		KeyStoreEditDialog keyStoreEdit = page.clickEditKeyStore();
 		int keyStoreRowBeforeAddition = keyStoreEdit.grid().getRowsNo();
 		KeyStoreImportDialog keyStoreImport = keyStoreEdit.clickImportKeystore();
 		keyStoreImport.chooseKeystoreFile("src/main/resources/keystore/keystore_dummy1.jks");
-		Assert.assertEquals(keyStoreImport.getKeyStoreFileName(),"keystore_dummy1.jks","the keystore file name is not correct");
+		Assert.assertEquals(keyStoreImport.getKeyStoreFileName(), "keystore_dummy1.jks", "the keystore file name is not correct");
 		keyStoreImport.fillPassword(pass);
 		keyStoreImport.clickImportBtn();
 		keyStoreEdit.clickCloseInKeystore();
 		soft.assertFalse(page.alertArea.getAlertMessage().isError());
 		keyStoreEdit = page.clickEditKeyStore();
 		int keyStoreRowAfterAddition = keyStoreEdit.grid().getRowsNo();
-		soft.assertEquals(keyStoreRowAfterAddition,keyStoreRowBeforeAddition+1, "KeyStore is not added to the grid");
-		if(keyStoreRowAfterAddition > 1){
-			keyStoreEdit.grid().deleteKeyStore(keyStoreRowAfterAddition-1).confirm();
+		soft.assertEquals(keyStoreRowAfterAddition, keyStoreRowBeforeAddition + 1, "KeyStore is not added to the grid");
+		if (keyStoreRowAfterAddition > 1) {
+			keyStoreEdit.grid().deleteKeyStore(keyStoreRowAfterAddition - 1).confirm();
 			int keyStoreRowAfterDeletion = keyStoreEdit.grid().getRowsNo();
-			soft.assertEquals(keyStoreRowAfterDeletion,keyStoreRowAfterAddition-1, "KeyStore is not delete from the grid");
+			soft.assertEquals(keyStoreRowAfterDeletion, keyStoreRowAfterAddition - 1, "KeyStore is not delete from the grid");
 			keyStoreEdit.clickCloseInKeystore();
 			soft.assertFalse(page.alertArea.getAlertMessage().isError());
 		}
@@ -397,43 +392,43 @@ public class DomainPgTest extends BaseTest {
 
 	@Test(description = "DMN-100")
 	public void allowDuplicateKeyStore() {
-			SoftAssert soft = new SoftAssert();
-			DomainPage page = new DomainPage(driver);
-			soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
-			String pass="test123";
-			KeyStoreEditDialog keyStoreEdit = page.clickEditKeyStore();
-			int keyStoreRowBeforeAddition = keyStoreEdit.grid().getRowsNo();
-			KeyStoreImportDialog keyStoreImport = keyStoreEdit.clickImportKeystore();
-			keyStoreImport.chooseKeystoreFile("src/main/resources/keystore/keystore_dummy1.jks");
-			Assert.assertEquals(keyStoreImport.getKeyStoreFileName(),"keystore_dummy1.jks","the keystore file name is not correct");
-			keyStoreImport.fillPassword(pass);
-			keyStoreImport.clickImportBtn();
-			keyStoreEdit.clickCloseInKeystore();
-			soft.assertFalse(page.alertArea.getAlertMessage().isError());
-			keyStoreEdit = page.clickEditKeyStore();
-			int keyStoreRowAfterAddition = keyStoreEdit.grid().getRowsNo();
-			soft.assertEquals(keyStoreRowAfterAddition,keyStoreRowBeforeAddition+1, "KeyStore is not added to the grid");
+		SoftAssert soft = new SoftAssert();
+		DomainPage page = new DomainPage(driver);
+		soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
+		String pass = "test123";
+		KeyStoreEditDialog keyStoreEdit = page.clickEditKeyStore();
+		int keyStoreRowBeforeAddition = keyStoreEdit.grid().getRowsNo();
+		KeyStoreImportDialog keyStoreImport = keyStoreEdit.clickImportKeystore();
+		keyStoreImport.chooseKeystoreFile("src/main/resources/keystore/keystore_dummy1.jks");
+		Assert.assertEquals(keyStoreImport.getKeyStoreFileName(), "keystore_dummy1.jks", "the keystore file name is not correct");
+		keyStoreImport.fillPassword(pass);
+		keyStoreImport.clickImportBtn();
+		keyStoreEdit.clickCloseInKeystore();
+		soft.assertFalse(page.alertArea.getAlertMessage().isError());
+		keyStoreEdit = page.clickEditKeyStore();
+		int keyStoreRowAfterAddition = keyStoreEdit.grid().getRowsNo();
+		soft.assertEquals(keyStoreRowAfterAddition, keyStoreRowBeforeAddition + 1, "KeyStore is not added to the grid");
 		keyStoreRowBeforeAddition = keyStoreRowAfterAddition;
 		keyStoreImport = keyStoreEdit.clickImportKeystore();
 		keyStoreImport.chooseKeystoreFile("src/main/resources/keystore/keystore_dummy1.jks");
-		Assert.assertEquals(keyStoreImport.getKeyStoreFileName(),"keystore_dummy1.jks","the keystore file name is not correct");
+		Assert.assertEquals(keyStoreImport.getKeyStoreFileName(), "keystore_dummy1.jks", "the keystore file name is not correct");
 		keyStoreImport.fillPassword(pass);
 		keyStoreImport.clickImportBtn();
 		keyStoreEdit.clickCloseInKeystore();
 		soft.assertFalse(page.alertArea.getAlertMessage().isError());
 		keyStoreEdit = page.clickEditKeyStore();
 		keyStoreRowAfterAddition = keyStoreEdit.grid().getRowsNo();
-		soft.assertEquals(keyStoreRowAfterAddition,keyStoreRowBeforeAddition+1, "KeyStore is not added to the grid");
-		if(keyStoreRowAfterAddition > 1){
-			keyStoreEdit.grid().deleteKeyStore(keyStoreRowAfterAddition-1).confirm();
+		soft.assertEquals(keyStoreRowAfterAddition, keyStoreRowBeforeAddition + 1, "KeyStore is not added to the grid");
+		if (keyStoreRowAfterAddition > 1) {
+			keyStoreEdit.grid().deleteKeyStore(keyStoreRowAfterAddition - 1).confirm();
 			int keyStoreRowAfterDeletion = keyStoreEdit.grid().getRowsNo();
-			soft.assertEquals(keyStoreRowAfterDeletion,keyStoreRowAfterAddition-1, "KeyStore is not delete from the grid");
+			soft.assertEquals(keyStoreRowAfterDeletion, keyStoreRowAfterAddition - 1, "KeyStore is not delete from the grid");
 			keyStoreRowAfterAddition = keyStoreRowAfterDeletion;
 		}
-		if(keyStoreRowAfterAddition > 1){
-			keyStoreEdit.grid().deleteKeyStore(keyStoreRowAfterAddition-1).confirm();
+		if (keyStoreRowAfterAddition > 1) {
+			keyStoreEdit.grid().deleteKeyStore(keyStoreRowAfterAddition - 1).confirm();
 			int keyStoreRowAfterDeletion = keyStoreEdit.grid().getRowsNo();
-			soft.assertEquals(keyStoreRowAfterDeletion,keyStoreRowAfterAddition-1, "KeyStore is not delete from the grid");
+			soft.assertEquals(keyStoreRowAfterDeletion, keyStoreRowAfterAddition - 1, "KeyStore is not delete from the grid");
 			keyStoreEdit.clickCloseInKeystore();
 			soft.assertFalse(page.alertArea.getAlertMessage().isError());
 		}
@@ -441,48 +436,46 @@ public class DomainPgTest extends BaseTest {
 	}
 
 	@Test(description = "DMN-110")
-	public void mandatoryDomainIdFieldVerification()
-	{
+	public void mandatoryDomainIdFieldVerification() {
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
-		String randstring =Generator.randomAlphaNumeric(10);
+		String randstring = Generator.randomAlphaNumeric(10);
 		soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
 		DomainPopup popup = page.clickNew();
-		popup.fillDataForNewDomain("",randstring,randstring,randstring);
-		soft.assertTrue(!popup.isEnableOkButton(),"Ok button is not disabled after leave domain input empty");
+		popup.fillDataForNewDomain("", randstring, randstring, randstring);
+		soft.assertTrue(!popup.isEnableOkButton(), "Ok button is not disabled after leave domain input empty");
 		soft.assertAll();
 	}
 
 	@Test(description = "DMN-120")
-	public void verifyInvalidSMLSMPIDField(){
+	public void verifyInvalidSMLSMPIDField() {
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
-		String randstring =Generator.randomAlphaNumeric(10);
+		String randstring = Generator.randomAlpha(10);
 		ArrayList<String> smlsmpId = new ArrayList<>(Arrays.asList("abc@k",
 				"abcd-",
 				"-abgxknvlk",
 				"1qwertyuvbnm"));
 		soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
 		DomainPopup popup = page.clickNew();
-		for(String smlsmpid : smlsmpId) {
+		for (String smlsmpid : smlsmpId) {
 			popup.fillDataForNewDomain(randstring, randstring, smlsmpid, randstring);
-			soft.assertTrue(!popup.isEnableOkButton(),"OK button is enable after sending the invalid smlsmpId");
-			soft.assertEquals(popup.getSmlSmpIdValidationMsg(), SMPMessages.SMLSMPID_VALIDATION_MESSAGE,"Error message is not in list");
+			soft.assertTrue(!popup.isEnableOkButton(), "OK button is enabled after sending the invalid smlsmpId");
+			soft.assertEquals(popup.getSmlSmpIdValidationMsg(), SMPMessages.SMLSMPID_VALIDATION_MESSAGE, "Error message is not in list");
 
 		}
-       soft.assertAll();
+		soft.assertAll();
 	}
 
 	@Test(description = "DMN-130")
-	public void clientCertHeaderToggleTest()
-	{
+	public void clientCertHeaderToggleTest() {
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
 		soft.assertTrue(page.isLoaded(), "Check that the page is loaded");
 		DomainPopup popup = page.clickNew();
-		soft.assertEquals(popup.checkedUserClientCertHeaderToggl(),"false","The user toggle is on");
+		soft.assertEquals(popup.checkedUserClientCertHeaderToggl(), "false", "The user toggle is on");
 		popup.clickUserClientCertHeaderToggle();
-		soft.assertEquals(popup.checkedUserClientCertHeaderToggl(),"true","The user toggle is off");
+		soft.assertEquals(popup.checkedUserClientCertHeaderToggl(), "true", "The user toggle is off");
 		soft.assertAll();
 	}
 
@@ -505,7 +498,8 @@ public class DomainPgTest extends BaseTest {
 
 		for (String domain : domainCode) {
 			popup.fillDataForNewDomain(domain, rndString, rndString, rndString);
-			soft.assertTrue(!popup.isEnableOkButton(),"OK button is active after s4ending invalid domain code");
+
+			soft.assertTrue(!popup.isEnableOkButton(), "OK button is active after sending invalid domain code");
 			soft.assertEquals(popup.domainCodeValidationGetErrMsg(), SMPMessages.DOMAINCODE_VALIDATION_MESSAGE, "Message is not in the list");
 		}
 
@@ -513,10 +507,10 @@ public class DomainPgTest extends BaseTest {
 	}
 
 	@Test(description = "USR-150")
-	public void verifyNoOfCharcterAllowanceLimitInDomaincodeAndSMLSMPId(){
+	public void verifyNoOfCharcterAllowanceLimitInDomaincodeAndSMLSMPId() {
 		SoftAssert soft = new SoftAssert();
 		DomainPage page = new DomainPage(driver);
-		String randstring =Generator.randomAlphaNumeric(10);
+		String randstring = Generator.randomAlphaNumeric(10);
 		String string = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz12345678901g";
 
 		soft.assertTrue(page.isLoaded(), "Check that the page is not loaded");
@@ -524,7 +518,7 @@ public class DomainPgTest extends BaseTest {
 		soft.assertTrue(popup.isLoaded(), "Domain popup is not loaded");
 		popup.fillDataForNewDomain(string, randstring, string, randstring);
 		soft.assertEquals(popup.domainCode63CharValidationGetErrMsg(), SMPMessages.DOMAINCODE_VALIDATION_MESSAGE, "Message is not in the list");
-		soft.assertEquals(popup.getSmlSmpId63CharValidationMsg(), SMPMessages.SMLSMPID_VALIDATION_MESSAGE,"Error message is not in list");
+		soft.assertEquals(popup.getSmlSmpId63CharValidationMsg(), SMPMessages.SMLSMPID_VALIDATION_MESSAGE, "Error message is not in list");
 
 		soft.assertAll();
 	}
diff --git a/smp-ui-tests/src/test/java/ui/EditPgTest.java b/smp-ui-tests/src/test/java/ui/EditPgTest.java
index f00178500a2cfe4075c5c22f8e5101c007dcf9d7..db0638c600046e47edf296c9d54c179f35558ada 100644
--- a/smp-ui-tests/src/test/java/ui/EditPgTest.java
+++ b/smp-ui-tests/src/test/java/ui/EditPgTest.java
@@ -166,8 +166,8 @@ public class EditPgTest extends BaseTest {
 
 		ServiceGroupPopup popup = new ServiceGroupPopup(driver);
 
-		soft.assertTrue(row0.getParticipantIdentifier().equalsIgnoreCase(popup.getParticipantIdentifierValue()), "Popup opened for appropriate service group");
-		soft.assertTrue(row0.getParticipantScheme().equalsIgnoreCase(popup.getParticipantSchemeValue()), "Popup opened for appropriate service group");
+		soft.assertEquals(row0.getParticipantIdentifier().trim().toLowerCase(), popup.getParticipantIdentifierValue().trim().toLowerCase(), "Popup opened for appropriate service group");
+		soft.assertEquals(row0.getParticipantScheme().trim().toLowerCase(), popup.getParticipantSchemeValue().trim().toLowerCase(), "Popup opened for appropriate service group");
 		soft.assertTrue(popup.isExtensionAreaEditable(), "extension area is editable");
 
 		soft.assertTrue(!popup.isParticipantIdentifierInputEnabled(), "Participant Identifier field is disabled");
@@ -364,6 +364,7 @@ public class EditPgTest extends BaseTest {
 		soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is now active (2)");
 
 		page.clickSave().confirm();
+		page.waitForRowsToLoad();
 
 		page.filterArea.filter(identifier, "", "");
 		soft.assertTrue(page.getGrid().getRowsNo() == 0
@@ -381,86 +382,86 @@ public class EditPgTest extends BaseTest {
 		ServiceGroupGrid grid = page.getGrid();
 		Integer index = 0;
 		ServiceGroupRowE row0 = grid.getRowsAs(ServiceGroupRowE.class).get(index);
-		ServiceMetadataPopup metadataPopup= row0.clickAddMetadata();
-		soft.assertTrue(!metadataPopup.isParticipantIdentifierEnabled(),"participantId field is enabled for an existing service group in service metadata popup");
-		soft.assertTrue(!metadataPopup.isParticipantSchemeEnabled(),"participantScheme field is enabled for an existing service group in service metadata popup");
-		soft.assertEquals(metadataPopup.docIDFieldValue(),"","docIDField is not empty");
-		soft.assertEquals(metadataPopup.docIDSchemeFieldValue(),"","docIDField is not empty");
+		ServiceMetadataPopup metadataPopup = row0.clickAddMetadata();
+		soft.assertTrue(!metadataPopup.isParticipantIdentifierEnabled(), "participantId field is enabled for an existing service group in service metadata popup");
+		soft.assertTrue(!metadataPopup.isParticipantSchemeEnabled(), "participantScheme field is enabled for an existing service group in service metadata popup");
+		soft.assertEquals(metadataPopup.docIDFieldValue(), "", "docIDField is not empty");
+		soft.assertEquals(metadataPopup.docIDSchemeFieldValue(), "", "docIDField is not empty");
 		soft.assertTrue(row0.getParticipantIdentifier().equalsIgnoreCase(metadataPopup.getParticipantIdentifierValue()), "ServiceMetadata dialog opened for appropriate service group");
 		soft.assertTrue(row0.getParticipantScheme().equalsIgnoreCase(metadataPopup.getParticipantSchemeValue()), "ServiceMetadata dialog opened for appropriate service group");
-		metadataPopup.fillForm(generator,generator,generator);
+		metadataPopup.fillForm(generator, generator, generator);
 		ServiceMetadataWizardPopup metadataWizaedPopup = metadataPopup.clickMetadataWizard();
-		metadataWizaedPopup.fillForm(generator,generator,generator,generator,"bdxr-transport-ebms3-as4-v1p0","internal/rest/domain");
+		metadataWizaedPopup.fillForm(generator, generator, generator, generator, "bdxr-transport-ebms3-as4-v1p0", "internal/rest/domain");
 		metadataWizaedPopup.fillCerificateBox(generator);
-		soft.assertTrue(metadataWizaedPopup.isEnableOkBtn(),"ok button is disabled after providing the valid data");
+		soft.assertTrue(metadataWizaedPopup.isEnabledOkBtn(), "ok button is disabled after providing the valid data");
 		metadataPopup = metadataWizaedPopup.clickOK();
-		soft.assertEquals(metadataPopup.docIDFieldValue(),generator,"After saving the servicemetadata wizard popup with valid data the docID field of service metadata popup doc id contain the coressponding value");
-		soft.assertEquals(metadataPopup.docIDSchemeFieldValue(),generator,"After saving the servicemetadata wizard popup with valid data the docIDScheme field of service metadata popup doc id scheme contain the coressponding value");
-		soft.assertTrue(metadataPopup.isOKBtnEnabled(),"OK button is not enabled");
+		soft.assertEquals(metadataPopup.docIDFieldValue(), generator, "After saving the servicemetadata wizard popup with valid data the docID field of service metadata popup doc id contain the coressponding value");
+		soft.assertEquals(metadataPopup.docIDSchemeFieldValue(), generator, "After saving the servicemetadata wizard popup with valid data the docIDScheme field of service metadata popup doc id scheme contain the coressponding value");
+		soft.assertTrue(metadataPopup.isOKBtnEnabled(), "OK button is not enabled");
 		soft.assertAll();
 
 	}
 
 	@Test(description = "EDT-120")
-	public void verifyServicemtadataWizardDilogField(){
+	public void verifyServicemtadataWizardDilogField() {
 		SoftAssert soft = new SoftAssert();
 		EditPage page = new EditPage(driver);
 		String generator = Generator.randomAlphaNumeric(10);
 		ServiceGroupGrid grid = page.getGrid();
 		Integer index = 0;
 		ServiceGroupRowE row0 = grid.getRowsAs(ServiceGroupRowE.class).get(index);
-		ServiceMetadataPopup metadataPopup= row0.clickAddMetadata();
-		soft.assertTrue(!metadataPopup.isParticipantIdentifierEnabled(),"participantId field is enabled for an existing service group in service metadata popup");
-		soft.assertTrue(!metadataPopup.isParticipantSchemeEnabled(),"participantScheme field is enabled for an existing service group in service metadata popup");
-		metadataPopup.fillForm(generator,generator,generator);
-		ServiceMetadataWizardPopup metadataWizard= metadataPopup.clickMetadataWizard();
-		soft.assertEquals(metadataWizard.docIDFieldValue(),generator,"document identifier field of metdata wizard popup not contain the corresponding doc id filled in sevice metadata popup");
-		soft.assertEquals(metadataWizard.docIDSchemeFieldValue(),generator,"document identifier field of metdata wizard popup not contain the corresponding doc id scheme filled in sevice metadata popup");
+		ServiceMetadataPopup metadataPopup = row0.clickAddMetadata();
+		soft.assertTrue(!metadataPopup.isParticipantIdentifierEnabled(), "participantId field is enabled for an existing service group in service metadata popup");
+		soft.assertTrue(!metadataPopup.isParticipantSchemeEnabled(), "participantScheme field is enabled for an existing service group in service metadata popup");
+		metadataPopup.fillForm(generator, generator, generator);
+		ServiceMetadataWizardPopup metadataWizard = metadataPopup.clickMetadataWizard();
+		soft.assertEquals(metadataWizard.docIDFieldValue(), generator, "document identifier field of metdata wizard popup not contain the corresponding doc id filled in sevice metadata popup");
+		soft.assertEquals(metadataWizard.docIDSchemeFieldValue(), generator, "document identifier field of metdata wizard popup not contain the corresponding doc id scheme filled in sevice metadata popup");
 		soft.assertAll();
 	}
 
 	@Test(description = "EDT-130")
-	public void verifyTransportProfile(){
+	public void verifyTransportProfile() {
 		SoftAssert soft = new SoftAssert();
 		EditPage page = new EditPage(driver);
 		String generator = Generator.randomAlphaNumeric(10);
 		ServiceGroupGrid grid = page.getGrid();
 		Integer index = 0;
 		ServiceGroupRowE row0 = grid.getRowsAs(ServiceGroupRowE.class).get(index);
-		ServiceMetadataPopup metadataPopup= row0.clickAddMetadata();
-		soft.assertTrue(!metadataPopup.isParticipantIdentifierEnabled(),"participantId field is enabled for an existing service group in service metadata popup");
-		soft.assertTrue(!metadataPopup.isParticipantSchemeEnabled(),"participantScheme field is enabled for an existing service group in service metadata popup");
-		ServiceMetadataWizardPopup metadataWizard= metadataPopup.clickMetadataWizard();
-		soft.assertEquals(metadataWizard.transportProfileFieldContent(),"bdxr-transport-ebms3-as4-v1p0","The transport profile field in service metadata wizard popup not contain the default value");
+		ServiceMetadataPopup metadataPopup = row0.clickAddMetadata();
+		soft.assertTrue(!metadataPopup.isParticipantIdentifierEnabled(), "participantId field is enabled for an existing service group in service metadata popup");
+		soft.assertTrue(!metadataPopup.isParticipantSchemeEnabled(), "participantScheme field is enabled for an existing service group in service metadata popup");
+		ServiceMetadataWizardPopup metadataWizard = metadataPopup.clickMetadataWizard();
+		soft.assertEquals(metadataWizard.transportProfileFieldContent(), "bdxr-transport-ebms3-as4-v1p0", "The transport profile field in service metadata wizard popup not contain the default value");
 
 		soft.assertAll();
 	}
 
 	@Test(description = "EDT-140")
-	public void serviceMetadataXMLValidationRule(){
+	public void serviceMetadataXMLValidationRule() {
 		SoftAssert soft = new SoftAssert();
 		EditPage page = new EditPage(driver);
 		String generator = Generator.randomAlphaNumeric(10);
 		ServiceGroupGrid grid = page.getGrid();
 		Integer index = 0;
 		ServiceGroupRowE row0 = grid.getRowsAs(ServiceGroupRowE.class).get(index);
-		ServiceMetadataPopup metadataPopup= row0.clickAddMetadata();
-		metadataPopup.fillForm(generator,generator,generator);
+		ServiceMetadataPopup metadataPopup = row0.clickAddMetadata();
+		metadataPopup.fillForm(generator, generator, generator);
 		metadataPopup.clickValidateBtn();
-		soft.assertEquals(metadataPopup.getXMLValidationMessage(), SMPMessages.VALID_XML_MESSAGE,"The message is not in list");
+		soft.assertEquals(metadataPopup.getXMLValidationMessage(), SMPMessages.VALID_XML_MESSAGE, "The message is not in list");
 		metadataPopup.clickClearBtn();
 		metadataPopup.clickValidateBtn();
-		soft.assertEquals(metadataPopup.getXMLValidationMessage(),SMPMessages.EMPTY_XML_WARN_MESSAGE,"The message is not in list");
+		soft.assertEquals(metadataPopup.getXMLValidationMessage(), SMPMessages.EMPTY_XML_WARN_MESSAGE, "The message is not in list");
 		metadataPopup.clickGenerateXMLBtn();
 		String xml1 = metadataPopup.captureTextOfMetadataTextArea();
-		String invalidxml1 = xml1+"xcvjdvxv";
+		String invalidxml1 = xml1 + "xcvjdvxv";
 		metadataPopup.addTextToMetadataTextArea(invalidxml1);
 		metadataPopup.clickValidateBtn();
-		soft.assertEquals(metadataPopup.getXMLValidationMessage(),SMPMessages.INVALID_XML_MESSAGE3,"The message error message is not in list");
+		soft.assertEquals(metadataPopup.getXMLValidationMessage(), SMPMessages.INVALID_XML_MESSAGE3, "The message error message is not in list");
 		metadataPopup.clickClearBtn();
 		metadataPopup.addTextToMetadataTextArea("xjvnkcfjblcf");
 		metadataPopup.clickValidateBtn();
-		soft.assertEquals(metadataPopup.getXMLValidationMessage(),SMPMessages.INVALID_XML_MESSAGE2,"The message error message is not in list");
+		soft.assertEquals(metadataPopup.getXMLValidationMessage(), SMPMessages.INVALID_XML_MESSAGE2, "The message error message is not in list");
 		metadataPopup.clickClearBtn();
 
 		soft.assertAll();
@@ -468,37 +469,41 @@ public class EditPgTest extends BaseTest {
 	}
 
 	@Test(description = "EDT-150")
-	public void verifyServiceMetadataXMLClearBtn(){
+	public void verifyServiceMetadataXMLClearBtn() {
 		SoftAssert soft = new SoftAssert();
 		EditPage page = new EditPage(driver);
 		String generator = Generator.randomAlphaNumeric(10);
 		ServiceGroupGrid grid = page.getGrid();
 		Integer index = 0;
 		ServiceGroupRowE row0 = grid.getRowsAs(ServiceGroupRowE.class).get(index);
-		ServiceMetadataPopup metadataPopup= row0.clickAddMetadata();
-		metadataPopup.fillForm(generator,generator,generator);
-		soft.assertNotEquals(metadataPopup.xmlFieldVALUE(),"","The xml field area is empty");
+		ServiceMetadataPopup metadataPopup = row0.clickAddMetadata();
+		metadataPopup.fillForm(generator, generator, generator);
+		soft.assertNotEquals(metadataPopup.xmlFieldVALUE(), "", "The xml field area is empty");
 		metadataPopup.clickClearBtn();
-		soft.assertEquals(metadataPopup.xmlFieldVALUE(),"","The clear button did not clear the xml field");
+		soft.assertEquals(metadataPopup.xmlFieldVALUE(), "", "The clear button did not clear the xml field");
 		soft.assertAll();
 	}
 
 	@Test(description = "EDT-160")
-	public void verifyServiceMetadataWizardOkBtn(){
+	public void verifyServiceMetadataWizardOkBtn() {
 		SoftAssert soft = new SoftAssert();
 		EditPage page = new EditPage(driver);
 		String generator = Generator.randomAlphaNumeric(10);
 		ServiceGroupGrid grid = page.getGrid();
+		grid.waitForRowsToLoad();
 		int index = 0;
 		ServiceGroupRowE row0 = grid.getRowsAs(ServiceGroupRowE.class).get(index);
-		ServiceMetadataPopup metadataPopup= row0.clickAddMetadata();
+		ServiceMetadataPopup metadataPopup = row0.clickAddMetadata();
+		soft.assertTrue(!metadataPopup.isParticipantIdentifierEnabled(), "participantId field is enabled for an existing service group in service metadata popup");
+		soft.assertTrue(!metadataPopup.isParticipantSchemeEnabled(), "participantScheme field is enabled for an existing service group in service metadata popup");
+
+
 		ServiceMetadataWizardPopup metadataWizard = metadataPopup.clickMetadataWizard();
-		soft.assertTrue(!metadataPopup.isParticipantIdentifierEnabled(),"participantId field is enabled for an existing service group in service metadata popup");
-		soft.assertTrue(!metadataPopup.isParticipantSchemeEnabled(),"participantScheme field is enabled for an existing service group in service metadata popup");
-		soft.assertFalse(metadataWizard.isEnableOkBtn(),"OK button is enable before providing the valid data");
-		metadataWizard.fillForm(generator,generator,generator,generator,"bdxr-transport-ebms3-as4-v1p0","internal/rest/domain");
+
+		soft.assertFalse(metadataWizard.isEnabledOkBtn(), "OK button is enabled before providing the valid data");
+		metadataWizard.fillForm(generator, generator, generator, generator, "bdxr-transport-ebms3-as4-v1p0", "internal/rest/domain");
 		metadataWizard.fillCerificateBox(generator);
-		soft.assertTrue(metadataWizard.isEnableOkBtn(),"OK button is disable after providing the valid data");
+		soft.assertTrue(metadataWizard.isEnabledOkBtn(), "OK button is disabled after providing the valid data");
 
 		soft.assertAll();
 
diff --git a/smp-ui-tests/src/test/java/ui/LoginPgTest.java b/smp-ui-tests/src/test/java/ui/LoginPgTest.java
index 1dc0d7f79f34c6bb70c8379818bfd41f239de6ba..db5617e0c6e191f9c535e22a77e0bad37c01826d 100644
--- a/smp-ui-tests/src/test/java/ui/LoginPgTest.java
+++ b/smp-ui-tests/src/test/java/ui/LoginPgTest.java
@@ -1,16 +1,14 @@
 package ui;
 
 import org.openqa.selenium.JavascriptExecutor;
-import org.testng.SkipException;
 import org.testng.annotations.AfterMethod;
 import org.testng.annotations.Test;
 import org.testng.asserts.SoftAssert;
+import pages.components.baseComponents.SMPPage;
 import pages.components.messageArea.AlertMessage;
+import pages.login.LoginPage;
 import pages.password.PasswordChangepopup;
 import pages.service_groups.search.SearchPage;
-import pages.components.baseComponents.SMPPage;
-import pages.login.LoginPage;
-import pages.users.UserPopup;
 import pages.users.UsersPage;
 import utils.Generator;
 import utils.enums.SMPMessages;
@@ -182,8 +180,7 @@ public class LoginPgTest extends BaseTest {
 	}
 
 	@Test(description = "LGN-80")
-	public void verifyLoginButtonEnable()
-	{
+	public void verifyLoginButtonEnable() {
 		SoftAssert soft = new SoftAssert();
 		SearchPage page = new SearchPage(driver);
 		logger.info("Going to login page");
@@ -196,8 +193,7 @@ public class LoginPgTest extends BaseTest {
 	}
 
 	@Test(description = "LGN-90")
-	public void verifyRoleAfterLogin()
-	{
+	public void verifyRoleAfterLogin() {
 		SoftAssert soft = new SoftAssert();
 
 		SMPPage page = new SMPPage(driver);
@@ -209,14 +205,13 @@ public class LoginPgTest extends BaseTest {
 		SearchPage searchPage = loginPage.login(user.get("username"), user.get("password"));
 		soft.assertTrue(searchPage.pageHeader.sandwichMenu.isLoggedIn(), "User is logged in");
 		String roleName = page.pageHeader.getRoleName();
-		soft.assertEquals(roleName , "System administrator" , "the role doesn't contain System administrator");
+		soft.assertEquals(roleName, "System administrator", "the role doesn't contain System administrator");
 
 		soft.assertAll();
 	}
 
 	@Test(description = "LGN-100")
-	public void loggedUserPasswordDialogView()
-	{
+	public void loggedUserPasswordDialogView() {
 		SoftAssert soft = new SoftAssert();
 
 
@@ -236,9 +231,9 @@ public class LoginPgTest extends BaseTest {
 		soft.assertTrue(searchPage.isLoaded(), "Search page is not loaded");
 
 		PasswordChangepopup passPopup = searchPage.pageHeader.sandwichMenu.clickChangePasswordOption();
-		soft.assertTrue(passPopup.isCurrentPasswordInputEnable(),"Current password input is not enable in the password dialog for logged user");
-		soft.assertTrue(passPopup.isNewPasswordInputEnable(),"New password input is not enable in the password dialog for logged user");
-		soft.assertTrue(passPopup.isConfirmPasswordInputEnable(),"Confirm password input is not enable in the password dialog for logged user");
+		soft.assertTrue(passPopup.isCurrentPasswordInputEnable(), "Current password input is not enabled in the password dialog for logged user");
+		soft.assertTrue(passPopup.isNewPasswordInputEnable(), "New password input is not enabled in the password dialog for logged user");
+		soft.assertTrue(passPopup.isConfirmPasswordInputEnable(), "Confirm password input is not enabled in the password dialog for logged user");
 
 		searchPage = passPopup.clickClosePasswordDialog();
 
@@ -248,14 +243,13 @@ public class LoginPgTest extends BaseTest {
 
 
 	@Test(description = "LGN-100")
-	public void passwordChangeForLoggedUser()
-	{
+	public void passwordChangeForLoggedUser() {
 		SoftAssert soft = new SoftAssert();
 		String userName = Generator.randomAlphaNumeric(10);
 		String validPass = "Aabcdefghijklm1@";
 
 		SMPPage page = genericLoginProcedure("SYS_ADMIN");
-		SMPRestClient.createUser(userName,"SMP_ADMIN");
+		SMPRestClient.createUser(userName, "SMP_ADMIN");
 		logger.info("created user " + userName);
 		page.pageHeader.sandwichMenu.logout();
 		page.pageHeader.goToLogin();
@@ -263,20 +257,15 @@ public class LoginPgTest extends BaseTest {
 		SearchPage searchPage = loginPage.login(userName, "QW!@qw12");
 		PasswordChangepopup passDialog = searchPage.pageHeader.sandwichMenu.clickChangePasswordOption();
 
-		try {
-			Thread.sleep(1000);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
+		passDialog.waitForXMillis(1000);
 
 		passDialog.fillDataForLoggedUser("QW!@qw12", validPass, validPass);
 		passDialog.clickChangedPassword();
-		 searchPage = passDialog.clickCloseAfterChangedPassForLoggedUser();
-		try {
-			Thread.sleep(10000);
-		} catch (Exception e) {
-		}
-		soft.assertTrue(searchPage.isLoaded(),"After changing the password for a logged user the page is not redirecting to searchpage");
+		searchPage = passDialog.clickCloseAfterChangedPassForLoggedUser();
+
+		passDialog.waitForXMillis(1000);
+
+		soft.assertTrue(searchPage.isLoaded(), "After changing the password for a logged user the page is not redirecting to searchpage");
 		SMPPage page1 = genericLoginProcedure("SYS_ADMIN");
 		logger.info("Going to Users page");
 		page1.sidebar.goToPage(UsersPage.class);
diff --git a/smp-ui-tests/src/test/java/ui/PropertiesPgTest.java b/smp-ui-tests/src/test/java/ui/PropertiesPgTest.java
index 768dab82c6b8c6a1801ffc7878ec3473638cc61d..5ac66daa0c0f9040ef95a33f747d727277f1aae5 100644
--- a/smp-ui-tests/src/test/java/ui/PropertiesPgTest.java
+++ b/smp-ui-tests/src/test/java/ui/PropertiesPgTest.java
@@ -73,8 +73,8 @@ public class PropertiesPgTest extends BaseTest {
 
 		servicePopup.clickOK();
 
-		soft.assertTrue(editPage.isSaveButtonEnabled(), "Save button is not enable after cration of servicegroup without scheme");
-		soft.assertTrue(editPage.isCancelButtonEnabled(), "Cancel button is not enable after cration of servicegroup without scheme");
+		soft.assertTrue(editPage.isSaveButtonEnabled(), "Save button is not enabled after cration of servicegroup without scheme");
+		soft.assertTrue(editPage.isCancelButtonEnabled(), "Cancel button is not enabled after cration of servicegroup without scheme");
 		editPage.clickSave().confirm();
 		;
 
diff --git a/smp-ui-tests/src/test/java/ui/SearchPgTest.java b/smp-ui-tests/src/test/java/ui/SearchPgTest.java
index cb709ae2ddeed533dc1da4dcc25bd1e23c6c8796..93f2618e8f358efef844e5e259687d65d8e6d11a 100644
--- a/smp-ui-tests/src/test/java/ui/SearchPgTest.java
+++ b/smp-ui-tests/src/test/java/ui/SearchPgTest.java
@@ -21,371 +21,371 @@ import java.util.Set;
 
 public class SearchPgTest extends BaseTest {
 
-    @AfterMethod
-    public void resetFilters() {
-        SMPPage page = new SMPPage(driver);
-        page.refreshPage();
-        page.waitForXMillis(500);
-
-    }
-
-    @Test(description = "SRCH-0")
-    public void searchPgInitialState() {
-        SoftAssert soft = new SoftAssert();
-
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
-        soft.assertTrue(page.filters.isSearchButtonVisible(), "Search button is not visible");
-        soft.assertTrue(page.filters.isSearchButtonEnable(), "Search button is not enable");
-        soft.assertTrue(page.filters.getParticipantIdentifierInputValue().isEmpty());
-        soft.assertTrue(page.filters.getParticipantSchemeInputValue().isEmpty());
-        soft.assertEquals(page.filters.domainSelect.getSelectedValue(), "All Domains");
-
-        soft.assertAll();
-    }
-
-    @Test(description = "SRCH-10")
-    public void domainSelectContent() {
-        SoftAssert soft = new SoftAssert();
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
-
-        List<String> uiDomains = page.filters.domainSelect.getOptionTexts();
-        List<String> restDomains = SMPRestClient.getDomainAndSubdomains();
-
-        for (String restDomain : restDomains) {
-            boolean found = false;
-            for (String uiDomain : uiDomains) {
-                if (uiDomain.equalsIgnoreCase(restDomain)) {
-                    found = true;
-                }
-            }
-            soft.assertTrue(found, "Domain was found in domain dropdown " + restDomain);
-        }
-
-        soft.assertAll();
-
-    }
-
-    @Test(description = "SRCH-20")
-    public void searchGridInitialState() {
-        SoftAssert soft = new SoftAssert();
-
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
-
-        List<String> headers = page.getServiceGroupGrid().getHeaders();
-        soft.assertTrue(headers.contains("Participant identifier"));
-        soft.assertTrue(headers.contains("Participant scheme"));
-        soft.assertTrue(headers.contains("OASIS ServiceGroup URL"));
-        soft.assertTrue(headers.contains("Metadata size"));
-
-        soft.assertAll();
-    }
-
-    @Test(description = "SRCH-30")
-    public void searchFilterResults() {
-        SoftAssert soft = new SoftAssert();
-
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
-
-        ServiceGroupRow row0 = page.getServiceGroupGrid().getRows().get(0);
-        String pScheme = row0.getParticipantScheme();
-        String pIdentifier = row0.getParticipantIdentifier();
+	@AfterMethod
+	public void resetFilters() {
+		SMPPage page = new SMPPage(driver);
+		page.refreshPage();
+		page.waitForXMillis(500);
+
+	}
+
+	@Test(description = "SRCH-0")
+	public void searchPgInitialState() {
+		SoftAssert soft = new SoftAssert();
+
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
+		soft.assertTrue(page.filters.isSearchButtonVisible(), "Search button is not visible");
+		soft.assertTrue(page.filters.isSearchButtonEnable(), "Search button is not enabled");
+		soft.assertTrue(page.filters.getParticipantIdentifierInputValue().isEmpty());
+		soft.assertTrue(page.filters.getParticipantSchemeInputValue().isEmpty());
+		soft.assertEquals(page.filters.domainSelect.getSelectedValue(), "All Domains");
+
+		soft.assertAll();
+	}
+
+	@Test(description = "SRCH-10")
+	public void domainSelectContent() {
+		SoftAssert soft = new SoftAssert();
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
+
+		List<String> uiDomains = page.filters.domainSelect.getOptionTexts();
+		List<String> restDomains = SMPRestClient.getDomainAndSubdomains();
+
+		for (String restDomain : restDomains) {
+			boolean found = false;
+			for (String uiDomain : uiDomains) {
+				if (uiDomain.equalsIgnoreCase(restDomain)) {
+					found = true;
+				}
+			}
+			soft.assertTrue(found, "Domain was found in domain dropdown " + restDomain);
+		}
+
+		soft.assertAll();
+
+	}
+
+	@Test(description = "SRCH-20")
+	public void searchGridInitialState() {
+		SoftAssert soft = new SoftAssert();
+
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
+
+		List<String> headers = page.getServiceGroupGrid().getHeaders();
+		soft.assertTrue(headers.contains("Participant identifier"));
+		soft.assertTrue(headers.contains("Participant scheme"));
+		soft.assertTrue(headers.contains("OASIS ServiceGroup URL"));
+		soft.assertTrue(headers.contains("Metadata size"));
+
+		soft.assertAll();
+	}
+
+	@Test(description = "SRCH-30")
+	public void searchFilterResults() {
+		SoftAssert soft = new SoftAssert();
+
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
+
+		ServiceGroupRow row0 = page.getServiceGroupGrid().getRows().get(0);
+		String pScheme = row0.getParticipantScheme();
+		String pIdentifier = row0.getParticipantIdentifier();
 
 //		looking for exact match
-        page.filters.filter(pIdentifier, pScheme, "");
+		page.filters.filter(pIdentifier, pScheme, "");
 
-        List<ServiceGroupRow> rows = page.getServiceGroupGrid().getRows();
+		List<ServiceGroupRow> rows = page.getServiceGroupGrid().getRows();
 
-        for (ServiceGroupRow row : rows) {
-            soft.assertTrue(row.getParticipantIdentifier().contains(pIdentifier));
-            soft.assertTrue(row.getParticipantScheme().contains(pScheme));
-        }
+		for (ServiceGroupRow row : rows) {
+			soft.assertTrue(row.getParticipantIdentifier().contains(pIdentifier));
+			soft.assertTrue(row.getParticipantScheme().contains(pScheme));
+		}
 
 //		Search for substring
-        page.filters.filter(pIdentifier.substring(2), pScheme.substring(2), "");
-        rows = page.getServiceGroupGrid().getRows();
+		page.filters.filter(pIdentifier.substring(2), pScheme.substring(2), "");
+		rows = page.getServiceGroupGrid().getRows();
 
-        for (ServiceGroupRow row : rows) {
+		for (ServiceGroupRow row : rows) {
 
-            String identifier = row.getParticipantIdentifier();
-            String scheme = row.getParticipantScheme();
+			String identifier = row.getParticipantIdentifier();
+			String scheme = row.getParticipantScheme();
 
-            soft.assertTrue(identifier.contains(pIdentifier), String.format("Identifier %s, found %s", pIdentifier, identifier));
-            soft.assertTrue(scheme.contains(pScheme), String.format("Scheme %s, found %s", pScheme, scheme));
-        }
+			soft.assertTrue(identifier.contains(pIdentifier), String.format("Identifier %s, found %s", pIdentifier, identifier));
+			soft.assertTrue(scheme.contains(pScheme), String.format("Scheme %s, found %s", pScheme, scheme));
+		}
 
-        soft.assertAll();
-    }
+		soft.assertAll();
+	}
 
-    @Test(description = "SRCH-40")
-    public void openURLLink() {
-        SoftAssert soft = new SoftAssert();
+	@Test(description = "SRCH-40")
+	public void openURLLink() {
+		SoftAssert soft = new SoftAssert();
 
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
 
-        ServiceGroupRow row0 = page.getServiceGroupGrid().getRows().get(0);
-        String listedURL = row0.getServiceGroupURL();
-        String pScheme = row0.getParticipantScheme();
-        String pIdentifier = row0.getParticipantIdentifier();
+		ServiceGroupRow row0 = page.getServiceGroupGrid().getRows().get(0);
+		String listedURL = row0.getServiceGroupURL();
+		String pScheme = row0.getParticipantScheme();
+		String pIdentifier = row0.getParticipantIdentifier();
 
 //		verify proper URL format
-        String tmpURLPart = null;
-        try {
-            tmpURLPart = URLDecoder.decode(listedURL, "UTF-8").split("smp/")[1].trim();
-            soft.assertEquals(tmpURLPart, pScheme + "::" + pIdentifier, "URL contains the proper scheme and identifier");
-        } catch (UnsupportedEncodingException e) {
-            e.printStackTrace();
-        }
+		String tmpURLPart = null;
+		try {
+			tmpURLPart = URLDecoder.decode(listedURL, "UTF-8").split("smp/")[1].trim();
+			soft.assertEquals(tmpURLPart, pScheme + "::" + pIdentifier, "URL contains the proper scheme and identifier");
+		} catch (UnsupportedEncodingException e) {
+			e.printStackTrace();
+		}
 
-        ServiceGroup serviceGroup = SMPRestClient.getServiceGroup(listedURL);
+		ServiceGroup serviceGroup = SMPRestClient.getServiceGroup(listedURL);
 
-        soft.assertTrue(row0.getMetadataSize() == serviceGroup.getServiceMetadataReferenceCollection().size(),
-                "Number of listed MetadataReferences in XML matches UI");
+		soft.assertTrue(row0.getMetadataSize() == serviceGroup.getServiceMetadataReferenceCollection().size(),
+				"Number of listed MetadataReferences in XML matches UI");
 
 
-        soft.assertAll();
-    }
+		soft.assertAll();
+	}
 
 
-    @Test(description = "SRCH-50")
-    @Ignore
-    public void expandServiceGroupCheckMetadata() {
-        SoftAssert soft = new SoftAssert();
+	@Test(description = "SRCH-50")
+	@Ignore
+	public void expandServiceGroupCheckMetadata() {
+		SoftAssert soft = new SoftAssert();
 
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
 
-        ServiceGroupRow row0 = page.getServiceGroupGrid().getRows().get(0);
-        String listedURL = row0.getServiceGroupURL();
-        String pScheme = row0.getParticipantScheme();
-        String pIdentifier = row0.getParticipantIdentifier();
+		ServiceGroupRow row0 = page.getServiceGroupGrid().getRows().get(0);
+		String listedURL = row0.getServiceGroupURL();
+		String pScheme = row0.getParticipantScheme();
+		String pIdentifier = row0.getParticipantIdentifier();
 
 //		verify proper URL format
-        ServiceGroup serviceGroup = SMPRestClient.getServiceGroup(listedURL);
+		ServiceGroup serviceGroup = SMPRestClient.getServiceGroup(listedURL);
 
-        MetadataGrid metadataGrid = row0.expandMetadata();
+		MetadataGrid metadataGrid = row0.expandMetadata();
 
-        List<MetadataRow> metadataRows = metadataGrid.getMetadataRows();
+		List<MetadataRow> metadataRows = metadataGrid.getMetadataRows();
 
-        soft.assertTrue(row0.getMetadataSize() == metadataRows.size(), "Metadata size field compared with the size of the list containing the metadata");
+		soft.assertTrue(row0.getMetadataSize() == metadataRows.size(), "Metadata size field compared with the size of the list containing the metadata");
 
-        for (MetadataRow metadataRow : metadataRows) {
-            String docScheme = metadataRow.getDocumentIdentifierScheme();
-            String docId = metadataRow.getDocumentIdentifier();
-            String url = metadataRow.getURL();
+		for (MetadataRow metadataRow : metadataRows) {
+			String docScheme = metadataRow.getDocumentIdentifierScheme();
+			String docId = metadataRow.getDocumentIdentifier();
+			String url = metadataRow.getURL();
 
-            soft.assertTrue(url.contains(String.format("%s::%s/services/%s::%s", pScheme, pIdentifier, docScheme, docId)), "Checking URL format for metadata " + docId);
+			soft.assertTrue(url.contains(String.format("%s::%s/services/%s::%s", pScheme, pIdentifier, docScheme, docId)), "Checking URL format for metadata " + docId);
 
 
-            String metadata = SMPRestClient.getMetadataString(url);
+			String metadata = SMPRestClient.getMetadataString(url);
 
-            soft.assertTrue(metadata.contains(pScheme), "Checking XML contains proper participant scheme for metadata " + docId);
-            soft.assertTrue(metadata.contains(pIdentifier), "Checking XML contains proper participant ID for metadata " + docId);
-            soft.assertTrue(metadata.toLowerCase().contains(docId.toLowerCase()), "Checking XML contains proper document ID for metadata " + docId);
-            soft.assertTrue(metadata.contains(docScheme), "Checking XML contains proper document scheme for metadata " + docId);
+			soft.assertTrue(metadata.contains(pScheme), "Checking XML contains proper participant scheme for metadata " + docId);
+			soft.assertTrue(metadata.contains(pIdentifier), "Checking XML contains proper participant ID for metadata " + docId);
+			soft.assertTrue(metadata.toLowerCase().contains(docId.toLowerCase()), "Checking XML contains proper document ID for metadata " + docId);
+			soft.assertTrue(metadata.contains(docScheme), "Checking XML contains proper document scheme for metadata " + docId);
 
 
-        }
+		}
 
-        soft.assertAll();
-    }
+		soft.assertAll();
+	}
 
-    @Test(description = "SRCH-60")
-    public void collapseMetadata() {
-        SoftAssert soft = new SoftAssert();
+	@Test(description = "SRCH-60")
+	public void collapseMetadata() {
+		SoftAssert soft = new SoftAssert();
 
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
 
-        ServiceGroupRow row0 = null;
-        List<ServiceGroupRow> rows = page.getServiceGroupGrid().getRows();
-        for (int i = 0; i < rows.size(); i++) {
-            if (rows.get(i).getMetadataSize() > 0) {
-                row0 = rows.get(i);
-            }
-        }
+		ServiceGroupRow row0 = null;
+		List<ServiceGroupRow> rows = page.getServiceGroupGrid().getRows();
+		for (int i = 0; i < rows.size(); i++) {
+			if (rows.get(i).getMetadataSize() > 0) {
+				row0 = rows.get(i);
+			}
+		}
 
-        if (null == row0) {
-            row0 = rows.get(0);
-            SMPRestClient.createMetadata(row0.getParticipantIdentifier());
-            page.refreshPage();
-            logger.info("Created Metadata for row 0");
-            row0 = page.getServiceGroupGrid().getRows().get(0);
-        }
+		if (null == row0) {
+			row0 = rows.get(0);
+			SMPRestClient.createMetadata(row0.getParticipantIdentifier());
+			page.refreshPage();
+			logger.info("Created Metadata for row 0");
+			row0 = page.getServiceGroupGrid().getRows().get(0);
+		}
 
 
-        soft.assertTrue(row0.verifyMetadataExpandButton(), "Initially the row has expanding symbol on it");
-        row0.expandMetadata();
+		soft.assertTrue(row0.verifyMetadataExpandButton(), "Initially the row has expanding symbol on it");
+		row0.expandMetadata();
 
-        soft.assertTrue(row0.verifyMetadataCollapseButton(), "Row has collapsing symbol on it after first click");
+		soft.assertTrue(row0.verifyMetadataCollapseButton(), "Row has collapsing symbol on it after first click");
 
-        row0.collapseMetadata();
-        soft.assertTrue(row0.verifyMetadataExpandButton(), "Row has expanding symbol on it after collapse");
-        soft.assertFalse(row0.isMetadataExpanded(), "Metadata table is not present no more");
+		row0.collapseMetadata();
+		soft.assertTrue(row0.verifyMetadataExpandButton(), "Row has expanding symbol on it after collapse");
+		soft.assertFalse(row0.isMetadataExpanded(), "Metadata table is not present no more");
 
-        soft.assertAll();
-    }
+		soft.assertAll();
+	}
 
-    @Test(description = "SRCH-70")
-    public void verifyOpenMetadataURL() {
-        SoftAssert soft = new SoftAssert();
+	@Test(description = "SRCH-70")
+	public void verifyOpenMetadataURL() {
+		SoftAssert soft = new SoftAssert();
 
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
 
-        ServiceGroupRow row0 = null;
-        List<ServiceGroupRow> rows = page.getServiceGroupGrid().getRows();
-        for (int i = 0; i < rows.size(); i++) {
-            if (rows.get(i).getMetadataSize() > 0) {
-                row0 = rows.get(i);
-            }
-        }
+		ServiceGroupRow row0 = null;
+		List<ServiceGroupRow> rows = page.getServiceGroupGrid().getRows();
+		for (int i = 0; i < rows.size(); i++) {
+			if (rows.get(i).getMetadataSize() > 0) {
+				row0 = rows.get(i);
+			}
+		}
 
-        if (null == row0) {
-            row0 = rows.get(0);
-            SMPRestClient.createMetadata(row0.getParticipantIdentifier());
-            page.refreshPage();
-            logger.info("Created Metadata for row 0");
-            row0 = page.getServiceGroupGrid().getRows().get(0);
-        }
+		if (null == row0) {
+			row0 = rows.get(0);
+			SMPRestClient.createMetadata(row0.getParticipantIdentifier());
+			page.refreshPage();
+			logger.info("Created Metadata for row 0");
+			row0 = page.getServiceGroupGrid().getRows().get(0);
+		}
 
-        String listedURL = row0.getServiceGroupURL();
-        String pScheme = row0.getParticipantScheme();
-        String pIdentifier = row0.getParticipantIdentifier();
+		String listedURL = row0.getServiceGroupURL();
+		String pScheme = row0.getParticipantScheme();
+		String pIdentifier = row0.getParticipantIdentifier();
 
 //		verify proper URL format
-        ServiceGroup serviceGroup = SMPRestClient.getServiceGroup(listedURL);
+		ServiceGroup serviceGroup = SMPRestClient.getServiceGroup(listedURL);
 
-        MetadataGrid metadataGrid = row0.expandMetadata();
+		MetadataGrid metadataGrid = row0.expandMetadata();
 
-        List<MetadataRow> metadataRows = metadataGrid.getMetadataRows();
+		List<MetadataRow> metadataRows = metadataGrid.getMetadataRows();
 
-        soft.assertTrue(row0.getMetadataSize() == metadataRows.size(), "Metadata size field compared with the size of the list containing the metadata");
+		soft.assertTrue(row0.getMetadataSize() == metadataRows.size(), "Metadata size field compared with the size of the list containing the metadata");
 
-        for (MetadataRow metadataRow : metadataRows) {
-            String docScheme = metadataRow.getDocumentIdentifierScheme();
-            String docId = metadataRow.getDocumentIdentifier();
-            String url = null;
-            try {
-                url = URLDecoder.decode(metadataRow.getURL(), "UTF-8");
-            } catch (UnsupportedEncodingException e) {
-                e.printStackTrace();
-            }
+		for (MetadataRow metadataRow : metadataRows) {
+			String docScheme = metadataRow.getDocumentIdentifierScheme();
+			String docId = metadataRow.getDocumentIdentifier();
+			String url = null;
+			try {
+				url = URLDecoder.decode(metadataRow.getURL(), "UTF-8");
+			} catch (UnsupportedEncodingException e) {
+				e.printStackTrace();
+			}
 
-            soft.assertTrue(url.contains(String.format("%s::%s/services/%s::%s", pScheme, pIdentifier, docScheme, docId)), "Checking URL format for metadata " + docId);
+			soft.assertTrue(url.contains(String.format("%s::%s/services/%s::%s", pScheme, pIdentifier, docScheme, docId)), "Checking URL format for metadata " + docId);
 
-            String mainWindow = driver.getWindowHandle();
+			String mainWindow = driver.getWindowHandle();
 
-            metadataRow.clickURL();
-            page.waitForNumberOfWindowsToBe(2);
-            Set<String> handleSet = driver.getWindowHandles();
-            String[] handles = handleSet.toArray(new String[handleSet.size()]);
+			metadataRow.clickURL();
+			page.waitForNumberOfWindowsToBe(2);
+			Set<String> handleSet = driver.getWindowHandles();
+			String[] handles = handleSet.toArray(new String[handleSet.size()]);
 
-            soft.assertTrue(handles.length == 2);
+			soft.assertTrue(handles.length == 2);
 
-            driver.switchTo().window(handles[1]);
-            driver.close();
-            driver.switchTo().window(handles[0]);
+			driver.switchTo().window(handles[1]);
+			driver.close();
+			driver.switchTo().window(handles[0]);
 
-        }
+		}
 
-        soft.assertAll();
-    }
+		soft.assertAll();
+	}
 
-    @Test(description = "SRCH-80")
-    public void filterByDifferentDomains() {
-        SoftAssert soft = new SoftAssert();
+	@Test(description = "SRCH-80")
+	public void filterByDifferentDomains() {
+		SoftAssert soft = new SoftAssert();
 
-        String participantID = Generator.randomAlphaNumeric(5);
-        String tmp = Generator.randomAlphaNumeric(3).toLowerCase();
-        String participantScheme = String.format("%s-%s-%s", tmp, tmp, tmp);
+		String participantID = Generator.randomAlphaNumeric(5);
+		String tmp = Generator.randomAlphaNumeric(3).toLowerCase();
+		String participantScheme = String.format("%s-%s-%s", tmp, tmp, tmp);
 
-        List<String> domains = Arrays.asList(createdDomains.get(0), createdDomains.get(1));
-        List<String> owners = Arrays.asList(createdUsers.get(0));
+		List<String> domains = Arrays.asList(createdDomains.get(0), createdDomains.get(1));
+		List<String> owners = Arrays.asList(createdUsers.get(0));
 
-        logger.info("Creating service group with participant id: " + participantID);
-        SMPRestClient.createServiceGroup(participantID, participantScheme, owners, domains);
+		logger.info("Creating service group with participant id: " + participantID);
+		SMPRestClient.createServiceGroup(participantID, participantScheme, owners, domains);
 
-        SearchPage searchPage = new SearchPage(driver);
-        searchPage.refreshPage();
+		SearchPage searchPage = new SearchPage(driver);
+		searchPage.refreshPage();
 
-        searchPage.filters.filter(participantID, participantScheme, SMPRestClient.getDomainSubDomainCombo(createdDomains.get(0)));
-        List<ServiceGroupRow> results = searchPage.getServiceGroupGrid().getRows();
+		searchPage.filters.filter(participantID, participantScheme, SMPRestClient.getDomainSubDomainCombo(createdDomains.get(0)));
+		List<ServiceGroupRow> results = searchPage.getServiceGroupGrid().getRows();
 
-        soft.assertEquals(results.size(), 1, "Results size is 1 (first search)");
-        soft.assertEquals(results.get(0).getParticipantIdentifier().toLowerCase(), participantID.toLowerCase(),
-                "First and only result is the one we entered and is found when filtering by first domain");
+		soft.assertEquals(results.size(), 1, "Results size is 1 (first search)");
+		soft.assertEquals(results.get(0).getParticipantIdentifier().toLowerCase(), participantID.toLowerCase(),
+				"First and only result is the one we entered and is found when filtering by first domain");
 
 
-        searchPage.filters.filter(participantID, participantScheme, SMPRestClient.getDomainSubDomainCombo(createdDomains.get(1)));
-        results = searchPage.getServiceGroupGrid().getRows();
+		searchPage.filters.filter(participantID, participantScheme, SMPRestClient.getDomainSubDomainCombo(createdDomains.get(1)));
+		results = searchPage.getServiceGroupGrid().getRows();
 
-        soft.assertEquals(results.size(), 1, "Results size is 1 (second search)");
-        soft.assertEquals(results.get(0).getParticipantIdentifier().toLowerCase(), participantID.toLowerCase(),
-                "First and only result is the one we entered and is found when filtering by second domain");
+		soft.assertEquals(results.size(), 1, "Results size is 1 (second search)");
+		soft.assertEquals(results.get(0).getParticipantIdentifier().toLowerCase(), participantID.toLowerCase(),
+				"First and only result is the one we entered and is found when filtering by second domain");
 
 
-        SMPRestClient.deleteSG(participantID);
+		SMPRestClient.deleteSG(participantID);
 
-        soft.assertAll();
-    }
+		soft.assertAll();
+	}
 
-    @Test(description = "SRCH-90")
-    public void verifyDifferentParticipantIdAndSchemeResult() {
-        SoftAssert soft = new SoftAssert();
+	@Test(description = "SRCH-90")
+	public void verifyDifferentParticipantIdAndSchemeResult() {
+		SoftAssert soft = new SoftAssert();
 
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
-        String emptyMsg = "No data to display";
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
+		String emptyMsg = "No data to display";
 
-        ServiceGroupRow row0 = page.getServiceGroupGrid().getRows().get(0);
-        String pScheme = row0.getParticipantScheme();
+		ServiceGroupRow row0 = page.getServiceGroupGrid().getRows().get(0);
+		String pScheme = row0.getParticipantScheme();
 
-        ServiceGroupRow row1 = page.getServiceGroupGrid().getRows().get(1);
-        String pIdentifier = row1.getParticipantIdentifier();
+		ServiceGroupRow row1 = page.getServiceGroupGrid().getRows().get(1);
+		String pIdentifier = row1.getParticipantIdentifier();
 
-        page.filters.filter(pIdentifier, pScheme, "");
+		page.filters.filter(pIdentifier, pScheme, "");
 
-        soft.assertEquals(page.getServiceGroupGrid().getEmptyTableText(), emptyMsg, "empty table not found");
-        soft.assertAll();
-    }
+		soft.assertEquals(page.getServiceGroupGrid().getEmptyTableText(), emptyMsg, "empty table not found");
+		soft.assertAll();
+	}
 
-    @Test(description = "SRCH-100")
-    public void metadataTableContent() {
-        SoftAssert soft = new SoftAssert();
+	@Test(description = "SRCH-100")
+	public void metadataTableContent() {
+		SoftAssert soft = new SoftAssert();
 
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
-        ServiceGroupRow row0 = null;
-        List<ServiceGroupRow> rows = page.getServiceGroupGrid().getRows();
-        row0 = rows.get(0);
-        MetadataGrid metadataGrid = row0.expandMetadata();
-        List<MetadataRow> metadataRows = metadataGrid.getMetadataRows();
-        if (row0.getMetadataSize() == 0) {
-            //row0.emptyMetadataContentText()
-            soft.assertEquals(row0.emptyMetadataContentText(), "No service metadata");
-        } else {
-            if (row0.getMetadataSize() > 0) {
-                soft.assertTrue(row0.getMetadataSize() == metadataRows.size(), "metadata size is not equal to no of metadata present inside the corressponding row");
-            }
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
+		ServiceGroupRow row0 = null;
+		List<ServiceGroupRow> rows = page.getServiceGroupGrid().getRows();
+		row0 = rows.get(0);
+		MetadataGrid metadataGrid = row0.expandMetadata();
+		List<MetadataRow> metadataRows = metadataGrid.getMetadataRows();
+		if (row0.getMetadataSize() == 0) {
+			//row0.emptyMetadataContentText()
+			soft.assertEquals(row0.emptyMetadataContentText(), "No service metadata");
+		} else {
+			if (row0.getMetadataSize() > 0) {
+				soft.assertTrue(row0.getMetadataSize() == metadataRows.size(), "metadata size is not equal to no of metadata present inside the corressponding row");
+			}
 
-        }
-        soft.assertAll();
-    }
+		}
+		soft.assertAll();
+	}
 
-    @Test(description = "SRCH-101")
-    public void verifyCollapsingSidebarPageAfterLogin() {
-        SoftAssert soft = new SoftAssert();
-        SearchPage page = new SearchPage(driver);
-        soft.assertTrue(page.isLoaded());
-        page.sidebar.collapsingSideBar();
-        soft.assertFalse(page.sidebar.isSidebarSearchTextEnable(), "Search button is visible so sidebar page is not collpased");
-        page.sidebar.expandingSideBar();
-        soft.assertTrue(page.sidebar.isSidebarSearchTextEnable(), "Search button is not visible so sidebar page is not expanding");
-        soft.assertAll();
-    }
+	@Test(description = "SRCH-101")
+	public void verifyCollapsingSidebarPageAfterLogin() {
+		SoftAssert soft = new SoftAssert();
+		SearchPage page = new SearchPage(driver);
+		soft.assertTrue(page.isLoaded());
+		page.sidebar.collapsingSideBar();
+		soft.assertFalse(page.sidebar.isSidebarSearchTextEnable(), "Search button is visible so sidebar page is not collpased");
+		page.sidebar.expandingSideBar();
+		soft.assertTrue(page.sidebar.isSidebarSearchTextEnable(), "Search button is not visible so sidebar page is not expanding");
+		soft.assertAll();
+	}
 }
diff --git a/smp-ui-tests/src/test/java/ui/UsersPgTest.java b/smp-ui-tests/src/test/java/ui/UsersPgTest.java
index 69b4f9dd18275f549e677c8cb260435529662149..151763ef64b0e2dc51a1312967ad8ca35307306e 100644
--- a/smp-ui-tests/src/test/java/ui/UsersPgTest.java
+++ b/smp-ui-tests/src/test/java/ui/UsersPgTest.java
@@ -23,738 +23,713 @@ import java.util.List;
 public class UsersPgTest extends BaseTest {
 
 
-    @AfterMethod
-    public void logoutAndReset() {
-        genericLogoutProcedure();
-    }
+	@AfterMethod
+	public void logoutAndReset() {
+		genericLogoutProcedure();
+	}
 
 
-    @BeforeMethod
-    public void loginAndGoToUsersPage() {
+	@BeforeMethod
+	public void loginAndGoToUsersPage() {
 
-        SMPPage page = genericLoginProcedure("SYS_ADMIN");
+		SMPPage page = genericLoginProcedure("SYS_ADMIN");
 
-        logger.info("Going to Users page");
-        page.sidebar.goToPage(UsersPage.class);
-    }
+		logger.info("Going to Users page");
+		page.sidebar.goToPage(UsersPage.class);
+	}
 
-    @Test(description = "USR-0")
-    public void existingUserPasswordDialogView() {
-        SoftAssert soft = new SoftAssert();
-        String username = Generator.randomAlphaNumeric(10);
-        String email = "system@gmail.com";
-        UsersPage usersPage = new UsersPage(driver);
-        UserPopup popup = usersPage.clickNew();
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
-        popup.fillDetailsForm(username,email);
-        popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
-        popup.clickOK();
-        soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled");
-        soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled");
+	@Test(description = "USR-0")
+	public void existingUserPasswordDialogView() {
+		SoftAssert soft = new SoftAssert();
+		String username = Generator.randomAlphaNumeric(10);
+		String email = "system@gmail.com";
+		UsersPage usersPage = new UsersPage(driver);
+		UserPopup popup = usersPage.clickNew();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
+		popup.fillDetailsForm(username, email);
+		popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
+		popup.clickOK();
+		soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled");
+		soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled");
 
-        usersPage.clickSave().confirm();
+		usersPage.clickSave().confirm();
 
-        soft.assertTrue(!usersPage.alertArea.getAlertMessage().isError(), "Message listed is success");
-        soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
+		soft.assertTrue(!usersPage.alertArea.getAlertMessage().isError(), "Message listed is success");
+		soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
 
-        soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
+		soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
 
-        int index = usersPage.grid().scrollToUser(username);
+		int index = usersPage.grid().scrollToUser(username);
 
-        usersPage.grid().selectRow(index);
-        popup = usersPage.clickEdit();
+		usersPage.grid().selectRow(index);
+		popup = usersPage.clickEdit();
 
-        popup.clickSetOrChangePassword();
-        //PasswordChangepopup passPopup = searchPage.pageHeader.sandwichMenu.clickChangePasswordOption();
-        soft.assertTrue(popup.isAdminPasswordInputEnable(), "Admin password field input is not enabled after open password change popup for an existing user");
-        soft.assertTrue(popup.isNewPasswordInputEnable(), "New password field input is not enabled after open password change popup for an existing user");
-        soft.assertTrue(popup.isConfirmPasswordInputEnable(), "Confirm password field input is not enabled after open password change popup for an existing user");
+		popup.clickSetOrChangePassword();
+		soft.assertTrue(popup.isAdminPasswordInputEnable(), "Admin password field input is not enabled after open password change popup for an existing user");
+		soft.assertTrue(popup.isNewPasswordInputEnable(), "New password field input is not enabled after open password change popup for an existing user");
+		soft.assertTrue(popup.isConfirmPasswordInputEnable(), "Confirm password field input is not enabled after open password change popup for an existing user");
 
-        popup.clickClosePasswordDialog();
-        popup.clickOK();
-        usersPage.clickDelete();
-        usersPage.waitForXMillis(200);
-        soft.assertTrue(!usersPage.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
-        soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
-        soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
+		popup.clickClosePasswordDialog();
+		popup.clickOK();
+		usersPage.clickDelete();
+		usersPage.waitForXMillis(200);
+		soft.assertTrue(!usersPage.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
+		soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
+		soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
 
-        usersPage.clickSave().confirm();
+		usersPage.clickSave().confirm();
 
-        soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message is as expected");
-        soft.assertTrue(!usersPage.grid().isUserListed(username), "After saving deleted user is not listed");
-
-        soft.assertAll();
-
-    }
-
-
-    @Test(description = "USR-10")
-    public void newUser() {
-        String username = Generator.randomAlphaNumeric(10);
-        String validPass = "Aabcdefghijklm1@";
-        String email = "system@gmail.com";
+		soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message is as expected");
+		soft.assertTrue(!usersPage.grid().isUserListed(username), "After saving deleted user is not listed");
 
-        SoftAssert soft = new SoftAssert();
-
-        UsersPage usersPage = new UsersPage(driver);
-
-//		soft.assertTrue(usersPage.isNewButtonEnabled(), "New button should be enabled");
-
-        UserPopup popup = usersPage.clickNew();
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
-        popup.fillDetailsForm(username,email);
-        popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
-        popup.clickOK();
-
-        //popup.clickUserDetailsToggle();
-        //popup.fillDetailsForm(username, validPass, validPass);
-
-
-        soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled");
-        soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled");
-
-        usersPage.clickSave().confirm();
-
-        soft.assertTrue(!usersPage.alertArea.getAlertMessage().isError(), "Message listed is success");
-        soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
-
-        soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
-        String adminPass = "123456";
-        int index = usersPage.grid().scrollToUser(username);
-
-        usersPage.grid().selectRow(index);
-        popup = usersPage.clickEdit();
-        try {
-            Thread.sleep(10000);
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        popup.clickSetOrChangePassword();
-        popup.setOrChangePassword(adminPass, validPass, validPass);
-        popup.clickChangedPassword();
-        popup.clickCloseAfterChangedPass();
-        try {
-            Thread.sleep(1000);
-        } catch (Exception e) {
-        }
-        popup.clickOK();
-        soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
-
-        soft.assertAll();
-    }
-
-
-    @Test(description = "USR-20")
-    public void usernameValidation() {
-        String username = Generator.randomAlphaNumeric(10);
-        String validPass = "QW!@qw12";
+		soft.assertAll();
 
-        SoftAssert soft = new SoftAssert();
+	}
 
-        UsersPage usersPage = new UsersPage(driver);
-        UserPopup popup = usersPage.clickNew();
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
-        popup.fillDetailsForm("tst","smp@gmail.com");
-        popup.rolesSelect.selectOptionWithText("SMP_ADMIN");
 
-        //popup.clickUserDetailsToggle();
+	@Test(description = "USR-10")
+	public void newUser() {
+		String username = Generator.randomAlphaNumeric(10);
+		String validPass = "Aabcdefghijklm1@";
+		String email = "system@gmail.com";
+
+		SoftAssert soft = new SoftAssert();
+
+		UsersPage usersPage = new UsersPage(driver);
 
-        //popup.fillDetailsForm("tst");
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup(2)");
-        soft.assertEquals(popup.getUsernameValidationError(), SMPMessages.USERNAME_VALIDATION_MESSAGE, "Validation error message is displayed(2)");
-        popup.fillDetailsForm("#$^&*^%&$#@%@$#%$","system@gmail.com");
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup(3)");
-        soft.assertEquals(popup.getUsernameValidationError(), SMPMessages.USERNAME_VALIDATION_MESSAGE, "Validation error message is displayed(3)");
-        //noinspection SpellCheckingInspection
-        popup.fillDetailsForm("QWERQWERQWERQWERQWERQWERQWERQWE33","system@gmail.com");
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup(4)");
-        soft.assertEquals(popup.getUsernameValidationError(), SMPMessages.USERNAME_VALIDATION_MESSAGE, "Validation error message is displayed(4)");
 
+		UserPopup popup = usersPage.clickNew();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
+		popup.fillDetailsForm(username, email);
+		popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
+		popup.clickOK();
 
-        soft.assertAll();
-    }
 
-    @SuppressWarnings("SpellCheckingInspection")
-    @Test(description = "USR-30")
-    public void passwordValidation() {
-        String username = Generator.randomAlphaNumeric(10);
-        String email = "system@gmail.com";
-        ArrayList<String> passToValidate = new ArrayList<>(Arrays.asList("qwqw",
-                "QWERQWERQWERQWERQWERQWERQWERQWE33",
-//				"QWERTYUIOP",
-//				"qwertyuiop",
-//				"321654987",
-//				"~!@#$%^&*()_",
-//				"~1Aa#",
-                "~1a#2d2dds"));
+		soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled");
+		soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled");
 
-        SoftAssert soft = new SoftAssert();
-
-        UsersPage usersPage = new UsersPage(driver);
-        usersPage.clickVoidSpace();
+		usersPage.clickSave().confirm();
 
-        UserPopup popup = usersPage.clickNew();
-        popup.fillDetailsForm(username,email);
-        popup.rolesSelect.selectOptionWithText("SMP_ADMIN");
-        popup.clickOK();
-        usersPage.clickSave().confirm();
-        soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
-        int index = usersPage.grid().scrollToUser(username);
-        usersPage.grid().selectRow(index);
-        String adminPass = "123456";
-        for (String pass : passToValidate) {
-
-            popup = usersPage.clickEdit();
+		soft.assertTrue(!usersPage.alertArea.getAlertMessage().isError(), "Message listed is success");
+		soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
 
-            popup.clickSetOrChangePassword();
-            popup.setOrChangePassword(adminPass, pass, pass);
-            popup.clickClosePasswordDialog();
-            popup.clickCancel();
-
-            soft.assertTrue(!popup.isChangedPasswordActive(), String.format("ChangePassword button should be disabled until valid data is filled in the popup - %s ", pass));
-            //soft.assertEquals(popup.getPassValidationError(), SMPMessages.PASS_POLICY_MESSAGE, String.format("Pass policy message is displayed - %s", pass));
-        }
-
-        soft.assertAll();
-    }
-
-    @Test(description = "USR-40")
-    public void listedRoles() {
-
-        ArrayList<String> expectedRoleValues = new ArrayList<>(Arrays.asList("SYSTEM_ADMIN", "SMP_ADMIN", "SERVICE_GROUP_ADMIN"));
-
-        SoftAssert soft = new SoftAssert();
-
-        UsersPage usersPage = new UsersPage(driver);
-        UserPopup popup = usersPage.clickNew();
-        List<String> listedRoles = popup.rolesSelect.getOptionTexts();
+		soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
+		String adminPass = "123456";
+		int index = usersPage.grid().scrollToUser(username);
 
-        soft.assertTrue(expectedRoleValues.size() == listedRoles.size(), "Number of roles is the same as expected");
+		usersPage.grid().selectRow(index);
+		popup = usersPage.clickEdit();
+		try {
+			Thread.sleep(10000);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		popup.clickSetOrChangePassword();
+		popup.setOrChangePassword(adminPass, validPass, validPass);
+		popup.clickChangedPassword();
+		popup.clickCloseAfterChangedPass();
+		try {
+			Thread.sleep(1000);
+		} catch (Exception e) {
+		}
+		popup.clickOK();
+		soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
+
+		soft.assertAll();
+	}
 
-        for (String expected : expectedRoleValues) {
-            boolean found = false;
-            for (String listedRole : listedRoles) {
-                if (listedRole.equalsIgnoreCase(expected)) {
-                    found = true;
-                }
-            }
-            soft.assertTrue(found, "Role found in page " + expected);
-        }
 
-        soft.assertAll();
-    }
+	@Test(description = "USR-20")
+	public void usernameValidation() {
+		String username = Generator.randomAlphaNumeric(10);
+		String validPass = "QW!@qw12";
+
+		SoftAssert soft = new SoftAssert();
 
-    @Test(description = "USR-50")
-    public void deleteSYS_ADMIN() {
+		UsersPage usersPage = new UsersPage(driver);
+		UserPopup popup = usersPage.clickNew();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
+		popup.fillDetailsForm("tst", "smp@gmail.com");
+		popup.rolesSelect.selectOptionWithText("SMP_ADMIN");
 
-        String username = Generator.randomAlphaNumeric(10);
-        SMPRestClient.createUser(username, "SYSTEM_ADMIN");
-        SoftAssert soft = new SoftAssert();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup(2)");
+		soft.assertEquals(popup.getUsernameValidationError(), SMPMessages.USERNAME_VALIDATION_MESSAGE, "Validation error message is displayed(2)");
+		popup.fillDetailsForm("#$^&*^%&$#@%@$#%$", "system@gmail.com");
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup(3)");
+		soft.assertEquals(popup.getUsernameValidationError(), SMPMessages.USERNAME_VALIDATION_MESSAGE, "Validation error message is displayed(3)");
+		//noinspection SpellCheckingInspection
+		popup.fillDetailsForm("QWERQWERQWERQWERQWERQWERQWERQWE33", "system@gmail.com");
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup(4)");
+		soft.assertEquals(popup.getUsernameValidationError(), SMPMessages.USERNAME_VALIDATION_MESSAGE, "Validation error message is displayed(4)");
 
-        logger.info("created user " + username);
-        UsersPage page = new UsersPage(driver);
-        page.refreshPage();
 
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
+		soft.assertAll();
+	}
 
-        int index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
+	@SuppressWarnings("SpellCheckingInspection")
+	@Test(description = "USR-30")
+	public void passwordValidation() {
+		String username = Generator.randomAlphaNumeric(10);
+		String email = "system@gmail.com";
+		ArrayList<String> passToValidate = new ArrayList<>(Arrays.asList("qwqw",
+				"QWERQWERQWERQWERQWERQWERQWERQWE33"));
 
-        page.clickDelete();
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted");
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted");
-        soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted");
+		SoftAssert soft = new SoftAssert();
 
-        page.clickCancel().confirm();
-        new ConfirmationDialog(driver).confirm();
-        soft.assertTrue(page.grid().isUserListed(username), "After canceling delete user is still listed");
+		UsersPage usersPage = new UsersPage(driver);
+		usersPage.clickVoidSpace();
 
+		UserPopup popup = usersPage.clickNew();
+		popup.fillDetailsForm(username, email);
+		popup.rolesSelect.selectOptionWithText("SMP_ADMIN");
+		popup.clickOK();
+		usersPage.clickSave().confirm();
+		soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
+		int index = usersPage.grid().scrollToUser(username);
+		usersPage.grid().selectRow(index);
+		String adminPass = "123456";
+		for (String pass : passToValidate) {
 
-        index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select(2)");
+			popup = usersPage.clickEdit();
 
-        page.clickDelete();
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
-        soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
+			popup.clickSetOrChangePassword();
+			popup.setOrChangePassword(adminPass, pass, pass);
+			popup.clickClosePasswordDialog();
+			popup.clickCancel();
 
-        page.clickSave().confirm();
+			soft.assertTrue(!popup.isChangedPasswordActive(), String.format("ChangePassword button should be disabled until valid data is filled in the popup - %s ", pass));
+		}
 
-        soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
-        soft.assertTrue(!page.grid().isUserListed(username), "After saving deleted user is not listed");
+		soft.assertAll();
+	}
 
-        soft.assertAll();
-    }
+	@Test(description = "USR-40")
+	public void listedRoles() {
 
-    @Test(description = "USR-60")
-    public void changeRoleSYS_ADMIN() {
+		ArrayList<String> expectedRoleValues = new ArrayList<>(Arrays.asList("SYSTEM_ADMIN", "SMP_ADMIN", "SERVICE_GROUP_ADMIN"));
 
-        SoftAssert soft = new SoftAssert();
+		SoftAssert soft = new SoftAssert();
 
-        UsersPage page = new UsersPage(driver);
-        int index = page.grid().scrollToUserWithRole("SYSTEM_ADMIN");
+		UsersPage usersPage = new UsersPage(driver);
+		UserPopup popup = usersPage.clickNew();
+		List<String> listedRoles = popup.rolesSelect.getOptionTexts();
 
-        page.grid().selectRow(index);
-        UserPopup popup = page.clickEdit();
-        List<String> options = popup.rolesSelect.getOptionTexts();
-        soft.assertTrue(options.size() == 1, "Role dropdown has only one value");
-        soft.assertTrue(options.get(0).equalsIgnoreCase("SYSTEM_ADMIN"), "Role dropdown has only one value and that is \"SYSTEM_ADMIN\"");
+		soft.assertTrue(expectedRoleValues.size() == listedRoles.size(), "Number of roles is the same as expected");
 
-        soft.assertAll();
-    }
+		for (String expected : expectedRoleValues) {
+			boolean found = false;
+			for (String listedRole : listedRoles) {
+				if (listedRole.equalsIgnoreCase(expected)) {
+					found = true;
+				}
+			}
+			soft.assertTrue(found, "Role found in page " + expected);
+		}
 
-    @Test(description = "USR-70")
-    public void changeRoleNON_SYS_ADMIN() {
+		soft.assertAll();
+	}
 
-        SoftAssert soft = new SoftAssert();
+	@Test(description = "USR-50")
+	public void deleteSYS_ADMIN() {
 
-        UsersPage page = new UsersPage(driver);
-        int index = page.grid().scrollToUserWithRole("SMP_ADMIN");
+		String username = Generator.randomAlphaNumeric(10);
+		SMPRestClient.createUser(username, "SYSTEM_ADMIN");
+		SoftAssert soft = new SoftAssert();
 
-        page.grid().selectRow(index);
-        UserPopup popup = page.clickEdit();
+		logger.info("created user " + username);
+		UsersPage page = new UsersPage(driver);
+		page.refreshPage();
 
-        List<String> options = popup.rolesSelect.getOptionTexts();
-        soft.assertTrue(options.size() == 2, "Role dropdown has only two values");
-        soft.assertTrue(options.get(0).equalsIgnoreCase("SMP_ADMIN"), "Role dropdown has value \"SMP_ADMIN\"");
-        soft.assertTrue(options.get(1).equalsIgnoreCase("SERVICE_GROUP_ADMIN"), "Role dropdown has value \"SERVICE_GROUP_ADMIN\"");
-        page.refreshPage();
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
 
-        int index2 = page.grid().scrollToUserWithRole("SERVICE_GROUP_ADMIN");
+		int index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
 
-        page.grid().selectRow(index2);
-        popup = page.clickEdit();
+		page.clickDelete();
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted");
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted");
+		soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted");
 
-        options = popup.rolesSelect.getOptionTexts();
-        soft.assertTrue(options.size() == 2, "Role dropdown has only two values");
-        soft.assertTrue(options.get(0).equalsIgnoreCase("SMP_ADMIN"), "Role dropdown has value \"SMP_ADMIN\"");
-        soft.assertTrue(options.get(1).equalsIgnoreCase("SERVICE_GROUP_ADMIN"), "Role dropdown has value \"SERVICE_GROUP_ADMIN\"");
+		page.clickCancel().confirm();
+		new ConfirmationDialog(driver).confirm();
+		soft.assertTrue(page.grid().isUserListed(username), "After canceling delete user is still listed");
 
-        soft.assertAll();
-    }
 
-    @Test(description = "USR-80")
-    public void deleteOWNUserRecord() {
+		index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select(2)");
 
-        String username = new TestDataProvider().getUserWithRole("SYS_ADMIN").get("username");
+		page.clickDelete();
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
+		soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
 
-        SoftAssert soft = new SoftAssert();
+		page.clickSave().confirm();
 
-        UsersPage page = new UsersPage(driver);
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
+		soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
+		soft.assertTrue(!page.grid().isUserListed(username), "After saving deleted user is not listed");
 
-        int index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
+		soft.assertAll();
+	}
 
-        page.clickDelete();
-        AlertMessage message = page.alertArea.getAlertMessage();
-        soft.assertTrue(message.isError(), "Listed message is error");
-        soft.assertTrue(message.getMessage().equalsIgnoreCase(SMPMessages.USER_OWN_DELETE_ERR), "Listed message has appropriate text");
+	@Test(description = "USR-60")
+	public void changeRoleSYS_ADMIN() {
 
-        soft.assertAll();
-    }
+		SoftAssert soft = new SoftAssert();
 
-    @Test(description = "USR-90")
-    public void deleteSMP_ADMIN() {
+		UsersPage page = new UsersPage(driver);
+		int index = page.grid().scrollToUserWithRole("SYSTEM_ADMIN");
 
-        String username = Generator.randomAlphaNumeric(10);
-        SMPRestClient.createUser(username, "SMP_ADMIN");
-        SoftAssert soft = new SoftAssert();
+		page.grid().selectRow(index);
+		UserPopup popup = page.clickEdit();
+		List<String> options = popup.rolesSelect.getOptionTexts();
+		soft.assertTrue(options.size() == 1, "Role dropdown has only one value");
+		soft.assertTrue(options.get(0).equalsIgnoreCase("SYSTEM_ADMIN"), "Role dropdown has only one value and that is \"SYSTEM_ADMIN\"");
 
-        logger.info("Created username " + username);
+		soft.assertAll();
+	}
 
+	@Test(description = "USR-70")
+	public void changeRoleNON_SYS_ADMIN() {
 
-        UsersPage page = new UsersPage(driver);
-        page.refreshPage();
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
+		SoftAssert soft = new SoftAssert();
 
-        int index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
+		UsersPage page = new UsersPage(driver);
+		int index = page.grid().scrollToUserWithRole("SMP_ADMIN");
 
-        page.clickDelete();
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted");
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted");
-        soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted");
+		page.grid().selectRow(index);
+		UserPopup popup = page.clickEdit();
 
-        page.clickCancel().confirm();
-        new ConfirmationDialog(driver).confirm();
-        soft.assertTrue(page.grid().isUserListed(username), "After canceling delete user is still listed");
+		List<String> options = popup.rolesSelect.getOptionTexts();
+		soft.assertTrue(options.size() == 2, "Role dropdown has only two values");
+		soft.assertTrue(options.get(0).equalsIgnoreCase("SMP_ADMIN"), "Role dropdown has value \"SMP_ADMIN\"");
+		soft.assertTrue(options.get(1).equalsIgnoreCase("SERVICE_GROUP_ADMIN"), "Role dropdown has value \"SERVICE_GROUP_ADMIN\"");
+		page.refreshPage();
 
+		int index2 = page.grid().scrollToUserWithRole("SERVICE_GROUP_ADMIN");
 
-        index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select(2)");
+		page.grid().selectRow(index2);
+		popup = page.clickEdit();
 
-        page.clickDelete();
-        page.waitForXMillis(200);
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
-        soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
+		options = popup.rolesSelect.getOptionTexts();
+		soft.assertTrue(options.size() == 2, "Role dropdown has only two values");
+		soft.assertTrue(options.get(0).equalsIgnoreCase("SMP_ADMIN"), "Role dropdown has value \"SMP_ADMIN\"");
+		soft.assertTrue(options.get(1).equalsIgnoreCase("SERVICE_GROUP_ADMIN"), "Role dropdown has value \"SERVICE_GROUP_ADMIN\"");
 
-        page.clickSave().confirm();
+		soft.assertAll();
+	}
 
-        soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message is as expected");
-        soft.assertTrue(!page.grid().isUserListed(username), "After saving deleted user is not listed");
+	@Test(description = "USR-80")
+	public void deleteOWNUserRecord() {
 
-        soft.assertAll();
-    }
+		String username = new TestDataProvider().getUserWithRole("SYS_ADMIN").get("username");
 
-    @Test(description = "USR-100")
-    public void deleteSERVICE_GROUP_ADMIN() {
+		SoftAssert soft = new SoftAssert();
 
-        String username = Generator.randomAlphaNumeric(10);
-        SMPRestClient.createUser(username, "SERVICE_GROUP_ADMIN");
-        logger.info("Created username" + username);
-        SoftAssert soft = new SoftAssert();
+		UsersPage page = new UsersPage(driver);
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
 
-        UsersPage page = new UsersPage(driver);
-        page.refreshPage();
-        page.waitForRowsToLoad();
+		int index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
 
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
+		page.clickDelete();
+		AlertMessage message = page.alertArea.getAlertMessage();
+		soft.assertTrue(message.isError(), "Listed message is error");
+		soft.assertTrue(message.getMessage().equalsIgnoreCase(SMPMessages.USER_OWN_DELETE_ERR), "Listed message has appropriate text");
 
-        int index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
+		soft.assertAll();
+	}
 
-        page.clickDelete();
-        page.waitForRowsToLoad();
+	@Test(description = "USR-90")
+	public void deleteSMP_ADMIN() {
 
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted");
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted");
-        soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted");
+		String username = Generator.randomAlphaNumeric(10);
+		SMPRestClient.createUser(username, "SMP_ADMIN");
+		SoftAssert soft = new SoftAssert();
 
-        page.clickCancel().confirm();
-        new ConfirmationDialog(driver).confirm();
-        page.waitForRowsToLoad();
-        soft.assertTrue(page.grid().isUserListed(username), "After canceling delete user is still listed");
+		logger.info("Created username " + username);
 
 
-        index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
+		UsersPage page = new UsersPage(driver);
+		page.refreshPage();
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
 
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select(2)");
+		int index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
 
-        page.clickDelete();
-        page.waitForRowsToLoad();
-        soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
-        soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
+		page.clickDelete();
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted");
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted");
+		soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted");
 
-        page.clickSave().confirm();
+		page.clickCancel().confirm();
+		new ConfirmationDialog(driver).confirm();
+		soft.assertTrue(page.grid().isUserListed(username), "After canceling delete user is still listed");
 
-        soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message is as expected");
-        soft.assertTrue(!page.grid().isUserListed(username), "After saving deleted user is not listed");
 
-        soft.assertAll();
-    }
+		index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select(2)");
 
-    @Test(description = "USR-110")
-    public void deleteSG_ADMINWithSG() {
+		page.clickDelete();
+		page.waitForXMillis(200);
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
+		soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
 
-        String username = Generator.randomAlphaNumeric(10);
-        String pi = Generator.randomAlphaNumeric(10);
-        String ps = Generator.randomAlphaNumeric(10);
+		page.clickSave().confirm();
 
-        String expectedErrorMess = String.format("Delete validation error Could not delete user with ownerships! User: %s owns SG count: 1.", username);
+		soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message is as expected");
+		soft.assertTrue(!page.grid().isUserListed(username), "After saving deleted user is not listed");
 
-        SMPRestClient.createUser(username, "SERVICE_GROUP_ADMIN");
-        SMPRestClient.createServiceGroup(pi, ps,
-                new ArrayList<>(Arrays.asList(username)),
-                new ArrayList<>(Arrays.asList(createdDomains.get(0)))
-        );
+		soft.assertAll();
+	}
 
-        logger.info("Created username " + username);
-        logger.info("Created service group " + pi);
+	@Test(description = "USR-100")
+	public void deleteSERVICE_GROUP_ADMIN() {
 
-        SoftAssert soft = new SoftAssert();
+		String username = Generator.randomAlphaNumeric(10);
+		SMPRestClient.createUser(username, "SERVICE_GROUP_ADMIN");
+		logger.info("Created username" + username);
+		SoftAssert soft = new SoftAssert();
 
-        UsersPage page = new UsersPage(driver);
-        page.refreshPage();
+		UsersPage page = new UsersPage(driver);
+		page.refreshPage();
+		page.waitForRowsToLoad();
 
-        int index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled");
 
-        page.clickDelete();
-        AlertMessage message = page.alertArea.getAlertMessage();
-        soft.assertTrue(message.isError(), "Page shows error message when deleting user with SG");
-        soft.assertTrue(message.getMessage().equalsIgnoreCase(expectedErrorMess), "Desired message appears");
+		int index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
 
-        SMPRestClient.deleteSG(pi);
-        SMPRestClient.deleteUser(username);
+		page.clickDelete();
+		page.waitForRowsToLoad();
 
-        soft.assertAll();
-    }
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted");
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted");
+		soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted");
 
-    @Test(description = "USR-120")
-    public void deleteSMP_ADMINWithSG() {
+		page.clickCancel().confirm();
+		new ConfirmationDialog(driver).confirm();
+		page.waitForRowsToLoad();
+		soft.assertTrue(page.grid().isUserListed(username), "After canceling delete user is still listed");
 
-        String username = Generator.randomAlphaNumeric(10);
-        String pi = Generator.randomAlphaNumeric(10);
-        String ps = Generator.randomAlphaNumeric(10);
-
-        String expectedErrorMess = String.format("Delete validation error Could not delete user with ownerships! User: %s owns SG count: 1.", username);
-
-        SMPRestClient.createUser(username, "SMP_ADMIN");
-        SMPRestClient.createServiceGroup(pi, ps,
-                new ArrayList<>(Arrays.asList(username)),
-                new ArrayList<>(Arrays.asList(createdDomains.get(0)))
-        );
-
-        logger.info("Created username " + username);
-
-        SoftAssert soft = new SoftAssert();
-
-        UsersPage page = new UsersPage(driver);
-        page.refreshPage();
-
-        int index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
-
-        page.clickDelete();
-        page.waitForXMillis(500);
-        AlertMessage message = page.alertArea.getAlertMessage();
-        soft.assertTrue(message.isError(), "Page shows error message when deleting user with SG");
-        soft.assertTrue(message.getMessage().equalsIgnoreCase(expectedErrorMess), "Desired message appears");
-
-        SMPRestClient.deleteSG(pi);
-        SMPRestClient.deleteUser(username);
-
-        soft.assertAll();
-    }
-
-    @Test(description = "USR-130")
-    public void duplicateUserCreation() {
-        SoftAssert soft = new SoftAssert();
-        String userName = Generator.randomAlphaNumeric(10);
-        String validPass = "Aabcdefghijklm1@";
-        String email = "system@gmail.com";
-        UsersPage page = new UsersPage(driver);
-
-        soft.assertTrue(page.isNewButtonEnabled(), "New button should be enabled");
-
-        UserPopup popup = page.clickNew();
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button is enable before valid data is filled in the popup");
-        popup.fillDetailsForm(userName,email);
-        popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
-        popup.clickOK();
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
-        page.clickSave().confirm();
-        String adminPass = "123456";
-        int index = page.grid().scrollToUser(userName);
-
-        page.grid().selectRow(index);
-        popup = page.clickEdit();
-        popup.clickSetOrChangePassword();
-        popup.setOrChangePassword(adminPass, validPass, validPass);
-        popup.clickChangedPassword();
-        popup.clickCloseAfterChangedPass();
-        popup.clickCancel();
-        soft.assertTrue(page.grid().isUserListed(userName), "User present in the page");
-
-        //popup.clickUserDetailsToggle();
-        //popup.fillDetailsForm(userName,validPass,validPass);
-
-
-        page.clickNew();
-
-        popup.fillDetailsForm(userName,email);
-        popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
-        // popup.clickUserDetailsToggle();
-        //popup.fillDetailsForm(userName);
-        soft.assertFalse(popup.isOKButtonActive(), "OK button is enable after duplicate user name is filled in the popup");
-
-        soft.assertTrue(popup.isDuplicateUserNameErrorMsgDisPlayed(), "The user page is not containing the expected error message");
-        popup.clickCancel();
-        soft.assertAll();
-    }
-
-    @Test(description = "USR-140")
-    public void verifyPasswordDoNotMatch() {
-        String username = Generator.randomAlphaNumeric(10);
-        String validPass = "Aabcdefghijklm1@";
-        String confirmPass = "AS@!gh12fxghfnh43546";
-        String email = "system@gmail.com";
-        String errorMsg = "Confirm valued does not match new password!";
-        String adminPass = "123456";
-        SoftAssert soft = new SoftAssert();
-        UsersPage usersPage = new UsersPage(driver);
-        UserPopup popup = usersPage.clickNew();
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button is enable before valid data is filled in the popup");
-        popup.fillDetailsForm(username,email);
-        popup.rolesSelect.selectOptionWithText("SMP_ADMIN");
-        popup.clickOK();
-        soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled");
-        usersPage.clickSave().confirm();
-        int index = usersPage.grid().scrollToUser(username);
-        usersPage.grid().selectRow(index);
-        popup = usersPage.clickEdit();
-        popup.clickSetOrChangePassword();
-        popup.setOrChangePassword(adminPass, validPass, confirmPass);
-        //popup.clickVoidSpace();
-        soft.assertTrue(!popup.isChangePasswordButtonActive(), "password change button is enabled before valid data is filled in the popup(2)");
-        //logger.info("Msg is :"+popup.getPassDontMatchValidationMsg());
-        // soft.assertEquals(popup.getPassDontMatchValidationMsg(), errorMsg, "confirmation input does not contain the message 'Confirm valued does not match new password!'");
-        soft.assertTrue(!popup.isPopupChangedPasswordEnabled(), "Chagepassword option is not disable after giving the wrong data in cofirmation password");
-        soft.assertAll();
-    }
-
-    @Test(description = "USR-150")
-    public void verifySuspendedUserwithoutPassword() {
-        String username = Generator.randomAlphaNumeric(10);
-        String password = "Aabcdefghijklm1@";
-        String email = "system@gmail.com";
-
-        SoftAssert soft = new SoftAssert();
-
-        UsersPage usersPage = new UsersPage(driver);
-
-        UserPopup popup = usersPage.clickNew();
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
-        popup.fillDetailsForm(username,email);
-        popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
-        popup.clickOK();
-
-        soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled");
-        soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled");
-
-        usersPage.clickSave().confirm();
-
-        soft.assertTrue(!usersPage.alertArea.getAlertMessage().isError(), "Message listed is success");
-        soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
-
-        soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
-
-        usersPage.pageHeader.sandwichMenu.logout();
-        SearchPage page = new SearchPage(driver);
-        logger.info("Going to login page");
-        LoginPage loginPage = page.pageHeader.goToLogin();
-        for (int i = 0; i < 5; i++) {
-            loginPage.invalidLogin(username, password);
-            loginPage.waitForXMillis(2000);
-        }
-        soft.assertTrue(loginPage.isLoginButtonEnable(), "Login Button Is Disabled");
-        logger.info(loginPage.alertArea.getAlertMessage().getMessage());
-        soft.assertTrue(loginPage.alertArea.getAlertMessage().getMessage().contains(SMPMessages.MSG_22), "Message listed is as expected");
-
-        SMPPage smpPage = genericLoginProcedure("SYS_ADMIN");
-        logger.info("Going to User page");
-        smpPage.sidebar.goToPage(UsersPage.class);
-        usersPage = new UsersPage(driver);
-        int index = usersPage.grid().scrollToUser(username);
-        usersPage.grid().selectRow(index);
-        soft.assertTrue(usersPage.isDeleteButtonEnabled(), "Delete button is enabled after row select(2)");
-
-        usersPage.clickDelete();
-        usersPage.waitForXMillis(200);
-        soft.assertTrue(!usersPage.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
-        soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
-        soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
-
-        usersPage.clickSave().confirm();
-
-        soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message is as expected");
-        soft.assertTrue(!usersPage.grid().isUserListed(username), "After saving deleted user is not listed");
-
-        soft.assertAll();
-    }
-
-    @Test(description = "USR-160")
-    public void userPageUIAppearanceAndBehaviour(){
-        SoftAssert soft = new SoftAssert();
-
-        UsersPage page = new UsersPage(driver);
-        soft.assertTrue(page.isLoaded());
-        soft.assertTrue(page.isNewButtonEnabled(), "New button is not enable");
-        soft.assertTrue(page.isEditTruststoreButtonEnabled(),"EditTruststore Button is not enabled");
-        soft.assertTrue(page.isDeleteButtonVisibled(),"Delete button is not visibled");
-        soft.assertTrue(page.isEditButtonVisibled(), "Edit button is not visibled");
-        soft.assertTrue(page.isSaveButtonVisibled(),"Save button is not visibled");
-        soft.assertTrue(page.isCancelButtonVisibled(), "Cancel button is not visibled");
-        soft.assertTrue(!page.isEditButtonEnabled(), "Edit button is  enabled");
-        soft.assertTrue(!page.isSaveButtonEnabled(),"Save button is  enabled");
-        soft.assertTrue(!page.isCancelButtonEnabled(), "Cancel button is  enabled");
-        int index = 0;
-        page.grid().selectRow(index);
-        soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is not enabled after row select(2)");
-        soft.assertTrue(page.isEditButtonEnabled(), "Edit button is not enabled after row select(2)");
-
-
-        soft.assertAll();
-    }
-
-    @Test(description = "USR-170")
-    public void editUserUIAppearanceAndBehaviour(){
-        SoftAssert soft = new SoftAssert();
-        UsersPage page = new UsersPage(driver);
-        soft.assertTrue(page.isLoaded());
-        String username = Generator.randomAlphaNumeric(10);
-        String email = "system@gmail.com";
-        UserPopup popup = page.clickNew();
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
-        popup.fillDetailsForm(username,email);
-        popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
-        popup.clickOK();
-        soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
-        soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled");
-
-        page.clickSave().confirm();
-
-        soft.assertTrue(!page.alertArea.getAlertMessage().isError(), "Message listed is success");
-        soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
-
-        int index = page.grid().scrollToUser(username);
-        page.grid().selectRow(index);
-        popup = page.clickEdit();
-        soft.assertTrue(!popup.isUsernameFieldEnabled(),"Username field is enabled for an existing user");
-        soft.assertTrue(popup.isEmailFieldEnabled(),"Email field is not enabled for an existing user");
-        soft.assertTrue(popup.isRoleSelectFieldEnabled(),"Role field is not enabled for an existing user");
-        soft.assertTrue(popup.isSetOrChangePassOptionBtnEnabled(),"SetOrChangePassOptionBtn field is not enabled for an existing user");
-        soft.assertTrue(popup.isRegenerateAccesstokenBtnEnabled(),"Email field is not enabled for an existing user");
-        soft.assertTrue(popup.isOKButtonActive(),"Ok btn is not enabled for an existing user in user popup");
-        soft.assertTrue(popup.isCancelButtonActive(),"Cancel btn is not enabled for an existing user in user popup");
-        soft.assertTrue(popup.isImportButtonActive(),"Import btn is not enabled for an existing user in user popup");
-        if(page.grid().userHasCertificate(index)) {
-            soft.assertTrue(popup.isShowDetailsButtonActive(), "ShowDetails btn is not enabled for an existing user in user popup");
-            soft.assertTrue(popup.isClearButtonActive(), "Clear btn is not enabled for an existing user in user popup");
-        }
-        else{
-            soft.assertTrue(!popup.isShowDetailsButtonActive(), "ShowDetails btn is enabled for an existing user in user popup");
-            soft.assertTrue(!popup.isClearButtonActive(), "Clear btn is enabled for an existing user in user popup");
-
-        }
-
-        soft.assertAll();
-
-
-    }
-
-    @Test(description = "USR-180")
-    public void userEmailValidation(){
-        SoftAssert soft = new SoftAssert();
-        UsersPage page = new UsersPage(driver);
-        soft.assertTrue(page.isLoaded());
-        String username = Generator.randomAlphaNumeric(10);
-        ArrayList<String> email = new ArrayList<>(Arrays.asList("sdfdgfdghxvfv@gmail.c",
-                "sdfdgfdghxvfv$gmail.com",
-                 "hdbvsdkvdsvf"));
-        UserPopup popup = page.clickNew();
-        soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
-        for(String emailId:email)
-        {
-            popup.fillDetailsForm(username,emailId);
-            popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
-           soft.assertTrue(!popup.isOKButtonActive(),"OK button is active after s4ending invalid email");
-           soft.assertEquals(popup.userEmailValidationGetErrMsg(),SMPMessages.USER_EMAIL_VALIDATION_MESSAGE,"Message is not in the list");
-        }
-        soft.assertAll();
-    }
+
+		index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select(2)");
+
+		page.clickDelete();
+		page.waitForRowsToLoad();
+		soft.assertTrue(!page.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
+		soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
+
+		page.clickSave().confirm();
+
+		soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message is as expected");
+		soft.assertTrue(!page.grid().isUserListed(username), "After saving deleted user is not listed");
+
+		soft.assertAll();
+	}
+
+	@Test(description = "USR-110")
+	public void deleteSG_ADMINWithSG() {
+
+		String username = Generator.randomAlphaNumeric(10);
+		String pi = Generator.randomAlphaNumeric(10);
+		String ps = Generator.randomAlphaNumeric(10);
+
+		String expectedErrorMess = String.format("Delete validation error Could not delete user with ownerships! User: %s owns SG count: 1.", username);
+
+		SMPRestClient.createUser(username, "SERVICE_GROUP_ADMIN");
+		SMPRestClient.createServiceGroup(pi, ps,
+				new ArrayList<>(Arrays.asList(username)),
+				new ArrayList<>(Arrays.asList(createdDomains.get(0)))
+		);
+
+		logger.info("Created username " + username);
+		logger.info("Created service group " + pi);
+
+		SoftAssert soft = new SoftAssert();
+
+		UsersPage page = new UsersPage(driver);
+		page.refreshPage();
+
+		int index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
+
+		page.clickDelete();
+		AlertMessage message = page.alertArea.getAlertMessage();
+		soft.assertTrue(message.isError(), "Page shows error message when deleting user with SG");
+		soft.assertTrue(message.getMessage().equalsIgnoreCase(expectedErrorMess), "Desired message appears");
+
+		SMPRestClient.deleteSG(pi);
+		SMPRestClient.deleteUser(username);
+
+		soft.assertAll();
+	}
+
+	@Test(description = "USR-120")
+	public void deleteSMP_ADMINWithSG() {
+
+		String username = Generator.randomAlphaNumeric(10);
+		String pi = Generator.randomAlphaNumeric(10);
+		String ps = Generator.randomAlphaNumeric(10);
+
+		String expectedErrorMess = String.format("Delete validation error Could not delete user with ownerships! User: %s owns SG count: 1.", username);
+
+		SMPRestClient.createUser(username, "SMP_ADMIN");
+		SMPRestClient.createServiceGroup(pi, ps,
+				new ArrayList<>(Arrays.asList(username)),
+				new ArrayList<>(Arrays.asList(createdDomains.get(0)))
+		);
+
+		logger.info("Created username " + username);
+
+		SoftAssert soft = new SoftAssert();
+
+		UsersPage page = new UsersPage(driver);
+		page.refreshPage();
+
+		int index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is enabled after row select");
+
+		page.clickDelete();
+		page.waitForXMillis(500);
+		AlertMessage message = page.alertArea.getAlertMessage();
+		soft.assertTrue(message.isError(), "Page shows error message when deleting user with SG");
+		soft.assertTrue(message.getMessage().equalsIgnoreCase(expectedErrorMess), "Desired message appears");
+
+		SMPRestClient.deleteSG(pi);
+		SMPRestClient.deleteUser(username);
+
+		soft.assertAll();
+	}
+
+	@Test(description = "USR-130")
+	public void duplicateUserCreation() {
+		SoftAssert soft = new SoftAssert();
+		String userName = Generator.randomAlphaNumeric(10);
+		String validPass = "Aabcdefghijklm1@";
+		String email = "system@gmail.com";
+		UsersPage page = new UsersPage(driver);
+
+		soft.assertTrue(page.isNewButtonEnabled(), "New button should be enabled");
+
+		UserPopup popup = page.clickNew();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button is enabled before valid data is filled in the popup");
+		popup.fillDetailsForm(userName, email);
+		popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
+		popup.clickOK();
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
+		page.clickSave().confirm();
+		String adminPass = "123456";
+		int index = page.grid().scrollToUser(userName);
+
+		page.grid().selectRow(index);
+		popup = page.clickEdit();
+		popup.clickSetOrChangePassword();
+		popup.setOrChangePassword(adminPass, validPass, validPass);
+		popup.clickChangedPassword();
+		popup.clickCloseAfterChangedPass();
+		popup.clickCancel();
+		soft.assertTrue(page.grid().isUserListed(userName), "User present in the page");
+
+		page.clickNew();
+
+		popup.fillDetailsForm(userName, email);
+		popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
+
+		soft.assertFalse(popup.isOKButtonActive(), "OK button is enabled after duplicate user name is filled in the popup");
+
+		soft.assertTrue(popup.isDuplicateUserNameErrorMsgDisPlayed(), "The user page is not containing the expected error message");
+		popup.clickCancel();
+		soft.assertAll();
+	}
+
+	@Test(description = "USR-140")
+	public void verifyPasswordDoNotMatch() {
+		String username = Generator.randomAlphaNumeric(10);
+		String validPass = "Aabcdefghijklm1@";
+		String confirmPass = "AS@!gh12fxghfnh43546";
+		String email = "system@gmail.com";
+		String errorMsg = "Confirm valued does not match new password!";
+		String adminPass = "123456";
+		SoftAssert soft = new SoftAssert();
+		UsersPage usersPage = new UsersPage(driver);
+		UserPopup popup = usersPage.clickNew();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button is enabled before valid data is filled in the popup");
+		popup.fillDetailsForm(username, email);
+		popup.rolesSelect.selectOptionWithText("SMP_ADMIN");
+		popup.clickOK();
+		soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled");
+		usersPage.clickSave().confirm();
+		int index = usersPage.grid().scrollToUser(username);
+		usersPage.grid().selectRow(index);
+		popup = usersPage.clickEdit();
+		popup.clickSetOrChangePassword();
+		popup.setOrChangePassword(adminPass, validPass, confirmPass);
+		soft.assertTrue(!popup.isChangePasswordButtonActive(), "password change button is enabled before valid data is filled in the popup(2)");
+		soft.assertTrue(!popup.isPopupChangedPasswordEnabled(), "Change password option is not disable after giving the wrong data in cofirmation password");
+		soft.assertAll();
+	}
+
+	@Test(description = "USR-150")
+	public void verifySuspendedUserwithoutPassword() {
+		String username = Generator.randomAlphaNumeric(10);
+		String password = "Aabcdefghijklm1@";
+		String email = "system@gmail.com";
+
+		SoftAssert soft = new SoftAssert();
+
+		UsersPage usersPage = new UsersPage(driver);
+
+		UserPopup popup = usersPage.clickNew();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
+		popup.fillDetailsForm(username, email);
+		popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
+		popup.clickOK();
+
+		soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled");
+		soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled");
+
+		usersPage.clickSave().confirm();
+
+		soft.assertTrue(!usersPage.alertArea.getAlertMessage().isError(), "Message listed is success");
+		soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
+
+		soft.assertTrue(usersPage.grid().isUserListed(username), "User present in the page");
+
+		usersPage.pageHeader.sandwichMenu.logout();
+		SearchPage page = new SearchPage(driver);
+		logger.info("Going to login page");
+		LoginPage loginPage = page.pageHeader.goToLogin();
+		for (int i = 0; i < 5; i++) {
+			loginPage.invalidLogin(username, password);
+			loginPage.waitForXMillis(2000);
+		}
+		soft.assertTrue(loginPage.isLoginButtonEnable(), "Login Button Is Disabled");
+		logger.info(loginPage.alertArea.getAlertMessage().getMessage());
+		soft.assertTrue(loginPage.alertArea.getAlertMessage().getMessage().contains(SMPMessages.MSG_22), "Message listed is as expected");
+
+		SMPPage smpPage = genericLoginProcedure("SYS_ADMIN");
+		logger.info("Going to User page");
+		smpPage.sidebar.goToPage(UsersPage.class);
+		usersPage = new UsersPage(driver);
+		int index = usersPage.grid().scrollToUser(username);
+		usersPage.grid().selectRow(index);
+		soft.assertTrue(usersPage.isDeleteButtonEnabled(), "Delete button is enabled after row select(2)");
+
+		usersPage.clickDelete();
+		usersPage.waitForXMillis(200);
+		soft.assertTrue(!usersPage.isDeleteButtonEnabled(), "Delete button is not enabled after user is deleted(2)");
+		soft.assertTrue(usersPage.isSaveButtonEnabled(), "Save button is enabled after user is deleted(2)");
+		soft.assertTrue(usersPage.isCancelButtonEnabled(), "Cancel button is enabled after user is deleted(2)");
+
+		usersPage.clickSave().confirm();
+
+		soft.assertTrue(usersPage.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message is as expected");
+		soft.assertTrue(!usersPage.grid().isUserListed(username), "After saving deleted user is not listed");
+
+		soft.assertAll();
+	}
+
+	@Test(description = "USR-160")
+	public void userPageUIAppearanceAndBehaviour() {
+		SoftAssert soft = new SoftAssert();
+
+		UsersPage page = new UsersPage(driver);
+		soft.assertTrue(page.isLoaded());
+		soft.assertTrue(page.isNewButtonEnabled(), "New button is not enabled");
+		soft.assertTrue(page.isEditTruststoreButtonEnabled(), "EditTruststore Button is not enabled");
+		soft.assertTrue(page.isDeleteButtonVisible(), "Delete button is not visible");
+		soft.assertTrue(page.isEditButtonVisible(), "Edit button is not visible");
+		soft.assertTrue(page.isSaveButtonVisible(), "Save button is not visible");
+		soft.assertTrue(page.isCancelButtonVisible(), "Cancel button is not visible");
+		soft.assertTrue(!page.isEditButtonEnabled(), "Edit button is  enabled");
+		soft.assertTrue(!page.isSaveButtonEnabled(), "Save button is  enabled");
+		soft.assertTrue(!page.isCancelButtonEnabled(), "Cancel button is  enabled");
+		int index = 0;
+		page.grid().selectRow(index);
+		soft.assertTrue(page.isDeleteButtonEnabled(), "Delete button is not enabled after row select(2)");
+		soft.assertTrue(page.isEditButtonEnabled(), "Edit button is not enabled after row select(2)");
+
+
+		soft.assertAll();
+	}
+
+	@Test(description = "USR-170")
+	public void editUserUIAppearanceAndBehaviour() {
+		SoftAssert soft = new SoftAssert();
+		UsersPage page = new UsersPage(driver);
+		soft.assertTrue(page.isLoaded());
+		String username = Generator.randomAlphaNumeric(10);
+		String email = "system@gmail.com";
+		UserPopup popup = page.clickNew();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
+		popup.fillDetailsForm(username, email);
+		popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
+		popup.clickOK();
+		soft.assertTrue(page.isSaveButtonEnabled(), "Save button is enabled");
+		soft.assertTrue(page.isCancelButtonEnabled(), "Cancel button is enabled");
+
+		page.clickSave().confirm();
+
+		soft.assertTrue(!page.alertArea.getAlertMessage().isError(), "Message listed is success");
+		soft.assertTrue(page.alertArea.getAlertMessage().getMessage().equalsIgnoreCase(SMPMessages.MSG_18), "Message listed is as expected");
+
+		int index = page.grid().scrollToUser(username);
+		page.grid().selectRow(index);
+		popup = page.clickEdit();
+		soft.assertTrue(!popup.isUsernameFieldEnabled(), "Username field is enabled for an existing user");
+		soft.assertTrue(popup.isEmailFieldEnabled(), "Email field is not enabled for an existing user");
+		soft.assertTrue(popup.isRoleSelectFieldEnabled(), "Role field is not enabled for an existing user");
+		soft.assertTrue(popup.isSetOrChangePassOptionBtnEnabled(), "SetOrChangePassOptionBtn field is not enabled for an existing user");
+		soft.assertTrue(popup.isRegenerateAccesstokenBtnEnabled(), "Email field is not enabled for an existing user");
+		soft.assertTrue(popup.isOKButtonActive(), "Ok btn is not enabled for an existing user in user popup");
+		soft.assertTrue(popup.isCancelButtonActive(), "Cancel btn is not enabled for an existing user in user popup");
+		soft.assertTrue(popup.isImportButtonActive(), "Import btn is not enabled for an existing user in user popup");
+		if (page.grid().userHasCertificate(index)) {
+			soft.assertTrue(popup.isShowDetailsButtonActive(), "ShowDetails btn is not enabled for an existing user in user popup");
+			soft.assertTrue(popup.isClearButtonActive(), "Clear btn is not enabled for an existing user in user popup");
+		} else {
+			soft.assertTrue(!popup.isShowDetailsButtonActive(), "ShowDetails btn is enabled for an existing user in user popup");
+			soft.assertTrue(!popup.isClearButtonActive(), "Clear btn is enabled for an existing user in user popup");
+
+		}
+
+		soft.assertAll();
+
+
+	}
+
+	@Test(description = "USR-180")
+	public void userEmailValidation() {
+		SoftAssert soft = new SoftAssert();
+		UsersPage page = new UsersPage(driver);
+		soft.assertTrue(page.isLoaded());
+		String username = Generator.randomAlphaNumeric(10);
+		ArrayList<String> email = new ArrayList<>(Arrays.asList("sdfdgfdghxvfv@gmail.c",
+				"sdfdgfdghxvfv$gmail.com",
+				"hdbvsdkvdsvf"));
+		UserPopup popup = page.clickNew();
+		soft.assertTrue(!popup.isOKButtonActive(), "OK button should be disabled until valid data is filled in the popup");
+		for (String emailId : email) {
+			popup.fillDetailsForm(username, emailId);
+			popup.rolesSelect.selectOptionWithText("SYSTEM_ADMIN");
+			soft.assertTrue(!popup.isOKButtonActive(), "OK button is active after sending invalid email");
+			soft.assertEquals(popup.userEmailValidationGetErrMsg(), SMPMessages.USER_EMAIL_VALIDATION_MESSAGE, "Message is not in the list");
+		}
+		soft.assertAll();
+	}
 
 
 }