SamlResponseStatus status = new SamlResponseStatus(stausCode); status.setSubStatusCode(subStatusCode); status.setStatusMessage(messageEntry.item(0).getTextContent());
/** * Checks the Status * * @throws ValidationError * If status is not success */ public void checkStatus() throws ValidationError { SamlResponseStatus responseStatus = getStatus(samlResponseDocument); if (!responseStatus.is(Constants.STATUS_SUCCESS)) { String statusExceptionMsg = "The status code of the Response was not Success, was " + responseStatus.getStatusCode(); if (responseStatus.getStatusMessage() != null) { statusExceptionMsg += " -> " + responseStatus.getStatusMessage(); } throw new ValidationError(statusExceptionMsg, ValidationError.STATUS_CODE_IS_NOT_SUCCESS); } }
/** * Tests the SamlResponseStatus setStatusCode method * * @see com.onelogin.saml2.model.SamlResponseStatus#setStatusCode */ @Test public void testSetStatusCode() { SamlResponseStatus srs1 = new SamlResponseStatus(null); assertNull(srs1.getStatusCode()); assertNull(srs1.getStatusMessage()); srs1.setStatusCode(""); assertEquals("", srs1.getStatusCode()); assertNull(srs1.getStatusMessage()); srs1.setStatusCode("urn:oasis:names:tc:SAML:2.0:status:Success"); assertEquals("urn:oasis:names:tc:SAML:2.0:status:Success", srs1.getStatusCode()); assertNull(srs1.getStatusMessage()); srs1.setStatusCode("urn:oasis:names:tc:SAML:2.0:status:Responder"); assertEquals("urn:oasis:names:tc:SAML:2.0:status:Responder", srs1.getStatusCode()); assertNull(srs1.getStatusMessage()); }
/** * Tests the SamlResponseStatus setStatusMessage method * * @see com.onelogin.saml2.model.SamlResponseStatus#setStatusMessage */ @Test public void testSetStatusMessage() { SamlResponseStatus srs1 = new SamlResponseStatus(null, null); assertNull(srs1.getStatusCode()); assertNull(srs1.getStatusMessage()); srs1.setStatusMessage(""); assertNull(srs1.getStatusCode()); assertEquals("", srs1.getStatusMessage()); srs1.setStatusMessage("Invalid NameID"); assertNull(srs1.getStatusCode()); assertEquals("Invalid NameID", srs1.getStatusMessage()); }
/** * Tests the SamlResponseStatus constructor * * @see com.onelogin.saml2.model.SamlResponseStatus */ @Test public void testSamlResponseStatus() { SamlResponseStatus srs1 = new SamlResponseStatus(null); assertNull(srs1.getStatusCode()); assertNull(srs1.getStatusMessage()); SamlResponseStatus srs2 = new SamlResponseStatus(null, null); assertNull(srs2.getStatusCode()); assertNull(srs2.getStatusMessage()); SamlResponseStatus srs3 = new SamlResponseStatus(""); assertEquals("", srs3.getStatusCode()); assertNull(srs3.getStatusMessage()); SamlResponseStatus srs4 = new SamlResponseStatus("", ""); assertEquals("", srs4.getStatusCode()); assertEquals("", srs4.getStatusMessage()); SamlResponseStatus srsSuccess = new SamlResponseStatus("urn:oasis:names:tc:SAML:2.0:status:Success"); assertEquals("urn:oasis:names:tc:SAML:2.0:status:Success", srsSuccess.getStatusCode()); assertNull(srsSuccess.getStatusMessage()); SamlResponseStatus srsResponder = new SamlResponseStatus("urn:oasis:names:tc:SAML:2.0:status:Responder", "Invalid NameID"); assertEquals("urn:oasis:names:tc:SAML:2.0:status:Responder", srsResponder.getStatusCode()); assertEquals("Invalid NameID", srsResponder.getStatusMessage()); }
Document samlResponseDoc = Util.loadXML(new String(Util.base64decoder(samlResponseEncoded))); SamlResponseStatus status = SamlResponse.getStatus(samlResponseDoc); assertEquals(Constants.STATUS_SUCCESS, status.getStatusCode()); assertNull(status.getStatusMessage()); assertEquals(Constants.STATUS_SUCCESS, status.getStatusCode()); assertNull(status.getStatusMessage()); assertEquals(Constants.STATUS_RESPONDER, status.getStatusCode()); assertNull(status.getStatusMessage()); assertEquals(Constants.STATUS_RESPONDER, status.getStatusCode()); assertEquals("something_is_wrong", status.getStatusMessage()); assertEquals(Constants.STATUS_RESPONDER, status.getStatusCode()); assertEquals(Constants.STATUS_AUTHNFAILED, status.getSubStatusCode()); assertEquals("something_is_wrong", status.getStatusMessage());
/** * Tests the SamlResponseStatus is method * * @see com.onelogin.saml2.model.SamlResponseStatus#is */ @Test public void testIs() { SamlResponseStatus srs1 = new SamlResponseStatus(null, null); assertNull(srs1.getStatusCode()); assertNull(srs1.getStatusMessage()); assertFalse(srs1.is("urn:oasis:names:tc:SAML:2.0:status:Success")); srs1.setStatusCode(""); assertFalse(srs1.is("urn:oasis:names:tc:SAML:2.0:status:Success")); srs1.setStatusCode("urn:oasis:names:tc:SAML:2.0:status:Responder"); assertFalse(srs1.is("urn:oasis:names:tc:SAML:2.0:status:Success")); srs1.setStatusCode("urn:oasis:names:tc:SAML:2.0:status:Success"); assertTrue(srs1.is("urn:oasis:names:tc:SAML:2.0:status:Success")); SamlResponseStatus srs2 = new SamlResponseStatus("urn:oasis:names:tc:SAML:2.0:status:Success"); assertNull(srs2.getStatusMessage()); assertTrue(srs2.is("urn:oasis:names:tc:SAML:2.0:status:Success")); } }