diff --git a/src/test/java/com/inteligr8/alfresco/acs/ConnectionClientIT.java b/src/test/java/com/inteligr8/alfresco/acs/ConnectionClientIT.java new file mode 100644 index 0000000..8f5fdac --- /dev/null +++ b/src/test/java/com/inteligr8/alfresco/acs/ConnectionClientIT.java @@ -0,0 +1,40 @@ +package com.inteligr8.alfresco.acs; + +import java.util.UUID; + +import javax.ws.rs.NotFoundException; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.condition.EnabledIf; + +import com.inteligr8.alfresco.acs.api.DiscoveryApi; +import com.inteligr8.alfresco.acs.api.NodesApi; +import com.inteligr8.alfresco.acs.model.RepositoryInfo; + +public abstract class ConnectionClientIT extends ConditionalIT { + + public abstract AcsPublicRestApi getClient(); + + @Test + @EnabledIf("hostExists") + public void testDiscovery() { + DiscoveryApi api = this.getClient().getDiscoveryApi(); + RepositoryInfo repoInfo = api.getRepositoryInformation().getEntry().getRepository(); + + Assertions.assertNotNull(repoInfo); + Assertions.assertFalse(repoInfo.getStatus().isIsReadOnly()); + Assertions.assertEquals("6", repoInfo.getVersion().getMajor()); + } + + @Test + @EnabledIf("hostExists") + public void testMissingNode() { + NodesApi api = this.getClient().getNodesApi(); + + Assertions.assertThrows(NotFoundException.class, () -> { + api.getNode(UUID.randomUUID().toString(), null, null, null); + }); + } + +} diff --git a/src/test/java/com/inteligr8/alfresco/acs/ConnectionCxfClientIT.java b/src/test/java/com/inteligr8/alfresco/acs/ConnectionCxfClientIT.java index cda0dc4..4b979c1 100644 --- a/src/test/java/com/inteligr8/alfresco/acs/ConnectionCxfClientIT.java +++ b/src/test/java/com/inteligr8/alfresco/acs/ConnectionCxfClientIT.java @@ -1,39 +1,28 @@ package com.inteligr8.alfresco.acs; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.condition.EnabledIf; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.test.context.TestPropertySource; import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; -import com.inteligr8.alfresco.acs.api.DiscoveryApi; -import com.inteligr8.alfresco.acs.model.RepositoryInfo; import com.inteligr8.rs.ClientConfiguration; @TestPropertySource(locations = {"/local.properties"}) @SpringJUnitConfig(classes = {AcsClientConfiguration.class, AcsPublicRestApiCxfImpl.class, AcsClientCxfImpl.class}) -public class ConnectionCxfClientIT extends ConditionalIT { +public class ConnectionCxfClientIT extends ConnectionClientIT { @Autowired @Qualifier("acs.api.cxf") private AcsPublicRestApi client; + @Override + public AcsPublicRestApi getClient() { + return this.client; + } + @Override public ClientConfiguration getConfiguration() { return this.client.getConfig(); } - @Test - @EnabledIf("hostExists") - public void testDiscovery() { - DiscoveryApi api = this.client.getDiscoveryApi(); - RepositoryInfo repoInfo = api.getRepositoryInformation().getEntry().getRepository(); - - Assertions.assertNotNull(repoInfo); - Assertions.assertFalse(repoInfo.getStatus().isIsReadOnly()); - Assertions.assertEquals("6", repoInfo.getVersion().getMajor()); - } - } diff --git a/src/test/java/com/inteligr8/alfresco/acs/ConnectionJerseyClientIT.java b/src/test/java/com/inteligr8/alfresco/acs/ConnectionJerseyClientIT.java index 096ee7a..9782d7c 100644 --- a/src/test/java/com/inteligr8/alfresco/acs/ConnectionJerseyClientIT.java +++ b/src/test/java/com/inteligr8/alfresco/acs/ConnectionJerseyClientIT.java @@ -1,39 +1,28 @@ package com.inteligr8.alfresco.acs; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.condition.EnabledIf; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.test.context.TestPropertySource; import org.springframework.test.context.junit.jupiter.SpringJUnitConfig; -import com.inteligr8.alfresco.acs.api.DiscoveryApi; -import com.inteligr8.alfresco.acs.model.RepositoryInfo; import com.inteligr8.rs.ClientConfiguration; @TestPropertySource(locations = {"/local.properties"}) @SpringJUnitConfig(classes = {AcsClientConfiguration.class, AcsPublicRestApiJerseyImpl.class, AcsClientJerseyImpl.class}) -public class ConnectionJerseyClientIT extends ConditionalIT { +public class ConnectionJerseyClientIT extends ConnectionClientIT { @Autowired @Qualifier("acs.api.jersey") private AcsPublicRestApi client; + @Override + public AcsPublicRestApi getClient() { + return this.client; + } + @Override public ClientConfiguration getConfiguration() { return this.client.getConfig(); } - @Test - @EnabledIf("hostExists") - public void testDiscovery() { - DiscoveryApi api = this.client.getDiscoveryApi(); - RepositoryInfo repoInfo = api.getRepositoryInformation().getEntry().getRepository(); - - Assertions.assertNotNull(repoInfo); - Assertions.assertFalse(repoInfo.getStatus().isIsReadOnly()); - Assertions.assertEquals("6", repoInfo.getVersion().getMajor()); - } - } diff --git a/src/test/resources/local-oauth.properties b/src/test/resources/local-oauth.properties new file mode 100644 index 0000000..f6f978b --- /dev/null +++ b/src/test/resources/local-oauth.properties @@ -0,0 +1,5 @@ +content.service.baseUrl=http://localhost:8080/alfresco +content.service.security.oauth.tokenUrl=http://auth.example.org:8080/auth/realms/alfresco/protocol/openid-connect/token +content.service.security.oauth.clientId=alfresco +content.service.security.oauth.grantUsername=admin +content.service.security.oauth.grantPassword=admin