Пример #1
0
        public void BoolVariationReturnsFlagValue()
        {
            featureStore.Upsert(VersionedDataKind.Features,
                                new FeatureFlagBuilder("key").OffWithValue(new JValue(true)).Build());

            Assert.True(client.BoolVariation("key", user, false));
        }
Пример #2
0
        public bool IsEnable(Enum featureFlag, IDictionary <string, object> userAttributes = null)
        {
            _user = GetUser(userAttributes);
            var feature = featureFlag.GetFlag();

            return(_ldClient.BoolVariation(feature.Key, _user, (bool)feature.DefaultValue));
        }
Пример #3
0
        public void BoolVariationSendsEvent()
        {
            var flag = new FeatureFlagBuilder("key").OffWithValue(new JValue(true)).Build();

            featureStore.Upsert(VersionedDataKind.Features, flag);

            client.BoolVariation("key", user, false);
            Assert.Equal(1, eventSink.Events.Count);
            CheckFeatureEvent(eventSink.Events[0], flag, new JValue(true), new JValue(false), null);
        }
Пример #4
0
        public void BoolVariationSendsEvent()
        {
            var flag = new FeatureFlagBuilder("key").Version(1).OffWithValue(LdValue.Of(true)).Build();

            testData.UsePreconfiguredFlag(flag);

            client.BoolVariation("key", user, false);
            Assert.Equal(1, eventSink.Events.Count);
            CheckFeatureEvent(eventSink.Events[0], flag, LdValue.Of(true), LdValue.Of(false), null);
        }
Пример #5
0
        public async Task <FeatureToggleResponse> Get(string flagName, string userKey, bool defaultValue = false, CancellationToken cancellationToken = default)
        {
            await Task.CompletedTask;

            var flag = _ldClient.BoolVariation(flagName, new User(userKey));

            return(new FeatureToggleResponse()
            {
                Enabled = flag,
                Error = null
            });
        }
Пример #6
0
        public IActionResult Index()
        {
            Request.Cookies.TryGetValue("sampleApp.userId", out string userId);
            if (userId == null)
            {
                userId = Guid.NewGuid().ToString();
                this.Response.Cookies.Append(
                    "sampleApp.userId",
                    userId,
                    new Microsoft.AspNetCore.Http.CookieOptions()
                {
                    Path = "/"
                }
                    );
            }
            var user = LaunchDarkly.Client.User.WithKey(userId);

            if (_ldClient.BoolVariation("new-portal", user, false))
            {
                return(Redirect(_sampleAppOptions.Value.SpaUrl));
            }
            return(View());
        }
 public bool IsFeatureEnabled <T>(bool defaultValue = false) where T : FeatureFlag <bool>, new()
 {
     return(_ldClient.BoolVariation(new T().Keyname, _defaultUser, defaultValue));
 }
        public void BoolVariationReturnsFlagValue()
        {
            testData.UsePreconfiguredFlag(new FeatureFlagBuilder("key").OffWithValue(LdValue.Of(true)).Build());

            Assert.True(client.BoolVariation("key", user, false));
        }
        void UpdateFlagValue()
        {
            var flagValue = client.BoolVariation(LaunchDarklyParameters.FlagKey, false);

            SetMessage(string.Format(ExampleMessages.FlagValueIs, flagValue));
        }
Пример #10
0
        void UpdateFlagValue()
        {
            var flagValue = client.BoolVariation(DemoParameters.FeatureFlagKey, false);

            SetMessage(string.Format(DemoMessages.FlagValueIs, DemoParameters.FeatureFlagKey, flagValue));
        }