[jboss-cvs] Picketbox SVN: r182 - trunk/picketbox-infinispan/src/test/java/org/jboss/security/test/authentication.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Mar 31 10:41:47 EDT 2011
Author: mmoyses
Date: 2011-03-31 10:41:47 -0400 (Thu, 31 Mar 2011)
New Revision: 182
Modified:
trunk/picketbox-infinispan/src/test/java/org/jboss/security/test/authentication/JBossCachedAuthenticationManagerUnitTestCase.java
Log:
SECURITY-577: tests for new AuthenticationManager
Modified: trunk/picketbox-infinispan/src/test/java/org/jboss/security/test/authentication/JBossCachedAuthenticationManagerUnitTestCase.java
===================================================================
--- trunk/picketbox-infinispan/src/test/java/org/jboss/security/test/authentication/JBossCachedAuthenticationManagerUnitTestCase.java 2011-03-31 14:13:13 UTC (rev 181)
+++ trunk/picketbox-infinispan/src/test/java/org/jboss/security/test/authentication/JBossCachedAuthenticationManagerUnitTestCase.java 2011-03-31 14:41:47 UTC (rev 182)
@@ -31,6 +31,7 @@
import junit.framework.TestCase;
import org.infinispan.Cache;
+import org.infinispan.eviction.EvictionStrategy;
import org.infinispan.manager.DefaultCacheManager;
import org.infinispan.manager.EmbeddedCacheManager;
import org.jboss.security.AuthenticationManager;
@@ -85,9 +86,8 @@
AuthenticationManager am = new JBossCachedAuthenticationManager("test", acbh);
EmbeddedCacheManager cacheManager = new DefaultCacheManager();
- org.infinispan.config.Configuration configuration = new org.infinispan.config.Configuration();
+ org.infinispan.config.Configuration configuration = cacheManager.getDefaultConfiguration();
configuration.setExpirationMaxIdle(2000);
- cacheManager.defineConfiguration("test", configuration);
Cache<Principal, DomainInfo> cache = cacheManager.getCache("test");
@SuppressWarnings("unchecked")
CacheableManager<Cache<Principal, DomainInfo>, Principal> cm = (CacheableManager<Cache<Principal, DomainInfo>, Principal>) am;
@@ -106,9 +106,8 @@
AuthenticationManager am = new JBossCachedAuthenticationManager("test", acbh);
EmbeddedCacheManager cacheManager = new DefaultCacheManager();
- org.infinispan.config.Configuration configuration = new org.infinispan.config.Configuration();
+ org.infinispan.config.Configuration configuration = cacheManager.getDefaultConfiguration();
configuration.setExpirationMaxIdle(1000);
- cacheManager.defineConfiguration("test", configuration);
Cache<Principal, DomainInfo> cache = cacheManager.getCache("test");
@SuppressWarnings("unchecked")
CacheableManager<Cache<Principal, DomainInfo>, Principal> cm = (CacheableManager<Cache<Principal, DomainInfo>, Principal>) am;
@@ -127,9 +126,8 @@
AuthenticationManager am = new JBossCachedAuthenticationManager("test", acbh);
EmbeddedCacheManager cacheManager = new DefaultCacheManager();
- org.infinispan.config.Configuration configuration = new org.infinispan.config.Configuration();
+ org.infinispan.config.Configuration configuration = cacheManager.getDefaultConfiguration();
configuration.setExpirationMaxIdle(2000);
- cacheManager.defineConfiguration("test", configuration);
Cache<Principal, DomainInfo> cache = cacheManager.getCache("test");
@SuppressWarnings("unchecked")
CacheableManager<Cache<Principal, DomainInfo>, Principal> cm = (CacheableManager<Cache<Principal, DomainInfo>, Principal>) am;
@@ -154,10 +152,9 @@
AuthenticationManager am = new JBossCachedAuthenticationManager("test", acbh);
EmbeddedCacheManager cacheManager = new DefaultCacheManager();
- org.infinispan.config.Configuration configuration = new org.infinispan.config.Configuration();
+ org.infinispan.config.Configuration configuration = cacheManager.getDefaultConfiguration();
configuration.setExpirationMaxIdle(2000);
configuration.setExpirationLifespan(3000);
- cacheManager.defineConfiguration("test", configuration);
Cache<Principal, DomainInfo> cache = cacheManager.getCache("test");
@SuppressWarnings("unchecked")
CacheableManager<Cache<Principal, DomainInfo>, Principal> cm = (CacheableManager<Cache<Principal, DomainInfo>, Principal>) am;
@@ -173,6 +170,39 @@
assertFalse(cm.containsKey(p));
}
+ public void testCacheMaxEntriesEviction() throws Exception
+ {
+ Principal p = new SimplePrincipal("jduke");
+ AppCallbackHandler acbh = new AppCallbackHandler("jduke", "theduke".toCharArray());
+ AuthenticationManager am = new JBossCachedAuthenticationManager("test", acbh);
+
+ EmbeddedCacheManager cacheManager = new DefaultCacheManager();
+ org.infinispan.config.Configuration configuration = cacheManager.getDefaultConfiguration();
+ configuration.setExpirationMaxIdle(3000);
+ configuration.setEvictionMaxEntries(2);
+ configuration.setEvictionStrategy(EvictionStrategy.FIFO);
+ configuration.setEvictionWakeUpInterval(2000);
+ Cache<Principal, DomainInfo> cache = cacheManager.getCache("test");
+ @SuppressWarnings("unchecked")
+ CacheableManager<Cache<Principal, DomainInfo>, Principal> cm = (CacheableManager<Cache<Principal, DomainInfo>, Principal>) am;
+ cm.setCache(cache);
+
+ assertTrue(am.isValid(p, "theduke"));
+ assertTrue(cm.containsKey(p));
+ Principal p2 = new SimplePrincipal("scott");
+ assertTrue(am.isValid(p2, "echoman"));
+ assertTrue(cm.containsKey(p));
+ // we store the caller principal in the cache
+ Principal p2_ = new SimplePrincipal("callerScott");
+ assertTrue(cm.containsKey(p2_));
+ Principal p3 = new SimplePrincipal("stark");
+ assertTrue(am.isValid(p3, "javaman"));
+ assertFalse(cm.containsKey(p));
+ Principal p3_ = new SimplePrincipal("callerStark");
+ assertTrue(cm.containsKey(p2_));
+ assertTrue(cm.containsKey(p3_));
+ }
+
private void establishSecurityConfiguration()
{
SecurityActions.setJAASConfiguration((Configuration) new TestConfig());
More information about the jboss-cvs-commits
mailing list