Search in sources :

Example 1 with REMOTE

use of org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer.REMOTE in project keycloak by keycloak.

the class BrowserFlowTest method testAlternativeNonInteractiveExecutorInSubflow.

@Test
@AuthServerContainerExclude(REMOTE)
// TODO remove this (KEYCLOAK-16228)
@DisableFeature(value = Profile.Feature.ACCOUNT2, skipRestart = true)
public void testAlternativeNonInteractiveExecutorInSubflow() {
    final String newFlowAlias = "browser - alternative non-interactive executor";
    testingClient.server("test").run(session -> FlowUtil.inCurrentRealm(session).copyBrowserFlow(newFlowAlias));
    testingClient.server("test").run(session -> FlowUtil.inCurrentRealm(session).selectFlow(newFlowAlias).inForms(forms -> forms.clear().addAuthenticatorExecution(AuthenticationExecutionModel.Requirement.REQUIRED, UsernameFormFactory.PROVIDER_ID).addSubFlowExecution(Requirement.REQUIRED, reqSubFlow -> reqSubFlow.addAuthenticatorExecution(Requirement.ALTERNATIVE, PassThroughAuthenticator.PROVIDER_ID))).defineAsBrowserFlow());
    try {
        // provides username
        loginUsernameOnlyPage.open();
        loginUsernameOnlyPage.login("test-user@localhost");
        // Check that Keycloak is redirecting us to the Keycloak account management page
        WebElement aHref = driver.findElement(By.tagName("a"));
        driver.get(aHref.getAttribute("href"));
        assertThat(driver.getTitle(), containsString("Account Management"));
    } finally {
        revertFlows("browser - alternative non-interactive executor");
    }
}
Also used : Arrays(java.util.Arrays) UsernameFormFactory(org.keycloak.authentication.authenticators.browser.UsernameFormFactory) AbstractAdminTest.loadJson(org.keycloak.testsuite.admin.AbstractAdminTest.loadJson) AssertEvents(org.keycloak.testsuite.AssertEvents) WebElement(org.openqa.selenium.WebElement) SetUserAttributeAuthenticatorFactory(org.keycloak.testsuite.authentication.SetUserAttributeAuthenticatorFactory) Page(org.jboss.arquillian.graphene.page.Page) DefaultAuthenticationFlows(org.keycloak.models.utils.DefaultAuthenticationFlows) OAuthClient(org.keycloak.testsuite.util.OAuthClient) REMOTE(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer.REMOTE) LoginTotpPage(org.keycloak.testsuite.pages.LoginTotpPage) Requirement(org.keycloak.models.AuthenticationExecutionModel.Requirement) GOOGLE(org.keycloak.testsuite.broker.SocialLoginTest.Provider.GOOGLE) UsernamePasswordFormFactory(org.keycloak.authentication.authenticators.browser.UsernamePasswordFormFactory) RealmResource(org.keycloak.admin.client.resource.RealmResource) DisableFeature(org.keycloak.testsuite.arquillian.annotation.DisableFeature) GITLAB(org.keycloak.testsuite.broker.SocialLoginTest.Provider.GITLAB) URLUtils(org.keycloak.testsuite.util.URLUtils) PasswordFormFactory(org.keycloak.authentication.authenticators.browser.PasswordFormFactory) ConditionalUserConfiguredAuthenticatorFactory(org.keycloak.authentication.authenticators.conditional.ConditionalUserConfiguredAuthenticatorFactory) RealmRepresentation(org.keycloak.representations.idm.RealmRepresentation) ConditionalRoleAuthenticatorFactory(org.keycloak.authentication.authenticators.conditional.ConditionalRoleAuthenticatorFactory) ClientRepresentation(org.keycloak.representations.idm.ClientRepresentation) RoleBuilder(org.keycloak.testsuite.util.RoleBuilder) List(java.util.List) GITHUB(org.keycloak.testsuite.broker.SocialLoginTest.Provider.GITHUB) Details(org.keycloak.events.Details) LoginPage(org.keycloak.testsuite.pages.LoginPage) OneTimeCode(org.keycloak.testsuite.auth.page.login.OneTimeCode) ActionURIUtils(org.keycloak.testsuite.ActionURIUtils) SocialLoginTest(org.keycloak.testsuite.broker.SocialLoginTest) WebAuthnRegisterFactory(org.keycloak.authentication.requiredactions.WebAuthnRegisterFactory) Matchers.containsString(org.hamcrest.Matchers.containsString) IdentityProviderRepresentation(org.keycloak.representations.idm.IdentityProviderRepresentation) ConditionalUserAttributeValueFactory(org.keycloak.testsuite.authentication.ConditionalUserAttributeValueFactory) Profile(org.keycloak.common.Profile) AuthServerContainerExclude(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude) WebDriver(org.openqa.selenium.WebDriver) Constants(org.keycloak.models.Constants) TimeBasedOTP(org.keycloak.models.utils.TimeBasedOTP) OTPFormAuthenticatorFactory(org.keycloak.authentication.authenticators.browser.OTPFormAuthenticatorFactory) WebAuthnAuthenticatorFactory(org.keycloak.authentication.authenticators.browser.WebAuthnAuthenticatorFactory) EnableFeature(org.keycloak.testsuite.arquillian.annotation.EnableFeature) Drone(org.jboss.arquillian.drone.api.annotation.Drone) AuthenticationExecutionModel(org.keycloak.models.AuthenticationExecutionModel) AuthenticationFlowRepresentation(org.keycloak.representations.idm.AuthenticationFlowRepresentation) ArquillianResource(org.jboss.arquillian.test.api.ArquillianResource) FlowUtil(org.keycloak.testsuite.util.FlowUtil) MatcherAssert.assertThat(org.hamcrest.MatcherAssert.assertThat) UserResource(org.keycloak.admin.client.resource.UserResource) RequiredActionProviderSimpleRepresentation(org.keycloak.representations.idm.RequiredActionProviderSimpleRepresentation) ApiUtil(org.keycloak.testsuite.admin.ApiUtil) UserRepresentation(org.keycloak.representations.idm.UserRepresentation) By(org.openqa.selenium.By) PasswordPage(org.keycloak.testsuite.pages.PasswordPage) RequiredActionProviderRepresentation(org.keycloak.representations.idm.RequiredActionProviderRepresentation) Test(org.junit.Test) AbstractTestRealmKeycloakTest(org.keycloak.testsuite.AbstractTestRealmKeycloakTest) AbstractAuthenticationTest(org.keycloak.testsuite.admin.authentication.AbstractAuthenticationTest) Consumer(java.util.function.Consumer) Rule(org.junit.Rule) LoginUsernameOnlyPage(org.keycloak.testsuite.pages.LoginUsernameOnlyPage) ErrorPage(org.keycloak.testsuite.pages.ErrorPage) Assert(org.junit.Assert) Collections(java.util.Collections) OTPFormAuthenticator(org.keycloak.authentication.authenticators.browser.OTPFormAuthenticator) Matchers.containsString(org.hamcrest.Matchers.containsString) WebElement(org.openqa.selenium.WebElement) AuthServerContainerExclude(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude) DisableFeature(org.keycloak.testsuite.arquillian.annotation.DisableFeature) SocialLoginTest(org.keycloak.testsuite.broker.SocialLoginTest) Test(org.junit.Test) AbstractTestRealmKeycloakTest(org.keycloak.testsuite.AbstractTestRealmKeycloakTest) AbstractAuthenticationTest(org.keycloak.testsuite.admin.authentication.AbstractAuthenticationTest)

Example 2 with REMOTE

use of org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer.REMOTE in project keycloak by keycloak.

the class IdentityProviderTest method failCreateInvalidUrl.

@Test
@AuthServerContainerExclude(REMOTE)
public void failCreateInvalidUrl() throws Exception {
    try (AutoCloseable c = new RealmAttributeUpdater(realmsResouce().realm("test")).updateWith(r -> r.setSslRequired(SslRequired.ALL.name())).update()) {
        IdentityProviderRepresentation newIdentityProvider = createRep("new-identity-provider", "oidc");
        newIdentityProvider.getConfig().put("clientId", "clientId");
        newIdentityProvider.getConfig().put("clientSecret", "some secret value");
        OIDCIdentityProviderConfigRep oidcConfig = new OIDCIdentityProviderConfigRep(newIdentityProvider);
        oidcConfig.setAuthorizationUrl("invalid://test");
        try (Response response = this.realm.identityProviders().create(newIdentityProvider)) {
            assertEquals(Response.Status.BAD_REQUEST.getStatusCode(), response.getStatus());
            ErrorRepresentation error = response.readEntity(ErrorRepresentation.class);
            assertEquals("The url [authorization_url] is malformed", error.getErrorMessage());
        }
        oidcConfig.setAuthorizationUrl(null);
        oidcConfig.setTokenUrl("http://test");
        try (Response response = this.realm.identityProviders().create(newIdentityProvider)) {
            assertEquals(Response.Status.BAD_REQUEST.getStatusCode(), response.getStatus());
            ErrorRepresentation error = response.readEntity(ErrorRepresentation.class);
            assertEquals("The url [token_url] requires secure connections", error.getErrorMessage());
        }
        oidcConfig.setAuthorizationUrl(null);
        oidcConfig.setTokenUrl(null);
        oidcConfig.setJwksUrl("http://test");
        try (Response response = this.realm.identityProviders().create(newIdentityProvider)) {
            assertEquals(Response.Status.BAD_REQUEST.getStatusCode(), response.getStatus());
            ErrorRepresentation error = response.readEntity(ErrorRepresentation.class);
            assertEquals("The url [jwks_url] requires secure connections", error.getErrorMessage());
        }
        oidcConfig.setAuthorizationUrl(null);
        oidcConfig.setTokenUrl(null);
        oidcConfig.setJwksUrl(null);
        oidcConfig.setLogoutUrl("http://test");
        try (Response response = this.realm.identityProviders().create(newIdentityProvider)) {
            assertEquals(Response.Status.BAD_REQUEST.getStatusCode(), response.getStatus());
            ErrorRepresentation error = response.readEntity(ErrorRepresentation.class);
            assertEquals("The url [logout_url] requires secure connections", error.getErrorMessage());
        }
        oidcConfig.setAuthorizationUrl(null);
        oidcConfig.setTokenUrl(null);
        oidcConfig.setJwksUrl(null);
        oidcConfig.setLogoutUrl(null);
        oidcConfig.setUserInfoUrl("http://test");
        try (Response response = this.realm.identityProviders().create(newIdentityProvider)) {
            assertEquals(Response.Status.BAD_REQUEST.getStatusCode(), response.getStatus());
            ErrorRepresentation error = response.readEntity(ErrorRepresentation.class);
            assertEquals("The url [userinfo_url] requires secure connections", error.getErrorMessage());
        }
    }
}
Also used : EndpointType(org.keycloak.dom.saml.v2.metadata.EndpointType) Arrays(java.util.Arrays) ResourceType(org.keycloak.events.admin.ResourceType) OIDCIdentityProviderConfigRep(org.keycloak.testsuite.broker.OIDCIdentityProviderConfigRep) URL(java.net.URL) URISyntaxException(java.net.URISyntaxException) Matchers.not(org.hamcrest.Matchers.not) ClientErrorException(javax.ws.rs.ClientErrorException) Assert.assertThat(org.junit.Assert.assertThat) SAMLIdentityProviderConfig(org.keycloak.broker.saml.SAMLIdentityProviderConfig) MediaType(javax.ws.rs.core.MediaType) MultipartFormDataOutput(org.jboss.resteasy.plugins.providers.multipart.MultipartFormDataOutput) ByteArrayInputStream(java.io.ByteArrayInputStream) REMOTE(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer.REMOTE) Document(org.w3c.dom.Document) Map(java.util.Map) Assert.fail(org.junit.Assert.fail) URI(java.net.URI) AdminEventPaths(org.keycloak.testsuite.util.AdminEventPaths) Matchers.notNullValue(org.hamcrest.Matchers.notNullValue) Set(java.util.Set) IdentityProviderModel(org.keycloak.models.IdentityProviderModel) UUID(java.util.UUID) RealmAttributeUpdater(org.keycloak.testsuite.updaters.RealmAttributeUpdater) NotFoundException(javax.ws.rs.NotFoundException) DocumentUtil(org.keycloak.saml.common.util.DocumentUtil) IdentityProviderResource(org.keycloak.admin.client.resource.IdentityProviderResource) ParsingException(org.keycloak.saml.common.exceptions.ParsingException) List(java.util.List) SslRequired(org.keycloak.common.enums.SslRequired) Response(javax.ws.rs.core.Response) Matchers.containsInAnyOrder(org.hamcrest.Matchers.containsInAnyOrder) Assert.assertFalse(org.junit.Assert.assertFalse) Matchers.equalTo(org.hamcrest.Matchers.equalTo) OIDCLoginProtocol(org.keycloak.protocol.oidc.OIDCLoginProtocol) Matchers.is(org.hamcrest.Matchers.is) Matchers.containsString(org.hamcrest.Matchers.containsString) XMLSignature(javax.xml.crypto.dsig.XMLSignature) SAMLParser(org.keycloak.saml.processing.core.parsers.saml.SAMLParser) OperationType(org.keycloak.events.admin.OperationType) IdentityProviderRepresentation(org.keycloak.representations.idm.IdentityProviderRepresentation) Assert(org.keycloak.testsuite.Assert) AuthServerContainerExclude(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude) IdentityProviderMapperModel(org.keycloak.models.IdentityProviderMapperModel) HashMap(java.util.HashMap) IdentityProviderMapperTypeRepresentation(org.keycloak.representations.idm.IdentityProviderMapperTypeRepresentation) ErrorRepresentation(org.keycloak.representations.idm.ErrorRepresentation) AttributeType(org.keycloak.dom.saml.v2.assertion.AttributeType) HashSet(java.util.HashSet) ComponentRepresentation(org.keycloak.representations.idm.ComponentRepresentation) ProcessingException(org.keycloak.saml.common.exceptions.ProcessingException) Charset(java.nio.charset.Charset) AUTH_SERVER_SSL_REQUIRED(org.keycloak.testsuite.util.ServerURLs.AUTH_SERVER_SSL_REQUIRED) IndexedEndpointType(org.keycloak.dom.saml.v2.metadata.IndexedEndpointType) AdminEventRepresentation(org.keycloak.representations.idm.AdminEventRepresentation) IdentityProviderMapperRepresentation(org.keycloak.representations.idm.IdentityProviderMapperRepresentation) StripSecretsUtils(org.keycloak.models.utils.StripSecretsUtils) Matchers.hasSize(org.hamcrest.Matchers.hasSize) ConfigurationException(org.keycloak.saml.common.exceptions.ConfigurationException) Matchers.hasEntry(org.hamcrest.Matchers.hasEntry) SPSSODescriptorType(org.keycloak.dom.saml.v2.metadata.SPSSODescriptorType) Matchers.empty(org.hamcrest.Matchers.empty) NodeList(org.w3c.dom.NodeList) EntityDescriptorType(org.keycloak.dom.saml.v2.metadata.EntityDescriptorType) Files(java.nio.file.Files) Assert.assertNotNull(org.junit.Assert.assertNotNull) KeyTypes(org.keycloak.dom.saml.v2.metadata.KeyTypes) Assert.assertTrue(org.junit.Assert.assertTrue) Test(org.junit.Test) IOException(java.io.IOException) XMLDSIG_NSURI(org.keycloak.saml.common.constants.JBossSAMLURIConstants.XMLDSIG_NSURI) Element(org.w3c.dom.Element) Assert.assertNull(org.junit.Assert.assertNull) Paths(java.nio.file.Paths) KeyDescriptorType(org.keycloak.dom.saml.v2.metadata.KeyDescriptorType) IdentityProviderMapperSyncMode(org.keycloak.models.IdentityProviderMapperSyncMode) Assert.assertEquals(org.junit.Assert.assertEquals) Response(javax.ws.rs.core.Response) OIDCIdentityProviderConfigRep(org.keycloak.testsuite.broker.OIDCIdentityProviderConfigRep) ErrorRepresentation(org.keycloak.representations.idm.ErrorRepresentation) IdentityProviderRepresentation(org.keycloak.representations.idm.IdentityProviderRepresentation) RealmAttributeUpdater(org.keycloak.testsuite.updaters.RealmAttributeUpdater) AuthServerContainerExclude(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude) Test(org.junit.Test)

Example 3 with REMOTE

use of org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer.REMOTE in project keycloak by keycloak.

the class BrowserFlowTest method testSwitchExecutionNotAllowedWithRequiredPasswordAndAlternativeOTP.

@Test
@AuthServerContainerExclude(REMOTE)
public void testSwitchExecutionNotAllowedWithRequiredPasswordAndAlternativeOTP() {
    String newFlowAlias = "browser - copy 1";
    configureBrowserFlowWithRequiredPasswordFormAndAlternativeOTP(newFlowAlias);
    try {
        loginUsernameOnlyPage.open();
        loginUsernameOnlyPage.assertCurrent();
        loginUsernameOnlyPage.login("user-with-one-configured-otp");
        // Assert on password page now
        passwordPage.assertCurrent();
        String otpAuthenticatorExecutionId = realmsResouce().realm("test").flows().getExecutions(newFlowAlias).stream().filter(execution -> OTPFormAuthenticatorFactory.PROVIDER_ID.equals(execution.getProviderId())).findFirst().get().getId();
        // Manually run request to switch execution to OTP. It shouldn't be allowed and error should be thrown
        String actionURL = ActionURIUtils.getActionURIFromPageSource(driver.getPageSource());
        String formParameters = Constants.AUTHENTICATION_EXECUTION + "=" + otpAuthenticatorExecutionId + "&" + Constants.CREDENTIAL_ID + "=";
        URLUtils.sendPOSTRequestWithWebDriver(actionURL, formParameters);
        errorPage.assertCurrent();
    } finally {
        revertFlows("browser - copy 1");
    }
}
Also used : Arrays(java.util.Arrays) UsernameFormFactory(org.keycloak.authentication.authenticators.browser.UsernameFormFactory) AbstractAdminTest.loadJson(org.keycloak.testsuite.admin.AbstractAdminTest.loadJson) AssertEvents(org.keycloak.testsuite.AssertEvents) WebElement(org.openqa.selenium.WebElement) SetUserAttributeAuthenticatorFactory(org.keycloak.testsuite.authentication.SetUserAttributeAuthenticatorFactory) Page(org.jboss.arquillian.graphene.page.Page) DefaultAuthenticationFlows(org.keycloak.models.utils.DefaultAuthenticationFlows) OAuthClient(org.keycloak.testsuite.util.OAuthClient) REMOTE(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer.REMOTE) LoginTotpPage(org.keycloak.testsuite.pages.LoginTotpPage) Requirement(org.keycloak.models.AuthenticationExecutionModel.Requirement) GOOGLE(org.keycloak.testsuite.broker.SocialLoginTest.Provider.GOOGLE) UsernamePasswordFormFactory(org.keycloak.authentication.authenticators.browser.UsernamePasswordFormFactory) RealmResource(org.keycloak.admin.client.resource.RealmResource) DisableFeature(org.keycloak.testsuite.arquillian.annotation.DisableFeature) GITLAB(org.keycloak.testsuite.broker.SocialLoginTest.Provider.GITLAB) URLUtils(org.keycloak.testsuite.util.URLUtils) PasswordFormFactory(org.keycloak.authentication.authenticators.browser.PasswordFormFactory) ConditionalUserConfiguredAuthenticatorFactory(org.keycloak.authentication.authenticators.conditional.ConditionalUserConfiguredAuthenticatorFactory) RealmRepresentation(org.keycloak.representations.idm.RealmRepresentation) ConditionalRoleAuthenticatorFactory(org.keycloak.authentication.authenticators.conditional.ConditionalRoleAuthenticatorFactory) ClientRepresentation(org.keycloak.representations.idm.ClientRepresentation) RoleBuilder(org.keycloak.testsuite.util.RoleBuilder) List(java.util.List) GITHUB(org.keycloak.testsuite.broker.SocialLoginTest.Provider.GITHUB) Details(org.keycloak.events.Details) LoginPage(org.keycloak.testsuite.pages.LoginPage) OneTimeCode(org.keycloak.testsuite.auth.page.login.OneTimeCode) ActionURIUtils(org.keycloak.testsuite.ActionURIUtils) SocialLoginTest(org.keycloak.testsuite.broker.SocialLoginTest) WebAuthnRegisterFactory(org.keycloak.authentication.requiredactions.WebAuthnRegisterFactory) Matchers.containsString(org.hamcrest.Matchers.containsString) IdentityProviderRepresentation(org.keycloak.representations.idm.IdentityProviderRepresentation) ConditionalUserAttributeValueFactory(org.keycloak.testsuite.authentication.ConditionalUserAttributeValueFactory) Profile(org.keycloak.common.Profile) AuthServerContainerExclude(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude) WebDriver(org.openqa.selenium.WebDriver) Constants(org.keycloak.models.Constants) TimeBasedOTP(org.keycloak.models.utils.TimeBasedOTP) OTPFormAuthenticatorFactory(org.keycloak.authentication.authenticators.browser.OTPFormAuthenticatorFactory) WebAuthnAuthenticatorFactory(org.keycloak.authentication.authenticators.browser.WebAuthnAuthenticatorFactory) EnableFeature(org.keycloak.testsuite.arquillian.annotation.EnableFeature) Drone(org.jboss.arquillian.drone.api.annotation.Drone) AuthenticationExecutionModel(org.keycloak.models.AuthenticationExecutionModel) AuthenticationFlowRepresentation(org.keycloak.representations.idm.AuthenticationFlowRepresentation) ArquillianResource(org.jboss.arquillian.test.api.ArquillianResource) FlowUtil(org.keycloak.testsuite.util.FlowUtil) MatcherAssert.assertThat(org.hamcrest.MatcherAssert.assertThat) UserResource(org.keycloak.admin.client.resource.UserResource) RequiredActionProviderSimpleRepresentation(org.keycloak.representations.idm.RequiredActionProviderSimpleRepresentation) ApiUtil(org.keycloak.testsuite.admin.ApiUtil) UserRepresentation(org.keycloak.representations.idm.UserRepresentation) By(org.openqa.selenium.By) PasswordPage(org.keycloak.testsuite.pages.PasswordPage) RequiredActionProviderRepresentation(org.keycloak.representations.idm.RequiredActionProviderRepresentation) Test(org.junit.Test) AbstractTestRealmKeycloakTest(org.keycloak.testsuite.AbstractTestRealmKeycloakTest) AbstractAuthenticationTest(org.keycloak.testsuite.admin.authentication.AbstractAuthenticationTest) Consumer(java.util.function.Consumer) Rule(org.junit.Rule) LoginUsernameOnlyPage(org.keycloak.testsuite.pages.LoginUsernameOnlyPage) ErrorPage(org.keycloak.testsuite.pages.ErrorPage) Assert(org.junit.Assert) Collections(java.util.Collections) OTPFormAuthenticator(org.keycloak.authentication.authenticators.browser.OTPFormAuthenticator) Matchers.containsString(org.hamcrest.Matchers.containsString) AuthServerContainerExclude(org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude) SocialLoginTest(org.keycloak.testsuite.broker.SocialLoginTest) Test(org.junit.Test) AbstractTestRealmKeycloakTest(org.keycloak.testsuite.AbstractTestRealmKeycloakTest) AbstractAuthenticationTest(org.keycloak.testsuite.admin.authentication.AbstractAuthenticationTest)

Aggregations

Arrays (java.util.Arrays)3 List (java.util.List)3 Matchers.containsString (org.hamcrest.Matchers.containsString)3 Test (org.junit.Test)3 IdentityProviderRepresentation (org.keycloak.representations.idm.IdentityProviderRepresentation)3 Collections (java.util.Collections)2 Consumer (java.util.function.Consumer)2 MatcherAssert.assertThat (org.hamcrest.MatcherAssert.assertThat)2 Drone (org.jboss.arquillian.drone.api.annotation.Drone)2 Page (org.jboss.arquillian.graphene.page.Page)2 ArquillianResource (org.jboss.arquillian.test.api.ArquillianResource)2 AuthServerContainerExclude (org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude)2 REMOTE (org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer.REMOTE)2 ByteArrayInputStream (java.io.ByteArrayInputStream)1 IOException (java.io.IOException)1 URI (java.net.URI)1 URISyntaxException (java.net.URISyntaxException)1 URL (java.net.URL)1 Charset (java.nio.charset.Charset)1 Files (java.nio.file.Files)1