You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@tomee.apache.org by bu...@apache.org on 2014/02/14 14:38:18 UTC

svn commit: r897902 - in /websites/staging/tomee/trunk: cgi-bin/ content/ content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/

Author: buildbot
Date: Fri Feb 14 13:38:18 2014
New Revision: 897902

Log:
Staging update by buildbot for tomee

Added:
    websites/staging/tomee/trunk/content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/UserInfo.java
Modified:
    websites/staging/tomee/trunk/cgi-bin/   (props changed)
    websites/staging/tomee/trunk/content/   (props changed)
    websites/staging/tomee/trunk/content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/MovieTest.java

Propchange: websites/staging/tomee/trunk/cgi-bin/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Feb 14 13:38:18 2014
@@ -1 +1 @@
-1567505
+1568281

Propchange: websites/staging/tomee/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Feb 14 13:38:18 2014
@@ -1 +1 @@
-1567505
+1568281

Modified: websites/staging/tomee/trunk/content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/MovieTest.java
==============================================================================
--- websites/staging/tomee/trunk/content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/MovieTest.java (original)
+++ websites/staging/tomee/trunk/content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/MovieTest.java Fri Feb 14 13:38:18 2014
@@ -21,8 +21,10 @@ import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
+import javax.annotation.Resource;
 import javax.ejb.EJB;
 import javax.ejb.EJBAccessException;
+import javax.ejb.SessionContext;
 import javax.ejb.embeddable.EJBContainer;
 import javax.naming.Context;
 import javax.naming.InitialContext;
@@ -33,6 +35,9 @@ import java.util.Properties;
 public class MovieTest {
 
     @EJB
+    private UserInfo userInfo;
+
+    @EJB
     private Movies movies;
 
     private EJBContainer container;
@@ -64,6 +69,9 @@ public class MovieTest {
         p.put(Context.SECURITY_CREDENTIALS, "waterfall");
 
         InitialContext context = new InitialContext(p);
+        Assert.assertEquals("Wrong user", "jane", userInfo.getUserName());
+        Assert.assertTrue("jane is supposed to be a Manager", userInfo.isCallerInRole("Manager"));
+        Assert.assertTrue("jane is supposed to be an Employee", userInfo.isCallerInRole("Employee"));
 
         try {
             movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
@@ -91,6 +99,9 @@ public class MovieTest {
         p.put(Context.SECURITY_CREDENTIALS, "cool");
 
         InitialContext context = new InitialContext(p);
+        Assert.assertEquals("Wrong user", "joe", userInfo.getUserName());
+        Assert.assertTrue("joe is supposed to be an Employee", userInfo.isCallerInRole("Employee"));
+
 
         try {
             movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
@@ -120,7 +131,7 @@ public class MovieTest {
     public void testUnauthenticated() throws Exception {
         try {
             movies.addMovie(new Movie("Quentin Tarantino", "Reservoir Dogs", 1992));
-            Assert.fail("Unauthenticated users should not be able to add movies");
+            Assert.fail("Unauthenticated users should not be able to add movies. User: " + userInfo.getUserName());
         } catch (EJBAccessException e) {
             // Good, guests cannot add things
         }

Added: websites/staging/tomee/trunk/content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/UserInfo.java
==============================================================================
--- websites/staging/tomee/trunk/content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/UserInfo.java (added)
+++ websites/staging/tomee/trunk/content/examples-trunk/testing-security-2/src/test/java/org/superbiz/injection/secure/UserInfo.java Fri Feb 14 13:38:18 2014
@@ -0,0 +1,19 @@
+package org.superbiz.injection.secure;
+
+import javax.annotation.Resource;
+import javax.ejb.SessionContext;
+import javax.ejb.Stateless;
+
+@Stateless
+public class UserInfo {
+    @Resource
+    private SessionContext sessionContext;
+
+    public String getUserName() {
+        return sessionContext.getCallerPrincipal().getName();
+    }
+
+    public boolean isCallerInRole(String role) {
+        return sessionContext.isCallerInRole(role);
+    }
+}