[java-identity-provider COMMIT] in /trunk/idp-attribute-resolver-impl/src/test: java/net/shibboleth/idp/attribute/res...
noreply at shibboleth.net
noreply at shibboleth.net
Thu Oct 16 15:16:18 EDT 2014
Author: scantor
Date: Thu Oct 16 15:16:18 2014
New Revision: 6728
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=6728&view=rev
Log:
IDP-494 - add test case that demonstrates rowcount bug
Modified:
trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RdbmsDataConnectorTest.java
trunk/idp-attribute-resolver-impl/src/test/resources/data/net/shibboleth/idp/attribute/resolver/impl/dc/rdbms/RdbmsData.sql
trunk/idp-attribute-resolver-impl/src/test/resources/data/net/shibboleth/idp/attribute/resolver/impl/dc/rdbms/RdbmsStore.sql
Modified: trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RdbmsDataConnectorTest.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RdbmsDataConnectorTest.java?rev=6728&r1=6727&r2=6728&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RdbmsDataConnectorTest.java (original)
+++ trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/rdbms/impl/RdbmsDataConnectorTest.java Thu Oct 16 15:16:18 2014
@@ -60,7 +60,9 @@
private static final String DATA_FILE = "/data/net/shibboleth/idp/attribute/resolver/impl/dc/rdbms/RdbmsData.sql";
- private static final String SQL_QUERY = "SELECT userid, name, homephone, mail FROM people WHERE userid='%s'";
+ private static final String USER_QUERY = "SELECT userid, name, homephone, mail FROM people WHERE userid='%s'";
+
+ private static final String GROUP_QUERY = "SELECT name FROM groups WHERE userid='%s'";
private DataSource datasource;
@@ -84,12 +86,30 @@
* @param strategy to map results
* @return rdbms data connector
*/
- protected RDBMSDataConnector createRdbmsDataConnector(ExecutableSearchBuilder builder,
+ protected RDBMSDataConnector createUserRdbmsDataConnector(ExecutableSearchBuilder builder,
ResultMappingStrategy strategy) {
RDBMSDataConnector connector = new RDBMSDataConnector();
connector.setId(TEST_CONNECTOR_NAME);
connector.setDataSource(datasource);
- connector.setExecutableSearchBuilder(builder == null ? new FormatExecutableStatementBuilder(SQL_QUERY) : builder);
+ connector.setExecutableSearchBuilder(builder == null ? new FormatExecutableStatementBuilder(USER_QUERY) : builder);
+ connector.setMappingStrategy(strategy == null ? new StringResultMappingStrategy() : strategy);
+ return connector;
+ }
+
+ /**
+ * Creates a RDBMS data connector for group lookup using the supplied builder and strategy. Sets defaults values if
+ * the parameters are null.
+ *
+ * @param builder to build executable statements
+ * @param strategy to map results
+ * @return rdbms data connector
+ */
+ protected RDBMSDataConnector createGroupRdbmsDataConnector(ExecutableSearchBuilder builder,
+ ResultMappingStrategy strategy) {
+ RDBMSDataConnector connector = new RDBMSDataConnector();
+ connector.setId(TEST_CONNECTOR_NAME + "ForGroups");
+ connector.setDataSource(datasource);
+ connector.setExecutableSearchBuilder(builder == null ? new FormatExecutableStatementBuilder(GROUP_QUERY) : builder);
connector.setMappingStrategy(strategy == null ? new StringResultMappingStrategy() : strategy);
return connector;
}
@@ -114,7 +134,7 @@
// OK
}
- ExecutableSearchBuilder statementBuilder = new FormatExecutableStatementBuilder(SQL_QUERY);
+ ExecutableSearchBuilder statementBuilder = new FormatExecutableStatementBuilder(USER_QUERY);
connector.setExecutableSearchBuilder(statementBuilder);
try {
connector.initialize();
@@ -193,7 +213,7 @@
}
@Test public void resolve() throws ComponentInitializationException, ResolutionException {
- RDBMSDataConnector connector = createRdbmsDataConnector(null, null);
+ RDBMSDataConnector connector = createUserRdbmsDataConnector(null, null);
connector.initialize();
AttributeResolutionContext context =
@@ -223,7 +243,7 @@
@Test(expectedExceptions = ResolutionException.class) public void resolveNoStatement()
throws ComponentInitializationException, ResolutionException {
- RDBMSDataConnector connector = createRdbmsDataConnector(new ExecutableSearchBuilder<ExecutableStatement>() {
+ RDBMSDataConnector connector = createUserRdbmsDataConnector(new ExecutableSearchBuilder<ExecutableStatement>() {
@Override @Nonnull public ExecutableStatement build(@Nonnull AttributeResolutionContext resolutionContext, @Nonnull Map<String, Set<IdPAttributeValue<?>>> dependencyAttributes)
throws ResolutionException {
@@ -240,7 +260,7 @@
[... 76 lines stripped ...]
More information about the commits
mailing list