diff --git a/domiSMP-ui-tests/src/main/java/ddsl/CommonCertificatePage.java b/domiSMP-ui-tests/src/main/java/ddsl/CommonCertificatePage.java index 3ca28b4b8a04506d25c96b8acd29a44d205788fa..9ca301facea481952854e25a0bf41cb326b14b47 100644 --- a/domiSMP-ui-tests/src/main/java/ddsl/CommonCertificatePage.java +++ b/domiSMP-ui-tests/src/main/java/ddsl/CommonCertificatePage.java @@ -9,23 +9,23 @@ public class CommonCertificatePage extends CommonPageWithGrid { * Common page used for Keystore and Truststore */ @FindBy(id = "publicKeyType_id") - private WebElement publicKeyTypeLbl; + private WebElement publicKeyTypeInput; @FindBy(id = "alias_id") - private WebElement aliasIdLbl; + private WebElement aliasIdInput; @FindBy(id = "certificateId_id") - private WebElement smpCertificateIdLbl; + private WebElement smpCertificateIdInput; @FindBy(id = "subject_id") - private WebElement subjectNameLbl; + private WebElement subjectNameInput; @FindBy(css = "certificate-panel [placeholder=\"Valid from date\"]") - private WebElement validFromLbl; + private WebElement validFromInput; @FindBy(css = "certificate-panel [placeholder=\"Valid to date\"]") - private WebElement validToLbl; + private WebElement validToInput; @FindBy(id = "issuer_id") - private WebElement issuerLbl; + private WebElement issuerInput; @FindBy(id = "servialNumber_id") - private WebElement serialNumberLbl; + private WebElement serialNumberInput; @FindBy(id = "clrUrl_id") - private WebElement certificateRevolcationListURLlbl; + private WebElement certificateRevolcationListURLInput; @FindBy(css = ".smp-warning-panel span") private WebElement smpWarningLbl; @@ -33,39 +33,39 @@ public class CommonCertificatePage extends CommonPageWithGrid { super(driver); } - public String getPublicKeyTypeLbl() { - return publicKeyTypeLbl.getText(); + public String getPublicKeyTypeValue() { + return weToDInput(publicKeyTypeInput).getText(); } - public String getAliasIdLbl() { - return aliasIdLbl.getText(); + public String getAliasIdValue() { + return weToDInput(aliasIdInput).getText(); } - public String getSmpCertificateIdLbl() { - return smpCertificateIdLbl.getText(); + public String getSmpCertificateIdValue() { + return weToDInput(smpCertificateIdInput).getText(); } - public String getSubjectNameLbl() { - return subjectNameLbl.getText(); + public String getSubjectNameValue() { + return weToDInput(subjectNameInput).getText(); } - public String getValidFromLbl() { - return validFromLbl.getText(); + public String getValidFromValue() { + return weToDInput(validFromInput).getText(); } - public String getValidToLbl() { - return validToLbl.getText(); + public String getValidToValue() { + return weToDInput(validToInput).getText(); } - public String getIssuerLbl() { - return issuerLbl.getText(); + public String getIssuerValue() { + return weToDInput(issuerInput).getText(); } - public String getSerialNumberLbl() { - return serialNumberLbl.getText(); + public String getSerialNumberValue() { + return weToDInput(serialNumberInput).getText(); } - public String getCertificateRevolcationListURLlbl() { - return certificateRevolcationListURLlbl.getText(); + public String getCertificateRevolcationListURLValue() { + return weToDInput(certificateRevolcationListURLInput).getText(); } } diff --git a/domiSMP-ui-tests/src/main/java/ddsl/dcomponents/Grid/SmallGrid.java b/domiSMP-ui-tests/src/main/java/ddsl/dcomponents/Grid/SmallGrid.java index c9df4660ede02bdc0fbd9858d6888ffc6bd459e7..129650dadebb7bbbee333e7a609c1659353a3437 100644 --- a/domiSMP-ui-tests/src/main/java/ddsl/dcomponents/Grid/SmallGrid.java +++ b/domiSMP-ui-tests/src/main/java/ddsl/dcomponents/Grid/SmallGrid.java @@ -71,6 +71,38 @@ public class SmallGrid extends DComponent { } return null; } + public void searchAndClickElementInColumn(String columnName, String value) { + + wait.forXMillis(100); + Integer numOfPages = getGridPagination().getTotalPageNumber(); + List<WebElement> rowHeaders = getGridHeaders(); + int columnIndex = -1; + for (int i = 0; i < rowHeaders.size(); i++) { + if (rowHeaders.get(i).getText().equals(columnName)) { + columnIndex = i; + break; + } + } + if (columnIndex == -1) { + LOG.error("No element found"); + ; + } + for (int pageNr = 1; pageNr < numOfPages + 1; pageNr++) { + + List<WebElement> rows = getRows(); + for (WebElement row : rows) { + List<WebElement> cells = getCells(row); + WebElement currentCell = cells.get(columnIndex); + if (currentCell.getText().equals(value)) { + LOG.debug("[{}] found on page [{}]", value, pageNr); + currentCell.click(); + } + } + getGridPagination().goToNextPage(); + + } + LOG.error("No element found"); + } } diff --git a/domiSMP-ui-tests/src/main/java/utils/Utils.java b/domiSMP-ui-tests/src/main/java/utils/Utils.java index 4d997eb56fc6b21c9daf86b5806224ad6dc2a83e..37b3ecbf1776bf09264610414f4e4ba753590fa4 100644 --- a/domiSMP-ui-tests/src/main/java/utils/Utils.java +++ b/domiSMP-ui-tests/src/main/java/utils/Utils.java @@ -1,10 +1,22 @@ package utils; import java.util.Random; +import java.util.regex.Matcher; +import java.util.regex.Pattern; public class Utils { public static <T extends Enum<?>> T randomEnum(T[] values) { int x = new Random().nextInt(values.length); return values[x]; } + + public static String getAliasFromMessage(String message){ + Pattern pattern = Pattern.compile("(?<= \\[)(.*?)(?=\\])"); + Matcher matcher = pattern.matcher(message); + if (matcher.find()) { + String result = matcher.group(1); + return result; + } + return null; + } } diff --git a/domiSMP-ui-tests/src/test/java/domiSMPTests/ui/KeystorePgTests.java b/domiSMP-ui-tests/src/test/java/domiSMPTests/ui/KeystorePgTests.java index 9cdf12ce5e4880611c8a2f55e433fe8ffa87af95..673fd7e630eea9a962ae293d482ee4f274f9815f 100644 --- a/domiSMP-ui-tests/src/test/java/domiSMPTests/ui/KeystorePgTests.java +++ b/domiSMP-ui-tests/src/test/java/domiSMPTests/ui/KeystorePgTests.java @@ -13,6 +13,7 @@ import pages.systemSettings.keyStorePage.KeyStoreImportDialog; import pages.systemSettings.keyStorePage.KeystorePage; import rest.models.UserModel; import utils.FileUtils; +import utils.Utils; public class KeystorePgTests extends SeleniumTest { @@ -37,16 +38,25 @@ public class KeystorePgTests extends SeleniumTest { } - @Test(description = "KEYS-02 System admin is able to import JKS Keystore") + @Test(description = "KEYS-02 System admin is able to import JKS Keystore", priority = 0) public void systemAdminIsAbleToImportJKS() throws Exception { String path = FileUtils.getAbsoluteKeystorePath("expired_keystore_JKS.jks"); KeyStoreImportDialog keyStoreImportDialog = keystorePage.clickImportkeyStoreBtn(); keyStoreImportDialog.addCertificate(path, KeyStoreTypes.JKS, "test1234"); keyStoreImportDialog.clickImport(); - String value = keystorePage.getAlertArea().getAlertMessage(); + String alias = Utils.getAliasFromMessage(value); + keystorePage.getGrid().searchAndClickElementInColumn("Alias", alias); + soft.assertEquals(keystorePage.getPublicKeyTypeValue(),"RSA"); + soft.assertEquals(keystorePage.getSmpCertificateIdValue(), "CN=blue_gw,O=edelivery,C=BE:00000000645901cb"); + soft.assertEquals(keystorePage.getSubjectNameValue(),"CN=blue_gw,O=edelivery,C=BE" ); + soft.assertEquals(keystorePage.getValidFromValue(),"5/8/2023, 5:06:03 PM"); + soft.assertEquals(keystorePage.getValidToValue(), "5/1/2023, 5:06:03 PM"); + soft.assertEquals(keystorePage.getIssuerValue(), "CN=blue_gw,O=edelivery,C=BE"); + soft.assertEquals(keystorePage.getSerialNumberValue(),"645901cb"); sofAssertThatContains("Certificates added [blue_gw", value); + soft.assertAll(); }