[java-identity-provider COMMIT] in /trunk/idp-attribute-resolver-spring/src/test: java/net/shibboleth/idp/attribute/r...

noreply at shibboleth.net noreply at shibboleth.net
Mon Sep 2 12:07:45 EDT 2013


Author: rdw
Date: Mon Sep  2 12:07:44 2013
New Revision: 4738

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=4738&view=rev
Log:
IDP-273 Widen out the AttributeResolverTest: Add in the RDBMS data connector.  No templating (yet)

Added:
    trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/RdbmsData.sql
    trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/RdbmsStore.sql
Modified:
    trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverServiceTest.java
    trunk/idp-attribute-resolver-spring/src/test/resources/net/shibboleth/idp/attribute/resolver/spring/attribute-resolver.xml

Modified: trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverServiceTest.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverServiceTest.java?rev=4738&r1=4737&r2=4738&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverServiceTest.java (original)
+++ trunk/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/AttributeResolverServiceTest.java Mon Sep  2 12:07:44 2013
@@ -18,11 +18,17 @@
 package net.shibboleth.idp.attribute.resolver.spring;
 
 import java.util.Map;
+import java.util.Set;
+
+import javax.sql.DataSource;
 
 import net.shibboleth.idp.attribute.Attribute;
+import net.shibboleth.idp.attribute.AttributeValue;
 import net.shibboleth.idp.attribute.StringAttributeValue;
 import net.shibboleth.idp.attribute.resolver.AttributeResolutionContext;
 import net.shibboleth.idp.attribute.resolver.ResolutionException;
+import net.shibboleth.idp.attribute.resolver.impl.DatabaseTestingSupport;
+import net.shibboleth.idp.attribute.resolver.impl.TestSources;
 import net.shibboleth.idp.service.ServiceException;
 import net.shibboleth.idp.spring.SchemaTypeAwareXMLBeanDefinitionReader;
 import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
@@ -46,18 +52,34 @@
 
     /** Class logger. */
     private final Logger log = LoggerFactory.getLogger(AttributeResolverServiceTest.class);
+    
+    /* LDAP */
     private InMemoryDirectoryServer directoryServer;
+    
+    private static final String LDAP_INIT_FILE = "src/test/resources/net/shibboleth/idp/attribute/resolver/spring/ldapDataConnectorTest.ldif";
+    
+    /** DataBase initialise */
+    private static final String DB_INIT_FILE = "/net/shibboleth/idp/attribute/resolver/spring/RdbmsStore.sql";
 
-    @BeforeTest public void setupDirectoryServer() throws LDAPException {
+    /** DataBase Populate */
+    private static final String DB_DATA_FILE = "/net/shibboleth/idp/attribute/resolver/spring/RdbmsData.sql";
 
+    private DataSource datasource;
+
+    @BeforeTest public void setupDataConnectors() throws LDAPException {
+
+        // LDAP
         InMemoryDirectoryServerConfig config = new InMemoryDirectoryServerConfig("dc=shibboleth,dc=net");
         config.setListenerConfigs(InMemoryListenerConfig.createLDAPConfig("default", 10391));
         config.addAdditionalBindCredentials("cn=Directory Manager", "password");
         directoryServer = new InMemoryDirectoryServer(config);
-        directoryServer
-                .importFromLDIF(true,
-                        "src/test/resources/net/shibboleth/idp/attribute/resolver/spring/ldapDataConnectorTest.ldif");
+        directoryServer.importFromLDIF(true,LDAP_INIT_FILE);
         directoryServer.startListening();
+        
+        //RDBMS
+        datasource = DatabaseTestingSupport.GetMockDataSource(DB_INIT_FILE, "myTestDB");
+        DatabaseTestingSupport.InitializeDataSourceFromFile(DB_DATA_FILE, datasource);
+
     }
 
     // stub test
@@ -80,16 +102,90 @@
         attributeResolverService.start();
 
         // try to resolve some attributes
-        AttributeResolutionContext resolutionContext = new AttributeResolutionContext();
+        final AttributeResolutionContext resolutionContext = TestSources.createResolutionContext("PETER_THE_PRINCIPAL", "issuer", "recipient");
         attributeResolverService.resolveAttributes(resolutionContext);
         Map<String, Attribute> resolvedAttributes = resolutionContext.getResolvedAttributes();
         log.debug("resolved attributes '{}'", resolvedAttributes);
 
-        // just one attribute for now
-        Assert.assertEquals(resolvedAttributes.size(), 1);
-        Assert.assertNotNull(resolvedAttributes.get("eduPersonAffiliation"));
-        Assert.assertEquals(resolvedAttributes.get("eduPersonAffiliation").getValues().size(), 1);
-        Assert.assertTrue(resolvedAttributes.get("eduPersonAffiliation").getValues()
-                .contains(new StringAttributeValue("member")));

[... 197 lines stripped ...]


More information about the commits mailing list