private static IRequest CreateFakeRequest() { IRequest request = A.Fake <IRequest>(); A.CallTo(() => request.Headers).Returns(new NameValueCollection()); A.CallTo(() => request.Cookies).Returns(new CookieCollection()); Cookie sessionCookie = new Cookie(SecureSession.CookieName, SecureSession.GenerateId()); request.Cookies.Add(sessionCookie); return(request); }
public void Validation_ShouldBeAbleToSetAndValidateValidationToken() { Prepare(); SecureSession session = SecureSession.Get(SecureSession.GenerateId()); string postString = ApiParameters.ParametersToJsonParamsObjectString("random info"); SecureServiceProxyClient <Echo> client = new SecureServiceProxyClient <Echo>("http://blah.com"); HttpWebRequest request = client.GetServiceProxyRequest("Send"); ApiEncryptionValidation.SetEncryptedValidationToken(request.Headers, postString, session.PublicKey); Cookie cookie = new Cookie(SecureSession.CookieName, session.Identifier, "", "blah.cxm"); request.CookieContainer.Add(cookie); request.Headers[Headers.SecureSession] = session.Identifier; Expect.IsNotNull(request.Headers); Expect.IsNotNull(request.Headers[Headers.Nonce]); Expect.IsNotNull(request.Headers[Headers.ValidationToken]); Expect.AreEqual(EncryptedTokenValidationStatus.Success, ApiEncryptionValidation.ValidateEncryptedToken(request.Headers, postString)); }