Cleanup of adapter pages
Closes #30870 Signed-off-by: Douglas Palmer <dpalmer@redhat.com>
This commit is contained in:
parent
601355d517
commit
220f32aa85
33 changed files with 0 additions and 1666 deletions
|
@ -1,89 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.keycloak.representations.AccessToken;
|
|
||||||
import org.keycloak.representations.RefreshToken;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
import org.keycloak.testsuite.util.WaitUtils;
|
|
||||||
import org.keycloak.util.JsonSerialization;
|
|
||||||
import org.openqa.selenium.NoSuchElementException;
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:mposolda@redhat.com">Marek Posolda</a>
|
|
||||||
*/
|
|
||||||
public abstract class AbstractShowTokensPage extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
@FindBy(id = "accessToken")
|
|
||||||
private WebElement accessToken;
|
|
||||||
|
|
||||||
@FindBy(id = "refreshToken")
|
|
||||||
private WebElement refreshToken;
|
|
||||||
|
|
||||||
@FindBy(id = "accessTokenString")
|
|
||||||
private WebElement accessTokenString;
|
|
||||||
|
|
||||||
@FindBy(id = "refreshTokenString")
|
|
||||||
private WebElement refreshTokenString;
|
|
||||||
|
|
||||||
public AccessToken getAccessToken() {
|
|
||||||
try {
|
|
||||||
WaitUtils.waitUntilElement(accessToken).is().visible();
|
|
||||||
return JsonSerialization.readValue(accessToken.getText(), AccessToken.class);
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
} catch (NoSuchElementException nsee) {
|
|
||||||
throw LogScreenContents.fail(driver, "No accessToken element found on the page", nsee);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public RefreshToken getRefreshToken() {
|
|
||||||
try {
|
|
||||||
WaitUtils.waitUntilElement(refreshToken).is().visible();
|
|
||||||
return JsonSerialization.readValue(refreshToken.getText(), RefreshToken.class);
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
} catch (NoSuchElementException nsee) {
|
|
||||||
throw LogScreenContents.fail(driver, "No refreshToken element found on the page", nsee);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public String getAccessTokenString() {
|
|
||||||
try {
|
|
||||||
WaitUtils.waitUntilElement(accessTokenString).is().visible();
|
|
||||||
return accessTokenString.getText();
|
|
||||||
} catch (NoSuchElementException nsee) {
|
|
||||||
throw LogScreenContents.fail(driver, "No accessTokenString element found on the page", nsee);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getRefreshTokenString() {
|
|
||||||
try {
|
|
||||||
WaitUtils.waitUntilElement(refreshTokenString).is().visible();
|
|
||||||
return refreshTokenString.getText();
|
|
||||||
} catch (NoSuchElementException nsee) {
|
|
||||||
throw LogScreenContents.fail(driver, "No refreshTokenString element found on the page", nsee);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,119 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.graphene.findby.FindByJQuery;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
import org.keycloak.testsuite.util.WaitUtils;
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Created by fkiss.
|
|
||||||
*/
|
|
||||||
public class AngularCorsProductTestApp extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "angular-cors-product";
|
|
||||||
public static final String CLIENT_ID = "integration-arquillian-test-apps-cors-angular-product";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
@FindByJQuery("button:contains('Reload')")
|
|
||||||
private WebElement reloadDataButton;
|
|
||||||
|
|
||||||
@FindByJQuery("button:contains('load Roles')")
|
|
||||||
private WebElement loadRolesButton;
|
|
||||||
|
|
||||||
@FindByJQuery("button:contains('Add Role')")
|
|
||||||
private WebElement addRoleButton;
|
|
||||||
|
|
||||||
@FindByJQuery("button:contains('Delete Role')")
|
|
||||||
private WebElement deleteRoleButton;
|
|
||||||
|
|
||||||
@FindByJQuery("button:contains('load available social providers')")
|
|
||||||
private WebElement loadAvailableSocialProvidersButton;
|
|
||||||
|
|
||||||
@FindByJQuery("button:contains('Load public realm info')")
|
|
||||||
private WebElement loadPublicRealmInfoButton;
|
|
||||||
|
|
||||||
@FindByJQuery("button:contains('Load version')")
|
|
||||||
private WebElement loadVersionButton;
|
|
||||||
|
|
||||||
@FindBy(id = "output")
|
|
||||||
private WebElement outputArea;
|
|
||||||
@FindBy(id = "headers")
|
|
||||||
private WebElement headers;
|
|
||||||
|
|
||||||
public void reloadData() {
|
|
||||||
WaitUtils.waitUntilElement(reloadDataButton).is().clickable();
|
|
||||||
reloadDataButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void loadRoles() {
|
|
||||||
WaitUtils.waitUntilElement(loadRolesButton).is().clickable();
|
|
||||||
loadRolesButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void addRole() {
|
|
||||||
WaitUtils.waitUntilElement(addRoleButton).is().clickable();
|
|
||||||
addRoleButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void deleteRole() {
|
|
||||||
WaitUtils.waitUntilElement(deleteRoleButton).is().clickable();
|
|
||||||
deleteRoleButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void loadAvailableSocialProviders() {
|
|
||||||
WaitUtils.waitUntilElement(loadAvailableSocialProvidersButton).is().clickable();
|
|
||||||
loadAvailableSocialProvidersButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void loadPublicRealmInfo() {
|
|
||||||
WaitUtils.waitUntilElement(loadPublicRealmInfoButton).is().clickable();
|
|
||||||
loadPublicRealmInfoButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void loadVersion() {
|
|
||||||
WaitUtils.waitUntilElement(loadVersionButton).is().clickable();
|
|
||||||
loadVersionButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public WebElement getOutput() {
|
|
||||||
WaitUtils.waitUntilElement(outputArea).is().visible();
|
|
||||||
return outputArea;
|
|
||||||
}
|
|
||||||
|
|
||||||
public WebElement getHeaders() {
|
|
||||||
WaitUtils.waitUntilElement(headers).is().visible();
|
|
||||||
return headers;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,57 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import jakarta.ws.rs.core.UriBuilder;
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class BasicAuth extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "basic-auth";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
URL fixedUrl = createInjectedURL("basic-auth");
|
|
||||||
return fixedUrl != null ? fixedUrl : url;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public UriBuilder createUriBuilder() {
|
|
||||||
return super.createUriBuilder()
|
|
||||||
.path("basic-auth")
|
|
||||||
.queryParam("value", "{value}");
|
|
||||||
}
|
|
||||||
|
|
||||||
public BasicAuth setTemplateValues(String value) {
|
|
||||||
setUriParameter("value", value);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
public class ClientSecretJwtSecurePortal extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "client-secret-jwt-secure-portal";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2020 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
public class ClientSecretJwtSecurePortalValidAlg extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "client-secret-jwt-secure-portal-valid-alg";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,44 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class CorsDatabaseServiceTestApp extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "cors-database";
|
|
||||||
public static final String CLIENT_ID = "integration-arquillian-test-apps-cors-database-service";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2018 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
public class CustomerCookiePortal extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "customer-cookie-portal";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String logoutURL() {
|
|
||||||
return url + "/logout";
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2018 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
import org.keycloak.testsuite.util.URLUtils;
|
|
||||||
|
|
||||||
public class CustomerCookiePortalRoot extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "customer-cookie-portal-root";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String logoutURL() {
|
|
||||||
return getInjectedUrl() + "/logout";
|
|
||||||
}
|
|
||||||
|
|
||||||
public void navigateTo(String relative) {
|
|
||||||
URLUtils.navigateToUri(getInjectedUrl() + relative);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String toString() {
|
|
||||||
return getInjectedUrl().toString();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class CustomerDb extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "customer-db";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,41 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2017 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:mposolda@redhat.com">Marek Posolda</a>
|
|
||||||
*/
|
|
||||||
public class CustomerDbAudienceRequired extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "customer-db-audience-required";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class CustomerDbErrorPage extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "customer-db-error-page";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,59 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import jakarta.ws.rs.core.UriBuilder;
|
|
||||||
import java.net.URI;
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class CustomerPortal extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "customer-portal";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
public URI logout() {
|
|
||||||
return getUriBuilder().clone().path("logout").build();
|
|
||||||
}
|
|
||||||
|
|
||||||
public URI callCustomerDbAudienceRequiredUrl(boolean attachAudienceScope) {
|
|
||||||
UriBuilder builder = getUriBuilder().clone().path("call-customer-db-audience-required");
|
|
||||||
|
|
||||||
if (attachAudienceScope) {
|
|
||||||
builder.queryParam("scope", "customer-db-audience-required");
|
|
||||||
}
|
|
||||||
|
|
||||||
return builder.build();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
public class CustomerPortalNoConf extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "customer-portal-noconf";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class CustomerPortalSubsystem extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "customer-portal-subsystem";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,57 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author vramik
|
|
||||||
*/
|
|
||||||
public class InputPortalNoAccessToken extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "no-access-token";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
@FindBy(id = "parameter")
|
|
||||||
private WebElement parameter;
|
|
||||||
|
|
||||||
@FindBy(name = "submit")
|
|
||||||
private WebElement submit;
|
|
||||||
|
|
||||||
public void execute(String param) {
|
|
||||||
parameter.clear();
|
|
||||||
parameter.sendKeys(param);
|
|
||||||
submit.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author pdrozd
|
|
||||||
*/
|
|
||||||
public class KerberosPortal extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "kerberos-portal";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,64 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import jakarta.ws.rs.core.UriBuilder;
|
|
||||||
import java.net.MalformedURLException;
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class MultiTenant extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "multi-tenant";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public UriBuilder createUriBuilder() {
|
|
||||||
return super.createUriBuilder().path("{tenantRealm}");
|
|
||||||
}
|
|
||||||
|
|
||||||
public URL getTenantRealmUrl(String realm) {
|
|
||||||
try {
|
|
||||||
return getUriBuilder().build(realm).toURL();
|
|
||||||
} catch (MalformedURLException ex) {
|
|
||||||
throw new IllegalStateException("Page URL is malformed.", ex);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void navigateToRealm(String realm) {
|
|
||||||
URL u = getTenantRealmUrl(realm);
|
|
||||||
log.info("navigate to "+u.toExternalForm());
|
|
||||||
driver.navigate().to(u.toExternalForm());
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,35 +0,0 @@
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.openqa.selenium.By;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
import static org.keycloak.testsuite.util.WaitUtils.pause;
|
|
||||||
import static org.keycloak.testsuite.util.WaitUtils.waitUntilElement;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:bruno@abstractj.org">Bruno Oliveira</a>.
|
|
||||||
*/
|
|
||||||
public class OfflineToken extends AbstractShowTokensPage {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "offline-client";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void logout() {
|
|
||||||
String uri = getUriBuilder().path("/logout").build().toASCIIString();
|
|
||||||
log.info("Logging out, navigating to: " + uri);
|
|
||||||
driver.navigate().to(uri);
|
|
||||||
pause(300); // this is needed for FF for some reason
|
|
||||||
waitUntilElement(By.tagName("body")).is().visible();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class ProductPortal extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "product-portal";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author vramik
|
|
||||||
*/
|
|
||||||
public class ProductPortalAutodetectBearerOnly extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "product-portal-autodetect-bearer-only";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class ProductPortalSubsystem extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "product-portal-subsystem";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class SecurePortal extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "secure-portal";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2018 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class SecurePortalRewriteRedirectUri extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "secure-portal-with-rewrite-redirect-uri";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class SecurePortalWithCustomSessionConfig extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "secure-portal-with-custom-session-config";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,47 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URI;
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class SerializationServletPage extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "serialization-servlet";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
public URI logout() {
|
|
||||||
return getUriBuilder().clone().path("logout").build();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @author tkyjovsk
|
|
||||||
*/
|
|
||||||
public class SessionPortal extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "session-portal";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,42 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2018 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:psilva@redhat.com">Pedro Igor</a>
|
|
||||||
*/
|
|
||||||
public class SessionPortalDistributable extends AbstractPageWithInjectedUrl {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "session-portal-distributable";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,40 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:mposolda@redhat.com">Marek Posolda</a>
|
|
||||||
*/
|
|
||||||
public class TokenMinTTLPage extends AbstractShowTokensPage {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "token-min-ttl";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,40 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.adapter.page;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.container.test.api.OperateOnDeployment;
|
|
||||||
import org.jboss.arquillian.test.api.ArquillianResource;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:mposolda@redhat.com">Marek Posolda</a>
|
|
||||||
*/
|
|
||||||
public class TokenRefreshPage extends AbstractShowTokensPage {
|
|
||||||
|
|
||||||
public static final String DEPLOYMENT_NAME = "token-refresh";
|
|
||||||
|
|
||||||
@ArquillianResource
|
|
||||||
@OperateOnDeployment(DEPLOYMENT_NAME)
|
|
||||||
private URL url;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public URL getInjectedUrl() {
|
|
||||||
return url;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,82 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2017 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
package org.keycloak.testsuite.pages;
|
|
||||||
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
import static org.keycloak.testsuite.util.WaitUtils.waitForPageToLoad;
|
|
||||||
|
|
||||||
import org.jboss.arquillian.graphene.page.Page;
|
|
||||||
import org.keycloak.testsuite.adapter.page.AppServerContextRoot;
|
|
||||||
import org.keycloak.testsuite.auth.page.login.OIDCLogin;
|
|
||||||
import org.keycloak.testsuite.util.DroneUtils;
|
|
||||||
import org.keycloak.testsuite.util.JavascriptBrowser;
|
|
||||||
import org.keycloak.testsuite.util.URLUtils;
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:psilva@redhat.com">Pedro Igor</a>
|
|
||||||
*/
|
|
||||||
public class AppServerWelcomePage extends AppServerContextRoot {
|
|
||||||
|
|
||||||
@Page
|
|
||||||
@JavascriptBrowser
|
|
||||||
protected OIDCLogin loginPage;
|
|
||||||
|
|
||||||
@FindBy(xpath = "//span[text() = 'Access Control']")
|
|
||||||
private WebElement accessControlLink;
|
|
||||||
|
|
||||||
@FindBy(xpath = "//a[text() = 'Manage user profile']")
|
|
||||||
private WebElement manageProfileLink;
|
|
||||||
|
|
||||||
@FindBy(xpath = "//div[text() = 'Logout']")
|
|
||||||
private WebElement logoutLink;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean isCurrent() {
|
|
||||||
return DroneUtils.getCurrentDriver().getPageSource().contains("Access Control");
|
|
||||||
}
|
|
||||||
|
|
||||||
public void navigateToConsole() {
|
|
||||||
URLUtils.navigateToUri(getInjectedUrl().toString() + "/console");
|
|
||||||
}
|
|
||||||
|
|
||||||
public void login(String username, String password) {
|
|
||||||
assertTrue(loginPage.form().isLoginButtonPresent());
|
|
||||||
loginPage.form().login(username, password);
|
|
||||||
waitForPageToLoad();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void navigateToAccessControl() {
|
|
||||||
accessControlLink.click();
|
|
||||||
waitForPageToLoad();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void navigateManageProfile() {
|
|
||||||
manageProfileLink.click();
|
|
||||||
waitForPageToLoad();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void logout() {
|
|
||||||
logoutLink.click();
|
|
||||||
waitForPageToLoad();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isLoginPage() {
|
|
||||||
return loginPage.isCurrent();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,43 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.keycloak.testsuite.pages;
|
|
||||||
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:sthorger@redhat.com">Stian Thorgersen</a>
|
|
||||||
*/
|
|
||||||
public class BypassKerberosPage extends AbstractPage {
|
|
||||||
|
|
||||||
@FindBy(name = "continue")
|
|
||||||
private WebElement continueButton;
|
|
||||||
|
|
||||||
public boolean isCurrent() {
|
|
||||||
return driver.getTitle().equals("Sign in to test") || driver.getTitle().equals("Anmeldung bei test");
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickContinue() {
|
|
||||||
continueButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void open() throws Exception {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,54 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
package org.keycloak.testsuite.pages;
|
|
||||||
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:sthorger@redhat.com">Stian Thorgersen</a>
|
|
||||||
*/
|
|
||||||
public class LoginRecoverUsernamePage extends AbstractPage {
|
|
||||||
|
|
||||||
@FindBy(id = "email")
|
|
||||||
private WebElement emailInput;
|
|
||||||
|
|
||||||
@FindBy(css = "input[type=\"submit\"]")
|
|
||||||
private WebElement submitButton;
|
|
||||||
|
|
||||||
@FindBy(className = "alert-error")
|
|
||||||
private WebElement emailErrorMessage;
|
|
||||||
|
|
||||||
public void recoverUsername(String email) {
|
|
||||||
emailInput.sendKeys(email);
|
|
||||||
|
|
||||||
submitButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isCurrent() {
|
|
||||||
return PageUtils.getPageTitle(driver).equals("Forgot Your Username?");
|
|
||||||
}
|
|
||||||
|
|
||||||
public void open() {
|
|
||||||
throw new UnsupportedOperationException();
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getMessage() {
|
|
||||||
return emailErrorMessage != null ? emailErrorMessage.getText() : null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,68 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
* and other contributors as indicated by the @author tags.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
package org.keycloak.testsuite.pages;
|
|
||||||
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author <a href="mailto:sthorger@redhat.com">Stian Thorgersen</a>
|
|
||||||
*/
|
|
||||||
public class ValidatePassworrdEmailResetPage extends AbstractPage {
|
|
||||||
|
|
||||||
@FindBy(id = "key")
|
|
||||||
private WebElement keyInput;
|
|
||||||
|
|
||||||
@FindBy(id="kc-submit")
|
|
||||||
private WebElement submitButton;
|
|
||||||
|
|
||||||
@FindBy(id="kc-cancel")
|
|
||||||
private WebElement cancelButton;
|
|
||||||
|
|
||||||
@FindBy(className = "alert-success")
|
|
||||||
private WebElement emailSuccessMessage;
|
|
||||||
|
|
||||||
@FindBy(className = "alert-error")
|
|
||||||
private WebElement emailErrorMessage;
|
|
||||||
|
|
||||||
public void submitCode(String code) {
|
|
||||||
keyInput.sendKeys(code);
|
|
||||||
|
|
||||||
submitButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void cancel() {
|
|
||||||
cancelButton.click();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isCurrent() {
|
|
||||||
return PageUtils.getPageTitle(driver).equals("Forgot Your Password?");
|
|
||||||
}
|
|
||||||
|
|
||||||
public void open() {
|
|
||||||
throw new UnsupportedOperationException();
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getSuccessMessage() {
|
|
||||||
return emailSuccessMessage != null ? emailSuccessMessage.getText() : null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getErrorMessage() {
|
|
||||||
return emailErrorMessage != null ? emailErrorMessage.getText() : null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in a new issue