public void SetFixture(MockRepository mocks) { var signer = new OAuthWebRequestSigner(new HmacSha1SignatureGenerator()); webRequest = mocks.DynamicMock <IOAuthWebRequest>(); var mockNonceGenerator = mocks.DynamicMock <INonceGenerator>(); var mockTimestampGenerator = mocks.DynamicMock <ITimestampGenerator>(); var consumerToken = new OAuthToken { Token = consumerKey, TokenSecret = consumerSecret }; mockNonceGenerator.Stub(nonceGen => nonceGen.Generate()).Return(nonce); mockTimestampGenerator.Stub(timestampGen => timestampGen.Generate()).Return(timestamp); webRequest.Stub(request => request.ConsumerToken).Return(consumerToken); webRequest.Stub(request => request.NonceGenerator).Return(mockNonceGenerator); webRequest.Stub(request => request.TimestampGenerator).Return(mockTimestampGenerator); webRequest.Stub(request => request.RequestUri).Return(new Uri(url)); webRequest.Stub(request => request.Method).Return("GET"); webRequest.Stub(request => request.SetUri(string.Empty)).IgnoreArguments().Do( (Action <string>)(uri => setUri = uri)); mocks.ReplayAll(); signer.SignWebRequest(webRequest); }
public void given_no_parameters_in_url() { var url = new Uri("http://someplace.com/somepath?token=value"); var queryStringParams = OAuthWebRequestSigner.GetQueryStringParameters(url); Assert.Equal(1, queryStringParams.Count()); Assert.NotNull(queryStringParams.FirstOrDefault(kvp => kvp.Key == "token" && kvp.Value == "value")); }
public void should_return_decoded_paramter_values() { var value = "this' shdo*& get encoded"; var url = new Uri("http://someplace.com/somepath?token=value&messy=" + HttpUtility.UrlEncode(value)); var queryStringParams = OAuthWebRequestSigner.GetQueryStringParameters(url); Assert.Equal(2, queryStringParams.Count()); Assert.NotNull(queryStringParams.FirstOrDefault(kvp => kvp.Key == "messy" && kvp.Value == value)); }
public void when_trailing_slash() { var url = "HTTP://www.someurl.com/"; Assert.Equal("http://www.someurl.com", OAuthWebRequestSigner.NormalizeUri(new Uri(url))); }
public void when_including_query_string() { var url = "HTTP://www.someurl.com/?sometoken=somevalue"; Assert.Equal("http://www.someurl.com", OAuthWebRequestSigner.NormalizeUri(new Uri(url))); }
public void when_url_is_http_over_non_standard_port() { var url = "HTTP://www.someurl.com:8080"; Assert.Equal("http://www.someurl.com:8080", OAuthWebRequestSigner.NormalizeUri(new Uri(url))); }
public void when_url_is_uppercase() { var url = "HTTP://www.someurl.com"; Assert.Equal("http://www.someurl.com", OAuthWebRequestSigner.NormalizeUri(new Uri(url))); }
public void when_url_is_plain_standard_http_not_specifying_port() { var url = "http://www.someurl.com"; Assert.Equal("http://www.someurl.com", OAuthWebRequestSigner.NormalizeUri(new Uri(url))); }