public void Oneof() { var message = new OneofWellKnownTypes { EmptyField = new Empty() }; // Start off with a non-wrapper Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.EmptyField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.StringField = "foo"; Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.StringField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.StringField = "foo"; Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.StringField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.DoubleField = 0.0f; Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.DoubleField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.DoubleField = 1.0f; Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.DoubleField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.ClearOneofField(); Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.None, message.OneofFieldCase); AssertOneofRoundTrip(message); }
private void AssertOneofRoundTrip(OneofWellKnownTypes message) { // Normal roundtrip, but explicitly checking the case... MessageParsingHelpers.AssertRoundtrip(OneofWellKnownTypes.Parser, message, parsed => { Assert.AreEqual(message.OneofFieldCase, parsed.OneofFieldCase); }); }
private void AssertOneofRoundTrip(OneofWellKnownTypes message) { // Normal roundtrip, but explicitly checking the case... var bytes = message.ToByteArray(); var parsed = OneofWellKnownTypes.Parser.ParseFrom(bytes); Assert.AreEqual(message, parsed); Assert.AreEqual(message.OneofFieldCase, parsed.OneofFieldCase); }
private void AssertOneofRoundTrip(OneofWellKnownTypes message) { // Normal roundtrip, but explicitly checking the case... var bytes = message.ToByteArray(); var parsed = OneofWellKnownTypes.Parser.ParseFrom(bytes); Assert.AreEqual(message, parsed); Assert.AreEqual(message.OneofFieldCase, parsed.OneofFieldCase); }
public void Oneof() { var message = new OneofWellKnownTypes { EmptyField = new Empty() }; // Start off with a non-wrapper Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.EmptyField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.StringField = "foo"; Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.StringField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.StringField = "foo"; Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.StringField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.DoubleField = 0.0f; Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.DoubleField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.DoubleField = 1.0f; Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.DoubleField, message.OneofFieldCase); AssertOneofRoundTrip(message); message.ClearOneofField(); Assert.AreEqual(OneofWellKnownTypes.OneofFieldOneofCase.None, message.OneofFieldCase); AssertOneofRoundTrip(message); }