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 <jeano...@gmail.com>
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>

Reply via email to