diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2009-05-08 22:12:59 -0700 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2009-05-08 22:12:59 -0700 |
commit | 83811ba2f188ff3f2ab879cb8d1aceca7ba89774 (patch) | |
tree | e6b7cb95fbccf290d81b14f5c31e8079b1332874 /src/DotNetOpenAuth.Test | |
parent | 48615efe213e6ca8384bf499a76944fae6939655 (diff) | |
download | DotNetOpenAuth-83811ba2f188ff3f2ab879cb8d1aceca7ba89774.zip DotNetOpenAuth-83811ba2f188ff3f2ab879cb8d1aceca7ba89774.tar.gz DotNetOpenAuth-83811ba2f188ff3f2ab879cb8d1aceca7ba89774.tar.bz2 |
Providers now have better feedback about how RP discovery fails so they can make more informed policy decisions.
Fixes Trac ticket 53.
Diffstat (limited to 'src/DotNetOpenAuth.Test')
3 files changed, 36 insertions, 15 deletions
diff --git a/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj b/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj index f2cece1..a3d705d 100644 --- a/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj +++ b/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj @@ -212,6 +212,7 @@ <Compile Include="OpenId\OpenIdTestBase.cs" /> <Compile Include="OpenId\Provider\AnonymousRequestTests.cs" /> <Compile Include="OpenId\Provider\AuthenticationRequestTest.cs" /> + <Compile Include="OpenId\Provider\HostProcessedRequestTests.cs" /> <Compile Include="OpenId\Provider\OpenIdProviderTests.cs" /> <Compile Include="OpenId\RealmTests.cs" /> <Compile Include="OpenId\RelyingParty\AuthenticationRequestTests.cs" /> diff --git a/src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs b/src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs index cb898be..e2a173b 100644 --- a/src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs +++ b/src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs @@ -45,20 +45,5 @@ namespace DotNetOpenAuth.Test.OpenId.Provider { Assert.AreEqual(immediateRequest.LocalIdentifier, setupRequestMessage.LocalIdentifier); Assert.AreEqual(immediateRequest.Version, setupRequestMessage.Version); } - - [TestMethod] - public void IsReturnUrlDiscoverable() { - Protocol protocol = Protocol.Default; - OpenIdProvider provider = this.CreateProvider(); - CheckIdRequest checkIdRequest = new CheckIdRequest(protocol.Version, OPUri, DotNetOpenAuth.OpenId.RelyingParty.AuthenticationRequestMode.Setup); - checkIdRequest.Realm = RPRealmUri; - checkIdRequest.ReturnTo = RPUri; - AuthenticationRequest request = new AuthenticationRequest(provider, checkIdRequest); - Assert.IsFalse(request.IsReturnUrlDiscoverable(this.MockResponder.MockWebRequestHandler)); - - this.MockResponder.RegisterMockRPDiscovery(); - request = new AuthenticationRequest(provider, checkIdRequest); - Assert.IsTrue(request.IsReturnUrlDiscoverable(this.MockResponder.MockWebRequestHandler)); - } } } diff --git a/src/DotNetOpenAuth.Test/OpenId/Provider/HostProcessedRequestTests.cs b/src/DotNetOpenAuth.Test/OpenId/Provider/HostProcessedRequestTests.cs new file mode 100644 index 0000000..e8668a0 --- /dev/null +++ b/src/DotNetOpenAuth.Test/OpenId/Provider/HostProcessedRequestTests.cs @@ -0,0 +1,35 @@ +//----------------------------------------------------------------------- +// <copyright file="HostProcessedRequestTests.cs" company="Andrew Arnott"> +// Copyright (c) Andrew Arnott. All rights reserved. +// </copyright> +//----------------------------------------------------------------------- + +namespace DotNetOpenAuth.Test.OpenId.Provider { + using System; + using DotNetOpenAuth.OpenId; + using DotNetOpenAuth.OpenId.Messages; + using DotNetOpenAuth.OpenId.Provider; + using Microsoft.VisualStudio.TestTools.UnitTesting; + + [TestClass] + public class HostProcessedRequestTests : OpenIdTestBase { + [TestMethod] + public void IsReturnUrlDiscoverable() { + Protocol protocol = Protocol.Default; + OpenIdProvider provider = this.CreateProvider(); + CheckIdRequest checkIdRequest = new CheckIdRequest(protocol.Version, OPUri, DotNetOpenAuth.OpenId.RelyingParty.AuthenticationRequestMode.Setup); + checkIdRequest.Realm = RPRealmUri; + checkIdRequest.ReturnTo = RPUri; + AuthenticationRequest request = new AuthenticationRequest(provider, checkIdRequest); + Assert.AreEqual(RelyingPartyDiscoveryResult.NoServiceDocument, request.IsReturnUrlDiscoverable(this.MockResponder.MockWebRequestHandler)); + + this.MockResponder.RegisterMockRPDiscovery(); + request = new AuthenticationRequest(provider, checkIdRequest); + Assert.AreEqual(RelyingPartyDiscoveryResult.Success, request.IsReturnUrlDiscoverable(this.MockResponder.MockWebRequestHandler)); + + checkIdRequest.ReturnTo = new Uri("http://somerandom/host"); + request = new AuthenticationRequest(provider, checkIdRequest); + Assert.AreEqual(RelyingPartyDiscoveryResult.NoMatchingReturnTo, request.IsReturnUrlDiscoverable(this.MockResponder.MockWebRequestHandler)); + } + } +} |