protected override void Configure(
     IEnumTypeDescriptor <Foo> descriptor)
 {
     descriptor.BindValues(BindingBehavior.Explicit);
     descriptor.Value(Foo.Bar);
     descriptor.Value(Foo.Baz);
 }
        public void ExplicitValueBinding()
        {
            // arrange
            var descriptor = EnumTypeDescriptor.New(Context, typeof(FooEnum));

            // act
            IEnumTypeDescriptor desc = descriptor;

            desc.Value(FooEnum.Bar1).Name("FOOBAR");
            desc.BindValues(BindingBehavior.Explicit);

            // assert
            EnumTypeDefinition description = descriptor.CreateDefinition();

            Assert.Collection(description.Values,
                              t =>
            {
                Assert.Equal("FOOBAR", t.Name);
                Assert.Equal(FooEnum.Bar1, t.RuntimeValue);
            });
        }