summaryrefslogtreecommitdiffstats
path: root/src/DotNetOpenAuth.Test/OpenId/Provider/AnonymousRequestTests.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/DotNetOpenAuth.Test/OpenId/Provider/AnonymousRequestTests.cs')
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/Provider/AnonymousRequestTests.cs37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/DotNetOpenAuth.Test/OpenId/Provider/AnonymousRequestTests.cs b/src/DotNetOpenAuth.Test/OpenId/Provider/AnonymousRequestTests.cs
new file mode 100644
index 0000000..14fef91
--- /dev/null
+++ b/src/DotNetOpenAuth.Test/OpenId/Provider/AnonymousRequestTests.cs
@@ -0,0 +1,37 @@
+//-----------------------------------------------------------------------
+// <copyright file="AnonymousRequestTests.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace DotNetOpenAuth.Test.OpenId.Provider {
+ using DotNetOpenAuth.OpenId;
+ using DotNetOpenAuth.OpenId.Messages;
+ using DotNetOpenAuth.OpenId.Provider;
+ using DotNetOpenAuth.OpenId.RelyingParty;
+ using Microsoft.VisualStudio.TestTools.UnitTesting;
+
+ [TestClass]
+ public class AnonymousRequestTests : OpenIdTestBase {
+ /// <summary>
+ /// Verifies that IsApproved controls which response message is returned.
+ /// </summary>
+ [TestMethod]
+ public void IsApprovedDeterminesReturnedMessage() {
+ var op = CreateProvider();
+ Protocol protocol = Protocol.V20;
+ var req = new SignedResponseRequest(protocol.Version, OPUri, AuthenticationRequestMode.Setup);
+ req.ReturnTo = RPUri;
+ var anonReq = new AnonymousRequest(op, req);
+
+ Assert.IsFalse(anonReq.IsApproved.HasValue);
+
+ anonReq.IsApproved = false;
+ Assert.IsInstanceOfType(anonReq.Response, typeof(NegativeAssertionResponse));
+
+ anonReq.IsApproved = true;
+ Assert.IsInstanceOfType(anonReq.Response, typeof(IndirectSignedResponse));
+ Assert.IsNotInstanceOfType(anonReq.Response, typeof(PositiveAssertionResponse));
+ }
+ }
+}