private void BuildRedisCache() { redisAdapter = new RedisAdapter(RedisHost, RedisPort, RedisPassword, RedisDatabase, RedisConnectTimeout, RedisConnectRetry, RedisSyncTimeout); splitCache = new RedisSplitCache(redisAdapter, RedisUserPrefix); segmentCache = new RedisSegmentCache(redisAdapter, RedisUserPrefix); metricsCache = new RedisMetricsCache(redisAdapter, SdkMachineIP, SdkVersion, RedisUserPrefix); impressionsCache = new RedisImpressionsCache(redisAdapter, SdkMachineIP, SdkVersion, RedisUserPrefix); }
private void BuildTreatmentLog(ConfigurationOptions config) { var impressionsCache = new RedisImpressionsCache(_redisAdapter, _config.SdkMachineIP, _config.SdkVersion, _config.SdkMachineName, _config.RedisUserPrefix); _impressionsLog = new RedisImpressionLog(impressionsCache); _customerImpressionListener = config.ImpressionListener; }
public void AddImpressionSuccessfully() { //Arrange var key = impressionKeyPrefix + "test"; var redisAdapterMock = new Mock <IRedisAdapter>(); var cache = new RedisImpressionsCache(redisAdapterMock.Object, "10.0.0.1", "net-1.0.2"); //Act cache.AddImpression(new KeyImpression() { feature = "test", changeNumber = 100, keyName = "date", label = "testdate", time = 10000000 }); //Assert redisAdapterMock.Verify(mock => mock.SAdd(key, It.IsAny <RedisValue>())); }
public void AddImpressionSuccessfully() { //Arrange var key = "SPLITIO.impressions"; var redisAdapterMock = new Mock <IRedisAdapter>(); var cache = new RedisImpressionsCache(redisAdapterMock.Object, "10.0.0.1", "net-1.0.2", "machine_name_test"); var impressions = new List <KeyImpression> { new KeyImpression { feature = "test", changeNumber = 100, keyName = "date", label = "testdate", time = 10000000 } }; //Act cache.AddItems(impressions); //Assert redisAdapterMock.Verify(mock => mock.ListRightPush(key, It.IsAny <RedisValue[]>())); }
public void FetchAllAndClearSuccessfully() { //Arrange var redisAdapterMock = new Mock <IRedisAdapter>(); var redisValue = (RedisValue)"{\"keyName\":\"date\",\"treatment\":null,\"time\":10000000,\"changeNumber\":100,\"label\":\"testdate\",\"bucketingKey\":null}"; redisAdapterMock.Setup(x => x.Keys(impressionKeyPrefix + "*")).Returns(new RedisKey[] { impressionKeyPrefix + "test" }); redisAdapterMock.Setup(x => x.SMembers(impressionKeyPrefix + "test")).Returns(new RedisValue[] { redisValue }); redisAdapterMock.Setup(x => x.Del(impressionKeyPrefix + "test")).Returns(true); var cache = new RedisImpressionsCache(redisAdapterMock.Object, "10.0.0.1", "net-1.0.2"); //Act var result = cache.FetchAllAndClear(); //Assert Assert.IsNotNull(result); Assert.AreEqual(1, result.Count); redisAdapterMock.Verify(mock => mock.Keys(impressionKeyPrefix + "*")); redisAdapterMock.Verify(mock => mock.SMembers(impressionKeyPrefix + "test")); redisAdapterMock.Verify(mock => mock.Del(impressionKeyPrefix + "test")); }