public void FeatureWithDefaultValueTraitShouldReturnDefaultValue(FeatureFixture feature,
                                                                         DefaultValueTrait defaultValueTrait, DefaultValueToggler sut)
        {
            feature.Traits.Add(defaultValueTrait);

            bool?result = sut.IsEnabled(null, feature);

            Assert.Equal(defaultValueTrait.DefaultValue, result);
        }
        public void FeatureWithDefaultValueTraitShouldReturnDefaultValue(FeatureFixture feature,
            DefaultValueTrait defaultValueTrait, DefaultValueToggle sut)
        {
            feature.Traits.Add(defaultValueTrait);

            bool? result = sut.IsEnabled(feature);

            Assert.Equal(defaultValueTrait.DefaultValue, result);
        }
示例#3
0
        public bool?IsEnabled(IFeatureContext featureContext, IFeature feature)
        {
            if (feature == null)
            {
                throw new ArgumentNullException(nameof(feature));
            }

            DefaultValueTrait trait = null;

            foreach (DefaultValueTrait defaultValueTrait in feature.Traits.OfType <DefaultValueTrait>())
            {
                if (trait != null)
                {
                    throw new InvalidFeatureException($"Feature {feature.Id} contains more than one {nameof(DefaultValueTrait)}");
                }

                trait = defaultValueTrait;
            }

            return(trait?.DefaultValue);
        }
示例#4
0
        public void DefaultValueTraitConstructorSetsDefaultValue(bool defaultValue)
        {
            var sut = new DefaultValueTrait(defaultValue);

            Assert.Equal(defaultValue, sut.DefaultValue);
        }
示例#5
0
        public void DefaultValueTraitConstructorSetsDefaultValue(bool defaultValue)
        {
            var sut = new DefaultValueTrait(defaultValue);

            Assert.Equal(defaultValue, sut.DefaultValue);
        }