[java-identity-provider] branch master updated: Switch to new helper method and add test for exceeding size.
Scott Cantor
cantor.2 at osu.edu
Mon May 22 22:47:48 EDT 2017
This is an automated email from the git hooks/post-receive script.
scantor pushed a commit to branch master
in repository java-identity-provider.
View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=6907329dfe17bc9857d5215f88d7d8e60d1057f8
The following commit(s) were added to refs/heads/master by this push:
new 6907329 Switch to new helper method and add test for exceeding size.
6907329 is described below
commit 6907329dfe17bc9857d5215f88d7d8e60d1057f8
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Mon May 22 22:47:46 2017 -0400
Switch to new helper method and add test for exceeding size.
---
.../dc/http/impl/HTTPDataConnectorTest.java | 88 +++++++++++++++++-----
.../idp/attribute/resolver/impl/dc/http/test.js | 4 +-
.../resolver/impl/dc/http/{test.js => testsize.js} | 4 +-
.../idp/attribute/resolver/impl/dc/http/v8/test.js | 4 +-
.../impl/dc/http/v8/{test.js => testsize.js} | 4 +-
5 files changed, 76 insertions(+), 28 deletions(-)
diff --git a/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/HTTPDataConnectorTest.java b/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/HTTPDataConnectorTest.java
index d01b00c..af5880f 100644
--- a/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/HTTPDataConnectorTest.java
+++ b/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/dc/http/impl/HTTPDataConnectorTest.java
@@ -53,9 +53,9 @@ public class HTTPDataConnectorTest {
RepositorySupport.buildHTTPSResourceURL("java-identity-provider",
"idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.json");
- private static final String SCRIPT_PATH = "/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.js";
+ private static final String SCRIPT_PATH = "/net/shibboleth/idp/attribute/resolver/impl/dc/http/";
- private static final String SCRIPT_PATH_V8 = "/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/test.js";
+ private static final String SCRIPT_PATH_V8 = "/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/";
private HTTPDataConnector connector;
@@ -64,22 +64,16 @@ public class HTTPDataConnectorTest {
return ver.startsWith("1.8");
}
- @BeforeMethod public void setUp() throws IOException, ScriptException {
+ @BeforeMethod public void setUp() {
connector = new HTTPDataConnector();
connector.setId(TEST_CONNECTOR_NAME);
connector.setHttpClient(
HttpClientBuilder.create()
.setSSLSocketFactory(SecurityEnhancedHttpClientSupport.buildTLSSocketFactory(false, false))
.build());
-
- final ScriptedResponseMappingStrategy mapping =
- ScriptedResponseMappingStrategy.resourceScript(
- ResourceHelper.of(new ClassPathResource(isV8() ? SCRIPT_PATH_V8 : SCRIPT_PATH)));
- mapping.setLogPrefix(TEST_CONNECTOR_NAME + ":");
- connector.setMappingStrategy(mapping);
}
- @Test public void test() throws ComponentInitializationException, ResolutionException {
+ @Test public void test() throws ComponentInitializationException, ResolutionException, ScriptException, IOException {
final HttpClientSecurityParameters params = new HttpClientSecurityParameters();
params.setTLSProtocols(Collections.singleton("TLSv1"));
final TemplatedURLBuilder builder = new TemplatedURLBuilder();
@@ -87,10 +81,15 @@ public class HTTPDataConnectorTest {
builder.setVelocityEngine(VelocityEngine.newVelocityEngine());
builder.setHttpClientSecurityParameters(params);
builder.initialize();
-
connector.setExecutableSearchBuilder(builder);
- ((ScriptedResponseMappingStrategy) connector.getMappingStrategy()).setAcceptStatuses(Collections.singleton(HttpStatus.SC_OK));
- ((ScriptedResponseMappingStrategy) connector.getMappingStrategy()).setAcceptTypes(Collections.singleton("application/json"));
+
+ final ScriptedResponseMappingStrategy mapping =
+ ScriptedResponseMappingStrategy.resourceScript(
+ ResourceHelper.of(new ClassPathResource((isV8() ? SCRIPT_PATH_V8 : SCRIPT_PATH) + "test.js")));
+ mapping.setLogPrefix(TEST_CONNECTOR_NAME + ":");
+ mapping.setAcceptStatuses(Collections.singleton(HttpStatus.SC_OK));
+ mapping.setAcceptTypes(Collections.singleton("application/json"));
+ connector.setMappingStrategy(mapping);
connector.initialize();
final AttributeResolutionContext context =
@@ -110,16 +109,49 @@ public class HTTPDataConnectorTest {
}
@Test(expectedExceptions=ResolutionException.class) public void testBadProtocol()
- throws ComponentInitializationException, ResolutionException {
+ throws ComponentInitializationException, ResolutionException, ScriptException, IOException {
final HttpClientSecurityParameters params = new HttpClientSecurityParameters();
params.setTLSProtocols(Collections.singleton("SSLv3"));
final TemplatedURLBuilder builder = new TemplatedURLBuilder();
builder.setTemplateText(TEST_URL);
builder.setVelocityEngine(VelocityEngine.newVelocityEngine());
builder.setHttpClientSecurityParameters(params);
- builder.initialize();
+ builder.initialize();
+ connector.setExecutableSearchBuilder(builder);
+ final ScriptedResponseMappingStrategy mapping =
+ ScriptedResponseMappingStrategy.resourceScript(
+ ResourceHelper.of(new ClassPathResource((isV8() ? SCRIPT_PATH_V8 : SCRIPT_PATH) + "test.js")));
+ mapping.setLogPrefix(TEST_CONNECTOR_NAME + ":");
+ mapping.setAcceptStatuses(Collections.singleton(HttpStatus.SC_OK));
+ mapping.setAcceptTypes(Collections.singleton("application/json"));
+ connector.setMappingStrategy(mapping);
+
+ connector.initialize();
+
+ final AttributeResolutionContext context =
+ TestSources.createResolutionContext(TestSources.PRINCIPAL_ID, TestSources.IDP_ENTITY_ID,
+ TestSources.SP_ENTITY_ID);
+
+ connector.resolve(context);
+ }
+
+ @Test(expectedExceptions=ResolutionException.class) public void testSize()
+ throws ComponentInitializationException, ResolutionException, ScriptException, IOException {
+ final TemplatedURLBuilder builder = new TemplatedURLBuilder();
+ builder.setTemplateText("https://shibboleth.net/test.json");
+ builder.setVelocityEngine(VelocityEngine.newVelocityEngine());
+ builder.initialize();
connector.setExecutableSearchBuilder(builder);
+
+ final ScriptedResponseMappingStrategy mapping =
+ ScriptedResponseMappingStrategy.resourceScript(
+ ResourceHelper.of(new ClassPathResource((isV8() ? SCRIPT_PATH_V8 : SCRIPT_PATH) + "testsize.js")));
+ mapping.setLogPrefix(TEST_CONNECTOR_NAME + ":");
+ mapping.setAcceptStatuses(Collections.singleton(HttpStatus.SC_OK));
+ mapping.setAcceptTypes(Collections.singleton("application/json"));
+ connector.setMappingStrategy(mapping);
+
connector.initialize();
final AttributeResolutionContext context =
@@ -130,13 +162,21 @@ public class HTTPDataConnectorTest {
}
@Test(expectedExceptions=ResolutionException.class) public void testMissing()
- throws ComponentInitializationException, ResolutionException {
+ throws ComponentInitializationException, ResolutionException, ScriptException, IOException {
final TemplatedURLBuilder builder = new TemplatedURLBuilder();
builder.setTemplateText("https://shibboleth.net/test.json");
builder.setVelocityEngine(VelocityEngine.newVelocityEngine());
builder.initialize();
-
connector.setExecutableSearchBuilder(builder);
+
+ final ScriptedResponseMappingStrategy mapping =
+ ScriptedResponseMappingStrategy.resourceScript(
+ ResourceHelper.of(new ClassPathResource((isV8() ? SCRIPT_PATH_V8 : SCRIPT_PATH) + "test.js")));
+ mapping.setLogPrefix(TEST_CONNECTOR_NAME + ":");
+ mapping.setAcceptStatuses(Collections.singleton(HttpStatus.SC_OK));
+ mapping.setAcceptTypes(Collections.singleton("application/json"));
+ connector.setMappingStrategy(mapping);
+
connector.initialize();
final AttributeResolutionContext context =
@@ -145,7 +185,7 @@ public class HTTPDataConnectorTest {
connector.resolve(context);
}
-
+
@Test public void testMissingOk() throws ComponentInitializationException, ResolutionException, ScriptException {
final TemplatedURLBuilder builder = new TemplatedURLBuilder();
builder.setTemplateText("https://shibboleth.net/test.json");
@@ -170,16 +210,24 @@ public class HTTPDataConnectorTest {
Assert.assertTrue(attrs == null || attrs.isEmpty());
}
- @Test public void resolveWithCache() throws ComponentInitializationException, ResolutionException {
+ @Test public void resolveWithCache() throws ComponentInitializationException, ResolutionException, ScriptException, IOException {
final TemplatedURLBuilder builder = new TemplatedURLBuilder();
builder.setTemplateText(TEST_URL);
builder.setVelocityEngine(VelocityEngine.newVelocityEngine());
builder.initialize();
-
connector.setExecutableSearchBuilder(builder);
+ final ScriptedResponseMappingStrategy mapping =
+ ScriptedResponseMappingStrategy.resourceScript(
+ ResourceHelper.of(new ClassPathResource((isV8() ? SCRIPT_PATH_V8 : SCRIPT_PATH) + "test.js")));
+ mapping.setLogPrefix(TEST_CONNECTOR_NAME + ":");
+ mapping.setAcceptStatuses(Collections.singleton(HttpStatus.SC_OK));
+ mapping.setAcceptTypes(Collections.singleton("application/json"));
+ connector.setMappingStrategy(mapping);
+
final TestCache cache = new TestCache();
connector.setResultsCache(cache);
+
connector.initialize();
final AttributeResolutionContext context =
diff --git a/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.js b/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.js
index b1cce73..a99fcd4 100644
--- a/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.js
+++ b/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.js
@@ -1,8 +1,8 @@
importClass(Packages.java.util.HashSet);
-importClass(Packages.org.apache.http.util.EntityUtils);
+importClass(Packages.net.shibboleth.utilities.java.support.httpclient.HttpClientSupport);
importPackage(Packages.net.shibboleth.idp.attribute);
-var body = EntityUtils.toString(response.getEntity(), "UTF-8");
+var body = HttpClientSupport.toString(response.getEntity(), "UTF-8", 1024);
var result = JSON.parse(body);
for (var i=0; i<result.length; i++) {
diff --git a/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.js b/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/testsize.js
similarity index 73%
copy from idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.js
copy to idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/testsize.js
index b1cce73..a6b5ef8 100644
--- a/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/test.js
+++ b/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/testsize.js
@@ -1,8 +1,8 @@
importClass(Packages.java.util.HashSet);
-importClass(Packages.org.apache.http.util.EntityUtils);
+importClass(Packages.net.shibboleth.utilities.java.support.httpclient.HttpClientSupport);
importPackage(Packages.net.shibboleth.idp.attribute);
-var body = EntityUtils.toString(response.getEntity(), "UTF-8");
+var body = HttpClientSupport.toString(response.getEntity(), "UTF-8", 10);
var result = JSON.parse(body);
for (var i=0; i<result.length; i++) {
diff --git a/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/test.js b/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/test.js
index f8acb96..ee14d9a 100644
--- a/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/test.js
+++ b/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/test.js
@@ -1,5 +1,5 @@
-var EntityHelper = Java.type("org.apache.http.util.EntityUtils");
-var body = EntityHelper.toString(response.getEntity(), "UTF-8");
+var HttpClientSupport = Java.type("net.shibboleth.utilities.java.support.httpclient.HttpClientSupport");
+var body = HttpClientSupport.toString(response.getEntity(), "UTF-8", 1024);
var result = JSON.parse(body);
var IdPAttribute = Java.type("net.shibboleth.idp.attribute.IdPAttribute");
diff --git a/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/test.js b/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/testsize.js
similarity index 75%
copy from idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/test.js
copy to idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/testsize.js
index f8acb96..2fcccad 100644
--- a/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/test.js
+++ b/idp-attribute-resolver-impl/src/test/resources/net/shibboleth/idp/attribute/resolver/impl/dc/http/v8/testsize.js
@@ -1,5 +1,5 @@
-var EntityHelper = Java.type("org.apache.http.util.EntityUtils");
-var body = EntityHelper.toString(response.getEntity(), "UTF-8");
+var HttpClientSupport = Java.type("net.shibboleth.utilities.java.support.httpclient.HttpClientSupport");
+var body = HttpClientSupport.toString(response.getEntity(), "UTF-8", 10);
var result = JSON.parse(body);
var IdPAttribute = Java.type("net.shibboleth.idp.attribute.IdPAttribute");
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list