diff options
Diffstat (limited to 'src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs')
-rw-r--r-- | src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs b/src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs index 8cc7116..baf5377 100644 --- a/src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs +++ b/src/DotNetOpenAuth.Test/OpenId/Provider/AuthenticationRequestTest.cs @@ -6,6 +6,9 @@ namespace DotNetOpenAuth.Test.OpenId.Provider { using System; + using System.IO; + using System.Runtime.Serialization; + using System.Runtime.Serialization.Formatters.Binary; using DotNetOpenAuth.Messaging; using DotNetOpenAuth.OpenId; using DotNetOpenAuth.OpenId.Messages; @@ -45,5 +48,26 @@ namespace DotNetOpenAuth.Test.OpenId.Provider { Assert.AreEqual(immediateRequest.LocalIdentifier, setupRequestMessage.LocalIdentifier); Assert.AreEqual(immediateRequest.Version, setupRequestMessage.Version); } + + /// <summary> + /// Verifies that the AuthenticationRequest method is serializable. + /// </summary> + [Test] + public void Serializable() { + OpenIdProvider provider = this.CreateProvider(); + CheckIdRequest immediateRequest = new CheckIdRequest(Protocol.Default.Version, OPUri, DotNetOpenAuth.OpenId.AuthenticationRequestMode.Immediate); + immediateRequest.Realm = RPRealmUri; + immediateRequest.ReturnTo = RPUri; + immediateRequest.LocalIdentifier = "http://somebody"; + AuthenticationRequest request = new AuthenticationRequest(provider, immediateRequest); + + MemoryStream ms = new MemoryStream(); + IFormatter formatter = new BinaryFormatter(); + formatter.Serialize(ms, request); + + ms.Position = 0; + var req2 = (AuthenticationRequest)formatter.Deserialize(ms); + Assert.That(req2, Is.Not.Null); + } } } |