diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GitLabLoginPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GitLabLoginPage.java
index 04b91e2..34fb4b6 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GitLabLoginPage.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/social/GitLabLoginPage.java
@@ -27,20 +27,24 @@ import org.openqa.selenium.support.FindBy;
*/
public class GitLabLoginPage extends AbstractSocialLoginPage {
@FindBy(id = "user_login")
- //@FindBy(name = "user[login]")
private WebElement usernameInput;
@FindBy(id = "user_password")
- //@FindBy(name = "user[password]")
private WebElement passwordInput;
- @FindBy(name = "commit")
- private WebElement loginButton;
+ @FindBy(xpath = "//input[@name='commit' and @value='Authorize']")
+ private WebElement authorizeButton;
@Override
public void login(String user, String password) {
- usernameInput.sendKeys(user);
- passwordInput.sendKeys(password);
- passwordInput.sendKeys(Keys.RETURN);
+ try {
+ usernameInput.sendKeys(user);
+ passwordInput.sendKeys(password);
+ passwordInput.sendKeys(Keys.RETURN);
+ }
+ catch (NoSuchElementException e) {
+ // already logged in
+ }
+ authorizeButton.click();
}
}
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/broker/SocialLoginTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/broker/SocialLoginTest.java
index 66eaea2..aeebb1a 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/broker/SocialLoginTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/broker/SocialLoginTest.java
@@ -125,15 +125,10 @@ public class SocialLoginTest extends AbstractKeycloakTest {
private Provider currentTestProvider;
- private static final boolean localConfig = false;
-
@BeforeClass
public static void loadConfig() throws Exception {
- if (localConfig) {
- } else {
- assumeTrue(System.getProperties().containsKey(SOCIAL_CONFIG));
- config.load(new FileInputStream(System.getProperty(SOCIAL_CONFIG)));
- }
+ assumeTrue(System.getProperties().containsKey(SOCIAL_CONFIG));
+ config.load(new FileInputStream(System.getProperty(SOCIAL_CONFIG)));
}
@Before
@@ -228,30 +223,14 @@ public class SocialLoginTest extends AbstractKeycloakTest {
testTokenExchange();
}
- // disabled as I can't get this to work with automated login
- //@Test
- public void gitLabLogin() throws InterruptedException {
+ @Test
+ public void gitlabLogin() throws InterruptedException {
currentTestProvider = GITLAB;
- // I can't get automated login to work. inspected elements in browser, are not found in the GitLabLoginPage.
performLogin();
assertAccount();
testTokenExchange();
}
- protected void manualLogin() throws InterruptedException {
- System.out.println("****** START MANUAL LOGIN ******");
- System.out.println("****** START MANUAL LOGIN ******");
- System.out.println("****** START MANUAL LOGIN ******");
- Thread.sleep(2000);
- for (int i = 0; i < 60; i++) {
- List<UserRepresentation> users = adminClient.realm(REALM).users().search(null, null, null);
- if (users.size() > 0) return;
- System.out.println("....waiting");
- Thread.sleep(1000);
- }
-
- }
-
@Test
public void facebookLogin() throws InterruptedException {
currentTestProvider = FACEBOOK;
@@ -263,7 +242,6 @@ public class SocialLoginTest extends AbstractKeycloakTest {
@Test
public void githubLogin() throws InterruptedException {
- //Thread.sleep(100000000);
currentTestProvider = GITHUB;
performLogin();
assertAccount();