Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS has been phased out. To see alternatives please check here

Skip to content
Snippets Groups Projects
Select Git revision
  • bdb5628178deddccd2d4b572fb902a3dc23948bd
  • development default
  • bugfix/EDELIVERY-14172-domismp-accepts-requests-with-wrong-domain-header-value
  • EDELIVERY-15372-upgrade-libraries-and-plugins-and-update-httpclient-to-httpclient5
  • EDELIVERY-15377-migrate-to-angular-20
  • feature/EDELIVERY-15382-rest-api-jwt-authentication-for-dynamic-discovery-client
  • bugfix/EDELIVERY-14196-select-domain-select-resource-dropdown-should-be-order-alphabetically
  • feature/EDELIVERY-12753-sml-integration-migration-to-different-smp
  • feature/EDELIVERY-13757-extend-session-dialog-should-have-an-active-counter
  • EDELIVERY-15144-sql-update
  • bugfix/EDELIVERY-14326-ui-edit-resource-filters
  • feature/EDELIVERY-15144-domismp-system-notification-generalize-time-expiration-alerts
  • bugfix/EDELIVERY-15102-alert-is-not-appearing-when-adding-duplicated-certificate
  • bugfix/EDELIVERY-15203-small-left-grid-shows-no-data-found-for-1-2-seconds-before-loading-the-data
  • EDELIVERY-15219-search-filter-with-understore-char-does-not-work
  • bugfix/EDELIVERY-15226-certificates-error-when-trying-to-delete-certificates
  • bugfix/EDELIVERY-15224-error-when-trying-to-update-info-from-profile-page
  • bugfix/EDELIVERY-15225-emails-are-not-sent-in-domismp
  • release/5.1.x
  • feature/EDELIVERY-12746-external-secret-sharing-services-as-vaults
  • EDELIVERY-15229-upgrade-libraries-and-plugins
  • 5.1.1
  • 5.1
  • 5.1-TEST
  • 5.1-RC1
  • 5.0.1
  • 5.0
  • 5.0-RC1
  • 4.2
  • 4.2-RC1
  • 4.1.2
  • 4.1.1
  • 4.1.0
  • 4.1.0-RC1
  • 4.0.0
  • 4.0.0-RC1
  • 3.0.2
  • 3.0.1
  • 3.0.0
39 results

SetChangePasswordDialog.java

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    SetChangePasswordDialog.java 2.05 KiB
    package ddsl.dcomponents;
    
    import org.openqa.selenium.WebDriver;
    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.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class SetChangePasswordDialog extends DComponent {
        private final static Logger LOG = LoggerFactory.getLogger(SetChangePasswordDialog.class);
        @FindBy(css = ".smp-field-error")
        List<WebElement> fieldsError;
        @FindBy(id = "cp_id")
        private WebElement currentPasswordInput;
        @SuppressWarnings("SpellCheckingInspection")
        @FindBy(id = "np_id")
        private WebElement newPasswordInput;
        @FindBy(id = "cnp_id")
        private WebElement confirmationPasswordInput;
        @FindBy(id = "cnp_id")
        private WebElement setPasswordBtn;
        @FindBy(id = "cnp_id")
        private WebElement closeBtn;
    
    
        public SetChangePasswordDialog(WebDriver driver) {
            super(driver);
            PageFactory.initElements(new AjaxElementLocatorFactory(driver, data.getTIMEOUT()), this);
        }
    
        public boolean trySetPassword(String currentPassword, String newPassword) throws Exception {
    
            LOG.info("Set new password");
            weToDInput(currentPasswordInput).fill(currentPassword);
            weToDInput(newPasswordInput).fill(newPassword);
            weToDInput(confirmationPasswordInput).fill(newPassword);
            Integer hasError;
            if (weToDButton(setPasswordBtn).isEnabled() && fieldsError.size() < 1) {
                weToDButton(setPasswordBtn).click();
                return true;
            }
            {
                getFieldErrorMessage().forEach(LOG::error);
                return false;
            }
    
        }
    
        public List<String> getFieldErrorMessage() {
            ArrayList<String> fieldErrors = new ArrayList<>();
            if (fieldsError.size() > 0) {
                fieldsError.forEach(error -> {
                    fieldErrors.add(error.getText());
                });
            }
            return fieldErrors;
        }
    }