public void Feature_true_evaluation() { var sut = KEvaluator.Create(Fixture.Store); var result = sut.Evaluate("enabledForAll", Fixture.TestUser); result.Should().BeTrue(); }
private async void FetchStore(object state) { var initializeRequest = new KHttpRequest(_apiKey); var httpClient = new KHttpClientWrapper(); var serverInitResponse = await httpClient.Get <KServerInitializeResponseDto>(initializeRequest); _evaluator = KEvaluator.Create(KInMemoryStore.FromServer(serverInitResponse)); }
public void Features_evaluation() { var sut = KEvaluator.Create(Fixture.Store); var result = sut.Evaluate(Fixture.TestUser); var expected = new KEvaluationResult(new Dictionary <string, bool> { { "disabledForAll", false }, { "enabledForTestUser", true }, { "enabledForOtherUser", false }, { "enabledForSpainAdults", true }, { "enabledForEeuuAdults", false }, { "enabledForAll", true }, }); result.Should().BeEquivalentTo(expected); }
public KClientService(string apiKey, int pollingInterval = 60) { _apiKey = apiKey; _timer = new Timer(FetchStore, null, TimeSpan.Zero, TimeSpan.FromSeconds(pollingInterval)); _evaluator = KEvaluator.Create(KInMemoryStore.Empty()); }