Beispiel #1
0
        public void TestLongFeatureDoesntNegateRolloutBucketDistribution()
        {
            //construct the feature an rule
            var control = new FeatureControl();
            var rule    = new Rule();
            var off     = new VariantSplit
            {
                VariantKey = "off",
                Split      = 50
            };
            var on = new VariantSplit();

            on.VariantKey = "on";
            on.Split      = 50;

            rule.VariantSplits = new List <VariantSplit> {
                on, off
            };

            control.Key           = "a-long-key-of-16";
            control.Enabled       = true;
            control.OffVariantKey = "off";

            control.Rules = new List <Rule>(new[] { rule });
            //create a user
            var user      = new User("user1");
            var evaluate1 = new Evaluate(control, user, "off");

            var user2     = new User("user2");
            var evaluate2 = new Evaluate(control, user2, "off");

            Equal(true, evaluate1.IsOff());
            Equal(true, evaluate2.IsOn());
        }
Beispiel #2
0
        private List <VariantSplit> OffSplit()
        {
            var off = new VariantSplit
            {
                VariantKey = "off",
                Split      = 100
            };
            var on = new VariantSplit
            {
                VariantKey = "on",
                Split      = 0
            };

            return(new List <VariantSplit> {
                on, off
            });
        }