diff options
Diffstat (limited to 'src/DotNetOpenAuth.Test/OpenId/Provider/OpenIdProviderTests.cs')
-rw-r--r-- | src/DotNetOpenAuth.Test/OpenId/Provider/OpenIdProviderTests.cs | 58 |
1 files changed, 31 insertions, 27 deletions
diff --git a/src/DotNetOpenAuth.Test/OpenId/Provider/OpenIdProviderTests.cs b/src/DotNetOpenAuth.Test/OpenId/Provider/OpenIdProviderTests.cs index c15f5b8..984337c 100644 --- a/src/DotNetOpenAuth.Test/OpenId/Provider/OpenIdProviderTests.cs +++ b/src/DotNetOpenAuth.Test/OpenId/Provider/OpenIdProviderTests.cs @@ -7,6 +7,9 @@ namespace DotNetOpenAuth.Test.OpenId.Provider { using System; using System.IO; + using System.Net.Http; + using System.Threading; + using System.Threading.Tasks; using System.Web; using DotNetOpenAuth.Messaging; using DotNetOpenAuth.OpenId; @@ -74,60 +77,61 @@ namespace DotNetOpenAuth.Test.OpenId.Provider { /// Verifies the GetRequest method throws outside an HttpContext. /// </summary> [Test, ExpectedException(typeof(InvalidOperationException))] - public void GetRequestNoContext() { + public async Task GetRequestNoContext() { HttpContext.Current = null; - this.provider.GetRequest(); + await this.provider.GetRequestAsync(); } /// <summary> /// Verifies GetRequest throws on null input. /// </summary> [Test, ExpectedException(typeof(ArgumentNullException))] - public void GetRequestNull() { - this.provider.GetRequest(null); + public async Task GetRequestNull() { + await this.provider.GetRequestAsync((HttpRequestMessage)null); } /// <summary> /// Verifies that GetRequest correctly returns the right messages. /// </summary> [Test] - public void GetRequest() { - var httpInfo = new HttpRequestInfo("GET", new Uri("http://someUri")); - Assert.IsNull(this.provider.GetRequest(httpInfo), "An irrelevant request should return null."); + public async Task GetRequest() { + var httpInfo = new HttpRequestMessage(HttpMethod.Get, "http://someUri"); + Assert.IsNull(await this.provider.GetRequestAsync(httpInfo), "An irrelevant request should return null."); var providerDescription = new ProviderEndpointDescription(OPUri, Protocol.Default.Version); // Test some non-empty request scenario. - OpenIdCoordinator coordinator = new OpenIdCoordinator( - rp => { - rp.Channel.Request(AssociateRequestRelyingParty.Create(rp.SecuritySettings, providerDescription)); - }, - op => { - IRequest request = op.GetRequest(); + var coordinator = new CoordinatorBase( + CoordinatorBase.RelyingPartyDriver(async (rp, ct) => { + await rp.Channel.RequestAsync(AssociateRequestRelyingParty.Create(rp.SecuritySettings, providerDescription), ct); + }), + CoordinatorBase.HandleProvider(async (op, req, ct) => { + IRequest request = await op.GetRequestAsync(req); Assert.IsInstanceOf<AutoResponsiveRequest>(request); - op.Respond(request); - }); - coordinator.Run(); + return await op.PrepareResponseAsync(request, ct); + })); + await coordinator.RunAsync(); } [Test] - public void BadRequestsGenerateValidErrorResponses() { - var coordinator = new OpenIdCoordinator( - rp => { - var nonOpenIdMessage = new Mocks.TestDirectedMessage(); - nonOpenIdMessage.Recipient = OPUri; - nonOpenIdMessage.HttpMethods = HttpDeliveryMethods.PostRequest; + public async Task BadRequestsGenerateValidErrorResponses() { + var coordinator = new CoordinatorBase( + CoordinatorBase.RelyingPartyDriver(async (rp, ct) => { + var nonOpenIdMessage = new Mocks.TestDirectedMessage { + Recipient = OPUri, + HttpMethods = HttpDeliveryMethods.PostRequest + }; MessagingTestBase.GetStandardTestMessage(MessagingTestBase.FieldFill.AllRequired, nonOpenIdMessage); - var response = rp.Channel.Request<DirectErrorResponse>(nonOpenIdMessage); + var response = await rp.Channel.RequestAsync<DirectErrorResponse>(nonOpenIdMessage, ct); Assert.IsNotNull(response.ErrorMessage); Assert.AreEqual(Protocol.Default.Version, response.Version); - }, + }), AutoProvider); - coordinator.Run(); + await coordinator.RunAsync(); } [Test, Category("HostASPNET")] - public void BadRequestsGenerateValidErrorResponsesHosted() { + public async Task BadRequestsGenerateValidErrorResponsesHosted() { try { using (AspNetHost host = AspNetHost.CreateHost(TestWebDirectory)) { Uri opEndpoint = new Uri(host.BaseUri, "/OpenIdProviderEndpoint.ashx"); @@ -136,7 +140,7 @@ namespace DotNetOpenAuth.Test.OpenId.Provider { nonOpenIdMessage.Recipient = opEndpoint; nonOpenIdMessage.HttpMethods = HttpDeliveryMethods.PostRequest; MessagingTestBase.GetStandardTestMessage(MessagingTestBase.FieldFill.AllRequired, nonOpenIdMessage); - var response = rp.Channel.Request<DirectErrorResponse>(nonOpenIdMessage); + var response = await rp.Channel.RequestAsync<DirectErrorResponse>(nonOpenIdMessage, CancellationToken.None); Assert.IsNotNull(response.ErrorMessage); } } catch (FileNotFoundException ex) { |