public void Get()
        {
            // This test makes sure that if there is a config setting then it is used in place of the default. Make sure that the default value and the config value are different.
            const Test CONFIG        = Test.B;
            var        configuration = new TestEnumConfiguration(ConfigurationWithSetting("EnumProperty", $"B"));

            Assert.AreEqual(CONFIG, configuration.EnumProperty);
        }
        public void GetUnParseable()
        {
            var configuration = new TestEnumConfiguration(ConfigurationWithSetting("EnumProperty", "not parseable"));

            Assert.Throws <ArgumentException>(
                () =>
                { var v = configuration.EnumProperty; }
                );
        }
        public void GetMissing()
        {
            var configuration = new TestEnumConfiguration(ConfigurationWithNoSettings);

            Assert.Throws <ConfigurationException>(
                () =>
                { var v = configuration.EnumProperty; }
                );
        }
        public void Get()
        {
            var configuration = new TestEnumConfiguration(ConfigurationWithSetting("EnumProperty", "A"));

            Assert.AreEqual(Test.A, configuration.EnumProperty);
        }
        public void GetMissing()
        {
            var configuration = new TestEnumConfiguration(ConfigurationWithNoSettings);

            Assert.AreEqual(DEFAULT, configuration.EnumProperty);
        }
        public void Get()
        {
            var configuration = new TestEnumConfiguration(ConfigurationWithSetting($"{UK_PREFIX}EnumProperty", "B"));

            Assert.AreEqual(Test.B, configuration.EnumProperty);
        }