aboutsummaryrefslogtreecommitdiff
path: root/src/ProtocolBuffers.Test/CompatTests/TextCompatibilityTests.cs
diff options
context:
space:
mode:
authorcsharptest <roger@csharptest.net>2011-06-02 12:04:06 -0500
committerrogerk <devnull@localhost>2011-06-02 12:04:06 -0500
commit27bfcc5e1a7a3aacd828475c1996e114e34055d2 (patch)
tree8a4d0adf6cab44a934c21a7656fc8226b81556fc /src/ProtocolBuffers.Test/CompatTests/TextCompatibilityTests.cs
parent45a93fad4d7123887d14135ee15ee3e9b0d4ca58 (diff)
downloadprotobuf-27bfcc5e1a7a3aacd828475c1996e114e34055d2.tar.gz
protobuf-27bfcc5e1a7a3aacd828475c1996e114e34055d2.tar.bz2
protobuf-27bfcc5e1a7a3aacd828475c1996e114e34055d2.zip
Slight refactoring of Extensions to support lookup by name, added compatibility tests for text and binary formats.
Diffstat (limited to 'src/ProtocolBuffers.Test/CompatTests/TextCompatibilityTests.cs')
-rw-r--r--src/ProtocolBuffers.Test/CompatTests/TextCompatibilityTests.cs60
1 files changed, 60 insertions, 0 deletions
diff --git a/src/ProtocolBuffers.Test/CompatTests/TextCompatibilityTests.cs b/src/ProtocolBuffers.Test/CompatTests/TextCompatibilityTests.cs
new file mode 100644
index 00000000..5eba0d33
--- /dev/null
+++ b/src/ProtocolBuffers.Test/CompatTests/TextCompatibilityTests.cs
@@ -0,0 +1,60 @@
+using System.ComponentModel;
+using System.IO;
+using NUnit.Framework;
+
+namespace Google.ProtocolBuffers.CompatTests
+{
+ [TestFixture]
+ public class TextCompatibilityTests : CompatibilityTests
+ {
+ protected override string TestName { get { return "text"; } }
+
+ protected override object SerializeMessage<TMessage, TBuilder>(TMessage message)
+ {
+ StringWriter text = new StringWriter();
+ message.PrintTo(text);
+ return text.ToString();
+ }
+
+ protected override TBuilder DeerializeMessage<TMessage, TBuilder>(object message, TBuilder builder, ExtensionRegistry registry)
+ {
+ TextFormat.Merge(new StringReader((string)message), registry, (IBuilder)builder);
+ return builder;
+ }
+
+ [Test, Explicit, Description("This test can take a very long time to run.")]
+ public override void Message2OptimizeSizeReadPerf()
+ {
+ base.Message2OptimizeSizeReadPerf();
+ }
+ [Test, Explicit, Description("This test can take a very long time to run.")]
+ public override void Message2OptimizeSpeedReadPerf()
+ {
+ base.Message2OptimizeSpeedReadPerf();
+ }
+
+ [Test, Explicit, Description("This test can take a very long time to run.")]
+ public override void RoundTripMessage2OptimizeSize()
+ {
+ base.RoundTripMessage2OptimizeSize();
+ }
+
+ [Test, Explicit, Description("This test can take a very long time to run.")]
+ public override void RoundTripMessage2OptimizeSpeed()
+ {
+ base.RoundTripMessage2OptimizeSpeed();
+ }
+
+ [Test, Explicit, Description("This test can take a very long time to run.")]
+ public override void Message2OptimizeSizeWriterPerf()
+ {
+ base.Message2OptimizeSizeWriterPerf();
+ }
+ [Test, Explicit, Description("This test can take a very long time to run.")]
+ public override void Message2OptimizeSpeedWriterPerf()
+ {
+ base.Message2OptimizeSpeedWriterPerf();
+ }
+
+ }
+} \ No newline at end of file