improve test coverage
diff --git a/csharp/src/Google.Protobuf.Test/GeneratedMessageTest.Proto2.cs b/csharp/src/Google.Protobuf.Test/GeneratedMessageTest.Proto2.cs
index 718c3ed..5f90c94 100644
--- a/csharp/src/Google.Protobuf.Test/GeneratedMessageTest.Proto2.cs
+++ b/csharp/src/Google.Protobuf.Test/GeneratedMessageTest.Proto2.cs
@@ -269,8 +269,8 @@
         [Test]

         public void RequiredFieldsNoThrow()

         {

-            Assert.DoesNotThrow(() => TestRequired.Parser.ParseFrom(new byte[0]));

-            Assert.DoesNotThrow(() => (TestRequired.Parser as MessageParser).ParseFrom(new byte[0]));

+            Assert.DoesNotThrow(() => MessageParsingHelpers.AssertReadingMessage(TestRequired.Parser, new byte[0], m => { }));

+            Assert.DoesNotThrow(() => MessageParsingHelpers.AssertReadingMessage(TestRequired.Parser as MessageParser, new byte[0], m => { }));

         }

 

         [Test]

@@ -344,9 +344,7 @@
                 }

             };

 

-            byte[] bytes = message.ToByteArray();

-            TestAllTypes parsed = Proto2.TestAllTypes.Parser.ParseFrom(bytes);

-            Assert.AreEqual(message, parsed);

+            MessageParsingHelpers.AssertRoundtrip(Proto2.TestAllTypes.Parser, message);

         }

 

         [Test]

@@ -361,9 +359,9 @@
                 new RepeatedGroup_extension { A = 30 }

             });

 

-            byte[] bytes = message.ToByteArray();

-            TestAllExtensions extendable_parsed = TestAllExtensions.Parser.WithExtensionRegistry(new ExtensionRegistry() { UnittestExtensions.OptionalGroupExtension, UnittestExtensions.RepeatedGroupExtension }).ParseFrom(bytes);

-            Assert.AreEqual(message, extendable_parsed);

+            MessageParsingHelpers.AssertRoundtrip(

+                TestAllExtensions.Parser.WithExtensionRegistry(new ExtensionRegistry() { UnittestExtensions.OptionalGroupExtension, UnittestExtensions.RepeatedGroupExtension }),

+                message);

         }

 

         [Test]

@@ -372,9 +370,9 @@
             var message = new TestGroupExtension();

             message.SetExtension(TestNestedExtension.Extensions.OptionalGroupExtension, new TestNestedExtension.Types.OptionalGroup_extension { A = 10 });

 

-            byte[] bytes = message.ToByteArray();

-            TestGroupExtension extendable_parsed = TestGroupExtension.Parser.WithExtensionRegistry(new ExtensionRegistry() { TestNestedExtension.Extensions.OptionalGroupExtension }).ParseFrom(bytes);

-            Assert.AreEqual(message, extendable_parsed);

+            MessageParsingHelpers.AssertRoundtrip(

+                TestGroupExtension.Parser.WithExtensionRegistry(new ExtensionRegistry() { TestNestedExtension.Extensions.OptionalGroupExtension }),

+                message);

         }

     }

 }