public void TestOneofTypes_Enum()
        {
            TestOneof2.Builder builder = TestOneof2.CreateBuilder();
            Assert.AreEqual(builder.FooEnum, TestOneof2.Types.NestedEnum.FOO);
            Assert.IsTrue(builder.SetFooEnum(TestOneof2.Types.NestedEnum.BAR).HasFooEnum);
            Assert.AreEqual(builder.FooEnum, TestOneof2.Types.NestedEnum.BAR);
            TestOneof2 message = builder.BuildPartial();

            Assert.IsTrue(message.HasFooEnum);
            Assert.AreEqual(message.FooEnum, TestOneof2.Types.NestedEnum.BAR);

            Assert.IsFalse(builder.ClearFooEnum().HasFooEnum);
            TestOneof2 message2 = builder.Build();

            Assert.IsFalse(message2.HasFooEnum);
            Assert.AreEqual(message2.FooEnum, TestOneof2.Types.NestedEnum.FOO);
        }