diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2013-03-19 21:48:49 -0700 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2013-03-19 21:48:49 -0700 |
commit | b117db5327ee30aae7d2ec8e9172dca85e933848 (patch) | |
tree | 622375c2d4ac3be8b5ed8823daebc6d2c0c3afc4 /src/DotNetOpenAuth.Test/Mocks/MockHttpRequest.cs | |
parent | 2eb59292e2a2f22866d95684606334845d8997e5 (diff) | |
download | DotNetOpenAuth-b117db5327ee30aae7d2ec8e9172dca85e933848.zip DotNetOpenAuth-b117db5327ee30aae7d2ec8e9172dca85e933848.tar.gz DotNetOpenAuth-b117db5327ee30aae7d2ec8e9172dca85e933848.tar.bz2 |
Fixes the rest of the build breaks!
Diffstat (limited to 'src/DotNetOpenAuth.Test/Mocks/MockHttpRequest.cs')
-rw-r--r-- | src/DotNetOpenAuth.Test/Mocks/MockHttpRequest.cs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/DotNetOpenAuth.Test/Mocks/MockHttpRequest.cs b/src/DotNetOpenAuth.Test/Mocks/MockHttpRequest.cs index 1979cf4..2c1e64b 100644 --- a/src/DotNetOpenAuth.Test/Mocks/MockHttpRequest.cs +++ b/src/DotNetOpenAuth.Test/Mocks/MockHttpRequest.cs @@ -125,5 +125,33 @@ namespace DotNetOpenAuth.Test.Mocks { return results.ToArray(); } + + internal static CoordinatorBase.Handler RegisterMockResponse(Uri url, string contentType, string content) { + return CoordinatorBase.Handle(url).By(content, contentType); + } + + internal static CoordinatorBase.Handler RegisterMockResponse(Uri requestUri, Uri responseUri, string contentType, string content) { + return RegisterMockResponse(requestUri, responseUri, contentType, null, content); + } + + internal static CoordinatorBase.Handler RegisterMockResponse(Uri requestUri, Uri responseUri, string contentType, WebHeaderCollection headers, string content) { + return CoordinatorBase.Handle(requestUri).By(req => { + var response = new HttpResponseMessage(); + response.CopyHeadersFrom(headers); + response.Content = new StringContent(content, Encoding.Default, contentType); + return response; + }); + } + + private static void CopyHeadersFrom(this HttpResponseMessage message, WebHeaderCollection headers) { + if (headers != null) { + foreach (string headerName in headers) { + string[] headerValues = headers.GetValues(headerName); + if (!message.Headers.TryAddWithoutValidation(headerName, headerValues)) { + message.Content.Headers.TryAddWithoutValidation(headerName, headerValues); + } + } + } + } } } |