Example #1
0
        public void ExecuteGetTreatmentAndLogLabelSplitNotFound()
        {
            //Arrange
            var treatmentLogMock = new Mock <IImpressionListener>();
            var client           = new JSONFileClient(@"Resources\splits_staging_3.json", "", null, null, treatmentLogMock.Object);

            //Act
            client.RemoveSplitFromCache("asd");
            var result = client.GetTreatment("test", "asd", null);

            //Assert
            treatmentLogMock.Verify(x => x.Log(It.Is <KeyImpression>(p => p.keyName == "test" && p.feature == "asd" && p.treatment == "control" && p.time > 0 && p.changeNumber == null && p.label == "rules not found" && p.bucketingKey == null)));
        }
Example #2
0
        public void ExecuteGetTreatmentOnDeletedSplitShouldReturnControl()
        {
            //Arrange
            var client = new JSONFileClient(@"Resources\splits_staging_3.json", "");

            //Act
            var result = client.GetTreatment("test", "asd", null);

            client.RemoveSplitFromCache("asd");
            var result2 = client.GetTreatment("test", "asd", null);

            //Assert
            Assert.IsNotNull(result);
            Assert.AreEqual("off", result);
            Assert.IsNotNull(result2);
            Assert.AreEqual("control", result2);
        }
Example #3
0
        public void ExecuteGetTreatmentOnDeletedSplitShouldReturnControl()
        {
            //Arrange
            var client = new JSONFileClient($"{rootFilePath}splits_staging_3.json", "", _logMock.Object);

            client.BlockUntilReady(1000);

            //Act
            var result = client.GetTreatment("test", "asd", null);

            client.RemoveSplitFromCache("asd");
            var result2 = client.GetTreatment("test", "asd", null);

            //Assert
            Assert.IsNotNull(result);
            Assert.AreEqual("off", result);
            Assert.IsNotNull(result2);
            Assert.AreEqual("control", result2);
        }
        public void ExecuteGetTreatmentAndLogLabelSplitNotFound()
        {
            //Arrange
            var treatmentLogMock = new Mock <IListener <KeyImpression> >();
            var client           = new JSONFileClient("splits_staging_3.json", "", _logMock.Object, null, null, treatmentLogMock.Object);

            //Act
            client.RemoveSplitFromCache("asd");
            var result = client.GetTreatment("test", "asd", null);

            //Assert
            Assert.AreEqual("control", result);
            treatmentLogMock.Verify(x => x.Log(It.Is <KeyImpression>(p => p.keyName == "test" &&
                                                                     p.feature == "asd" &&
                                                                     p.treatment == "control" &&
                                                                     p.time > 0 &&
                                                                     p.changeNumber == null &&
                                                                     p.label == "definition not found" &&
                                                                     p.bucketingKey == null)), Times.Never());
        }