[java-idp-testbed COMMIT] in /trunk/src/test/java/idp/saml2: AbstractSAML2FlowTest.java SAML2AttributeQueryFlowTest.java
noreply at shibboleth.net
noreply at shibboleth.net
Fri Apr 25 15:33:45 EDT 2014
Author: tzeller
Date: Fri Apr 25 15:33:44 2014
New Revision: 206
URL: http://svn.shibboleth.net/view/java-idp-testbed?rev=206&view=rev
Log:
Checkpoint some flow test work. More complete SAML 2 tests with overrides for the attribute query flow.
Modified:
trunk/src/test/java/idp/saml2/AbstractSAML2FlowTest.java
trunk/src/test/java/idp/saml2/SAML2AttributeQueryFlowTest.java
Modified: trunk/src/test/java/idp/saml2/AbstractSAML2FlowTest.java
URL: http://svn.shibboleth.net/view/java-idp-testbed/trunk/src/test/java/idp/saml2/AbstractSAML2FlowTest.java?rev=206&r1=205&r2=206&view=diff
==============================================================================
--- trunk/src/test/java/idp/saml2/AbstractSAML2FlowTest.java (original)
+++ trunk/src/test/java/idp/saml2/AbstractSAML2FlowTest.java Fri Apr 25 15:33:44 2014
@@ -31,12 +31,16 @@
import org.opensaml.saml.saml2.core.Assertion;
import org.opensaml.saml.saml2.core.Attribute;
import org.opensaml.saml.saml2.core.AttributeStatement;
+import org.opensaml.saml.saml2.core.Audience;
+import org.opensaml.saml.saml2.core.AudienceRestriction;
import org.opensaml.saml.saml2.core.Conditions;
import org.opensaml.saml.saml2.core.NameID;
import org.opensaml.saml.saml2.core.Response;
import org.opensaml.saml.saml2.core.Status;
import org.opensaml.saml.saml2.core.StatusCode;
import org.opensaml.saml.saml2.core.Subject;
+import org.opensaml.saml.saml2.core.SubjectConfirmation;
+import org.opensaml.saml.saml2.core.SubjectConfirmationData;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.webflow.execution.FlowExecutionOutcome;
import org.springframework.webflow.executor.FlowExecutionResult;
@@ -53,6 +57,7 @@
* <p>
* Calls validate methods :
* <ul>
+ * <li>{@link #validateSubject(Subject)}</li>
* <li>{@link #validateConditions(Assertion)}</li>
* <li>{@link #validateAuthenticationStatements(Assertion)}</li>
* <li>{@link #validateAttributeStatements(Assertion)}</li>
@@ -96,7 +101,7 @@
final Assertion assertion = assertions.get(0);
assertAssertion(assertion);
- assertSubject(assertion.getSubject());
+ validateSubject(assertion.getSubject());
validateConditions(assertion);
@@ -108,11 +113,38 @@
}
/**
+ * Validate the subject.
+ * <p>
+ * Calls assert methods :
+ * <ul>
+ * <li>{@link #assertSubject(Subject)}</li>
+ * <li>{@link #assertNameID(NameID)}</li>
+ * <li>{@link #assertSubjectConfirmations(List)}</li>
+ * <li>{@link #assertSubjectConfirmation(SubjectConfirmation)}</li>
+ * <li>{@link #assertSubjectConfirmationMethod(SubjectConfirmation)}</li>
+ * <li>{@link #assertSubjectConfirmationData(SubjectConfirmationData)}</li>
+ * </ul>
+ *
+ * @param subject the subject
+ */
+ public void validateSubject(@Nullable final Subject subject) {
+ assertSubject(subject);
+ assertNameID(subject.getNameID());
+ assertSubjectConfirmations(subject.getSubjectConfirmations());
+ final SubjectConfirmation subjectConfirmation = subject.getSubjectConfirmations().get(0);
+ assertSubjectConfirmation(subjectConfirmation);
+ assertSubjectConfirmationMethod(subjectConfirmation);
+ assertSubjectConfirmationData(subjectConfirmation.getSubjectConfirmationData());
+ }
+
+ /**
* Validate the assertion conditions.
* <p>
* Calls assert methods :
* <ul>
- * <li></li>
+ * <li>{@link #assertConditions(Conditions)}</li>
+ * <li>{@link #assertAudienceRestrictions(List)}</li>
+ * <li>{@link #assertAudienceRestriction(AudienceRestriction)}</li>
* </ul>
*
* @param assertion the assertion
@@ -122,7 +154,11 @@
final Conditions conditions = assertion.getConditions();
assertConditions(conditions);
- // TODO implement
+
+ final List<AudienceRestriction> audienceRestrictions = conditions.getAudienceRestrictions();
+ assertAudienceRestrictions(audienceRestrictions);
+
+ assertAudienceRestriction(audienceRestrictions.get(0));
}
/**
@@ -229,6 +265,7 @@
/**
* Assert that the subject has a nameID and subject confirmations.
*
+ *
* @param subject the subject
*/
public void assertSubject(@Nullable final Subject subject) {
@@ -237,15 +274,103 @@
Assert.assertNotNull(subject.getSubjectConfirmations());
}
+ /**
+ * Assert that a single subject confirmation is present.
+ *
+ * @param subjectConfirmations the subject confirmations
+ */
+ public void assertSubjectConfirmations(@Nullable final List<SubjectConfirmation> subjectConfirmations) {
+ Assert.assertNotNull(subjectConfirmations);
+ Assert.assertEquals(subjectConfirmations.size(), 1);
+ }
+
+ /**
+ * Assert that the subject confirmation has a confirmation method.
+ *
+ * @param subjectConfirmation the subject confirmation
+ */
[... 156 lines stripped ...]
More information about the commits
mailing list