summaryrefslogtreecommitdiffstats
path: root/src/DotNetOAuth.Test/MessageSerializerTest.cs
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2008-08-30 10:56:42 -0700
committerAndrew <andrewarnott@gmail.com>2008-09-01 11:02:39 -0700
commit5df67c5b5bbd0c7463cec9b1f594d18de345a7d5 (patch)
treeed64936e0bda1b28bd0fff1208df810c4395c5b2 /src/DotNetOAuth.Test/MessageSerializerTest.cs
parent5010504266d6e7fddfedf49ecbc572a2baba5e0a (diff)
downloadDotNetOpenAuth-5df67c5b5bbd0c7463cec9b1f594d18de345a7d5.zip
DotNetOpenAuth-5df67c5b5bbd0c7463cec9b1f594d18de345a7d5.tar.gz
DotNetOpenAuth-5df67c5b5bbd0c7463cec9b1f594d18de345a7d5.tar.bz2
Added another test, and changed the way spoofed dictionary xml I/O works to fix the bug it revealed.
Diffstat (limited to 'src/DotNetOAuth.Test/MessageSerializerTest.cs')
-rw-r--r--src/DotNetOAuth.Test/MessageSerializerTest.cs16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/DotNetOAuth.Test/MessageSerializerTest.cs b/src/DotNetOAuth.Test/MessageSerializerTest.cs
index 2db8343..e105ded 100644
--- a/src/DotNetOAuth.Test/MessageSerializerTest.cs
+++ b/src/DotNetOAuth.Test/MessageSerializerTest.cs
@@ -31,7 +31,21 @@ namespace DotNetOAuth.Test {
var actual = serializer.Deserialize(fields);
Assert.AreEqual(15, actual.Age);
Assert.AreEqual("Andrew", actual.Name);
- Assert.AreEqual(null, actual.EmptyMember);
+ Assert.IsNull(actual.EmptyMember);
+ }
+
+ [TestMethod]
+ public void DeserializeWithExtraFields() {
+ var serializer = new ProtocolMessageSerializer<Mocks.TestMessage>();
+ Dictionary<string, string> fields = new Dictionary<string, string>(StringComparer.Ordinal);
+ fields["age"] = "15";
+ // Add some field that is not recognized by the class. This simulates a querystring with
+ // more parameters than are actually interesting to the protocol message.
+ fields["someExtraField"] = "asdf";
+ var actual = serializer.Deserialize(fields);
+ Assert.AreEqual(15, actual.Age);
+ Assert.IsNull(actual.Name);
+ Assert.IsNull(actual.EmptyMember);
}
/// <summary>