This is an automated email from the ASF dual-hosted git repository.
jlmonteiro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tomee.git
The following commit(s) were added to refs/heads/master by this push:
new 32953ed Fix tomee-security tests
32953ed is described below
commit 32953ed0b7f9a3654e354b3e5339ed97bddb1a14
Author: Jean-Louis Monteiro <[email protected]>
AuthorDate: Wed Jul 15 15:27:57 2020 +0200
Fix tomee-security tests
---
tomee/pom.xml | 2 +-
.../tomee/security/cdi/TomEESecurityExtension.java | 21 +++++++++++++++++++++
.../security/TomEEELInvocationHandlerTest.java | 4 +++-
.../security/servlet/BasicAuthServletTest.java | 10 +++++-----
.../tomee/security/servlet/SimpleServletTest.java | 2 +-
tomee/tomee-webapp/pom.xml | 4 ++--
6 files changed, 33 insertions(+), 10 deletions(-)
diff --git a/tomee/pom.xml b/tomee/pom.xml
index 2016ce2..a8aa721 100644
--- a/tomee/pom.xml
+++ b/tomee/pom.xml
@@ -53,7 +53,7 @@
<module>tomee-juli</module>
<module>tomee-overlay-runner</module>
<!--<module>tomee-deb</module>-->
- <!--<module>tomee-security</module>-->
+ <module>tomee-security</module>
</modules>
diff --git
a/tomee/tomee-security/src/main/java/org/apache/tomee/security/cdi/TomEESecurityExtension.java
b/tomee/tomee-security/src/main/java/org/apache/tomee/security/cdi/TomEESecurityExtension.java
index 2abd093..82683c8 100644
---
a/tomee/tomee-security/src/main/java/org/apache/tomee/security/cdi/TomEESecurityExtension.java
+++
b/tomee/tomee-security/src/main/java/org/apache/tomee/security/cdi/TomEESecurityExtension.java
@@ -21,6 +21,7 @@ import org.apache.tomee.security.TomEEPbkdf2PasswordHash;
import org.apache.tomee.security.TomEEPlaintextPasswordHash;
import org.apache.tomee.security.TomEESecurityContext;
import org.apache.tomee.security.identitystore.TomEEDatabaseIdentityStore;
+import org.apache.tomee.security.identitystore.TomEEDefaultIdentityStore;
import org.apache.tomee.security.identitystore.TomEEIdentityStoreHandler;
import org.apache.tomee.security.identitystore.TomEELDAPIdentityStore;
@@ -124,6 +125,26 @@ public class TomEESecurityExtension implements Extension {
@Observes final AfterBeanDiscovery afterBeanDiscovery,
final BeanManager beanManager) {
+ if (databaseIdentityStore.isEmpty() && ldapIdentityStore.isEmpty()) {
// add out identity store
+ afterBeanDiscovery
+ .addBean()
+ .id(TomEEDefaultIdentityStore.class.getName())
+ .beanClass(TomEEDefaultIdentityStore.class)
+ .types(Object.class, IdentityStore.class,
TomEEDefaultIdentityStore.class)
+ .qualifiers(Default.Literal.INSTANCE, Any.Literal.INSTANCE)
+ .scope(ApplicationScoped.class)
+ .createWith((CreationalContext<TomEEDefaultIdentityStore>
creationalContext) -> {
+ final AnnotatedType<TomEEDefaultIdentityStore>
annotatedType =
+
beanManager.createAnnotatedType(TomEEDefaultIdentityStore.class);
+ final BeanAttributes<TomEEDefaultIdentityStore>
beanAttributes =
+ beanManager.createBeanAttributes(annotatedType);
+ return beanManager.createBean(beanAttributes,
TomEEDefaultIdentityStore.class,
+
beanManager.getInjectionTargetFactory(annotatedType))
+ .create(creationalContext);
+ });
+
+ }
+
if (!databaseIdentityStore.isEmpty()) {
afterBeanDiscovery
.addBean()
diff --git
a/tomee/tomee-security/src/test/java/org/apache/tomee/security/TomEEELInvocationHandlerTest.java
b/tomee/tomee-security/src/test/java/org/apache/tomee/security/TomEEELInvocationHandlerTest.java
index 2d581aa..3516527 100644
---
a/tomee/tomee-security/src/test/java/org/apache/tomee/security/TomEEELInvocationHandlerTest.java
+++
b/tomee/tomee-security/src/test/java/org/apache/tomee/security/TomEEELInvocationHandlerTest.java
@@ -20,6 +20,8 @@ import org.junit.Assert;
import org.junit.Test;
import javax.el.ELProcessor;
+import javax.enterprise.inject.Alternative;
+import javax.enterprise.inject.Vetoed;
import javax.enterprise.inject.spi.BeanManager;
import javax.enterprise.inject.spi.CDI;
import javax.security.enterprise.identitystore.DatabaseIdentityStoreDefinition;
@@ -51,13 +53,13 @@ public class TomEEELInvocationHandlerTest extends
AbstractTomEESecurityTest {
return CDI.current().getBeanManager();
}
+ @Vetoed // so we don't break the other tests with this
@DatabaseIdentityStoreDefinition(dataSourceLookup = "jdbc/securityAPIDB",
callerQuery = "select password from
caller where name = ?",
groupsQuery = "select group_name from
caller_groups where caller_name = ?",
hashAlgorithm =
CleartextPasswordHash.class,
priority = 30, priorityExpression = "90")
public static class Color {
-
}
public static class CleartextPasswordHash implements PasswordHash {
diff --git
a/tomee/tomee-security/src/test/java/org/apache/tomee/security/servlet/BasicAuthServletTest.java
b/tomee/tomee-security/src/test/java/org/apache/tomee/security/servlet/BasicAuthServletTest.java
index 03f0a38..93c06c3 100644
---
a/tomee/tomee-security/src/test/java/org/apache/tomee/security/servlet/BasicAuthServletTest.java
+++
b/tomee/tomee-security/src/test/java/org/apache/tomee/security/servlet/BasicAuthServletTest.java
@@ -36,7 +36,7 @@ import static org.junit.Assert.assertEquals;
public class BasicAuthServletTest extends AbstractTomEESecurityTest {
@Test
public void authenticate() throws Exception {
- final String servlet = "http://localhost:" +
container.getConfiguration().getHttpPort() + "/basic";
+ final String servlet = getAppUrl() + "/basic";
assertEquals(200, ClientBuilder.newBuilder().register(new
BasicAuthFilter("tomcat", "tomcat")).build()
.target(servlet)
.request()
@@ -45,7 +45,7 @@ public class BasicAuthServletTest extends
AbstractTomEESecurityTest {
@Test
public void missingAuthorizationHeader() throws Exception {
- final String servlet = "http://localhost:" +
container.getConfiguration().getHttpPort() + "/basic";
+ final String servlet = getAppUrl() + "/basic";
assertEquals(401, ClientBuilder.newBuilder().build()
.target(servlet)
.request()
@@ -54,7 +54,7 @@ public class BasicAuthServletTest extends
AbstractTomEESecurityTest {
@Test
public void noUser() throws Exception {
- final String servlet = "http://localhost:" +
container.getConfiguration().getHttpPort() + "/basic";
+ final String servlet = getAppUrl() + "/basic";
assertEquals(401, ClientBuilder.newBuilder().register(new
BasicAuthFilter("unknown", "tomcat")).build()
.target(servlet)
.request()
@@ -63,7 +63,7 @@ public class BasicAuthServletTest extends
AbstractTomEESecurityTest {
@Test
public void wrongPassword() throws Exception {
- final String servlet = "http://localhost:" +
container.getConfiguration().getHttpPort() + "/basic";
+ final String servlet = getAppUrl() + "/basic";
assertEquals(401, ClientBuilder.newBuilder().register(new
BasicAuthFilter("tomcat", "wrong")).build()
.target(servlet)
.request()
@@ -72,7 +72,7 @@ public class BasicAuthServletTest extends
AbstractTomEESecurityTest {
@Test
public void missingRole() throws Exception {
- final String servlet = "http://localhost:" +
container.getConfiguration().getHttpPort() + "/basic";
+ final String servlet = getAppUrl() + "/basic";
assertEquals(403, ClientBuilder.newBuilder().register(new
BasicAuthFilter("user", "user")).build()
.target(servlet)
.request()
diff --git
a/tomee/tomee-security/src/test/java/org/apache/tomee/security/servlet/SimpleServletTest.java
b/tomee/tomee-security/src/test/java/org/apache/tomee/security/servlet/SimpleServletTest.java
index 60c45d2..7b37d51 100644
---
a/tomee/tomee-security/src/test/java/org/apache/tomee/security/servlet/SimpleServletTest.java
+++
b/tomee/tomee-security/src/test/java/org/apache/tomee/security/servlet/SimpleServletTest.java
@@ -36,7 +36,7 @@ public class SimpleServletTest extends
AbstractTomEESecurityTest {
public void testWebApp() throws Exception {
final Client client = ClientBuilder.newBuilder().build();
final Response response =
- client.target("http://localhost:" +
container.getConfiguration().getHttpPort() + "/servlet")
+ client.target(getAppUrl() + "/servlet")
.request()
.get();
assertEquals(200, response.getStatus());
diff --git a/tomee/tomee-webapp/pom.xml b/tomee/tomee-webapp/pom.xml
index c1a912c..cd30e74 100644
--- a/tomee/tomee-webapp/pom.xml
+++ b/tomee/tomee-webapp/pom.xml
@@ -384,7 +384,7 @@
</exclusion>
</exclusions>
</dependency>
- <!--<dependency>
+ <dependency>
<groupId>${project.groupId}</groupId>
<artifactId>tomee-security</artifactId>
<version>${project.version}</version>
@@ -395,6 +395,6 @@
<artifactId>javaee-api</artifactId>
</exclusion>
</exclusions>
- </dependency>-->
+ </dependency>
</dependencies>
</project>