[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 16:02:28 EDT 2014
Author: tzeller
Date: Fri Apr 25 16:02:28 2014
New Revision: 207
URL: http://svn.shibboleth.net/view/java-idp-testbed?rev=207&view=rev
Log:
Checkpoint some flow test work.
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=207&r1=206&r2=207&view=diff
==============================================================================
--- trunk/src/test/java/idp/saml2/AbstractSAML2FlowTest.java (original)
+++ trunk/src/test/java/idp/saml2/AbstractSAML2FlowTest.java Fri Apr 25 16:02:28 2014
@@ -33,6 +33,9 @@
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.AuthnContext;
+import org.opensaml.saml.saml2.core.AuthnContextClassRef;
+import org.opensaml.saml.saml2.core.AuthnStatement;
import org.opensaml.saml.saml2.core.Conditions;
import org.opensaml.saml.saml2.core.NameID;
import org.opensaml.saml.saml2.core.Response;
@@ -59,7 +62,7 @@
* <ul>
* <li>{@link #validateSubject(Subject)}</li>
* <li>{@link #validateConditions(Assertion)}</li>
- * <li>{@link #validateAuthenticationStatements(Assertion)}</li>
+ * <li>{@link #validateAuthnStatements(Assertion)}</li>
* <li>{@link #validateAttributeStatements(Assertion)}</li>
* </ul>
* Calls assert methods :
@@ -105,11 +108,9 @@
validateConditions(assertion);
- validateAuthenticationStatements(assertion);
+ validateAuthnStatements(assertion);
validateAttributeStatements(assertion);
-
- // TODO much more
}
/**
@@ -166,14 +167,22 @@
* <p>
* Calls assert methods :
* <ul>
- * <li></li>
+ * <li>{@link #assertAuthnStatements(List)}</li>
+ * <li>{@link #assertAuthnStatement(AuthnStatement)}</li>
+ * <li>{@link #assertAuthnContextClassRef(AuthnContextClassRef)}</li>
* </ul>
*
* @param assertion the assertion
*/
- public void validateAuthenticationStatements(@Nullable final Assertion assertion) {
+ public void validateAuthnStatements(@Nullable final Assertion assertion) {
Assert.assertNotNull(assertion);
- // TODO implement
+
+ final List<AuthnStatement> authnStatements = assertion.getAuthnStatements();
+ assertAuthnStatements(authnStatements);
+
+ final AuthnStatement authnStatement = authnStatements.get(0);
+ assertAuthnStatement(authnStatement);
+ assertAuthnContextClassRef(authnStatement.getAuthnContext().getAuthnContextClassRef());
}
/**
@@ -199,8 +208,6 @@
final List<Attribute> attributes = attributeStatement.getAttributes();
assertAttributes(attributes);
-
- // TODO
}
/**
@@ -292,8 +299,6 @@
public void assertSubjectConfirmation(@Nullable final SubjectConfirmation subjectConfirmation) {
Assert.assertNotNull(subjectConfirmation);
Assert.assertNotNull(subjectConfirmation.getMethod());
- // TODO implement
- // SubjectConfirmationData scd = subjectConfirmation.getSubjectConfirmationData();
}
/**
@@ -345,7 +350,6 @@
Assert.assertNotNull(conditions.getNotBefore());
Assert.assertNotNull(conditions.getNotOnOrAfter());
// TODO check time via some range ?
- // TODO implement
}
/**
@@ -371,6 +375,39 @@
final Audience audience = audiences.get(0);
Assert.assertEquals(audience.getAudienceURI(), AbstractFlowTest.SP_ENTITY_ID);
+ }
+
+ /**
+ * Assert that a single authn statement is present.
+ *
+ * @param authnStatements the authn statements
+ */
+ public void assertAuthnStatements(@Nullable final List<AuthnStatement> authnStatements) {
+ Assert.assertNotNull(authnStatements);
+ Assert.assertEquals(authnStatements.size(), 1);
+ Assert.assertNotNull(authnStatements.get(0));
+ }
+
+ /**
+ * Assert that the authn statement has an authn instant and authn context class ref.
+ *
+ * @param authnStatement the authn statement
+ */
+ public void assertAuthnStatement(@Nonnull final AuthnStatement authnStatement) {
+ Assert.assertNotNull(authnStatement);
+ Assert.assertNotNull(authnStatement.getAuthnInstant());
+ // TODO check authn instant time ?
+ Assert.assertNotNull(authnStatement.getAuthnContext());
+ Assert.assertNotNull(authnStatement.getAuthnContext().getAuthnContextClassRef());
+ }
+
+ /**
+ * Assert that the authn context class ref is {@link AuthnContext#IP_AUTHN_CTX}.
+ *
+ * @param authnContextClassRef the authn context class ref
+ */
+ public void assertAuthnContextClassRef(@Nullable final AuthnContextClassRef authnContextClassRef) {
[... 35 lines stripped ...]
More information about the commits
mailing list