示例#1
0
 public void JsonVariationReturnsDefaultForUnknownFlag()
 {
     using (var client = ClientWithFlagsJson("{}"))
     {
         var defaultVal = ImmutableJsonValue.Of(3);
         Assert.Equal(defaultVal, client.JsonVariation(nonexistentFlagKey, defaultVal));
     }
 }
示例#2
0
        public void JsonVariationReturnsValue()
        {
            var jsonValue = new JObject {
                { "thing", new JValue("stuff") }
            };
            string flagsJson = TestUtil.JsonFlagsWithSingleFlag("flag-key", jsonValue);

            using (var client = ClientWithFlagsJson(flagsJson))
            {
                Assert.Equal(jsonValue, client.JsonVariation("flag-key", ImmutableJsonValue.Of(3)).AsJToken());
            }
        }
示例#3
0
        public void JsonVariationDetailReturnsValue()
        {
            var jsonValue = new JObject {
                { "thing", new JValue("stuff") }
            };
            var    reason    = EvaluationReason.Off.Instance;
            string flagsJson = TestUtil.JsonFlagsWithSingleFlag("flag-key", jsonValue, 1, reason);

            using (var client = ClientWithFlagsJson(flagsJson))
            {
                var expected = new EvaluationDetail <JToken>(jsonValue, 1, reason);
                var result   = client.JsonVariationDetail("flag-key", ImmutableJsonValue.Of(3));
                Assert.True(JToken.DeepEquals(expected.Value, result.Value.AsJToken()));
                Assert.Equal(expected.VariationIndex, result.VariationIndex);
                Assert.Equal(expected.Reason, result.Reason);
            }
        }