public void Test_0009_GetAppliedVariation_With_CustomSampler() { this.LogIn(); client.AddResponse( 200, CreateKiiExperimentAsJsonString(id, description, version, KiiExperimentStatus.RUNNING, variationNameA, eventNameA, 0, variableSetA, variationNameB, eventNameB, 100, variableSetB, variationNameA) ); KiiExperiment experiment = KiiExperiment.GetByID(id); Variation variation = experiment.GetAppliedVariation(null, new CustomVariationSampler()); // get VariationsA even its percentage is 0. Assert.AreEqual(experiment.Variations[0], variation); }
public void Test_0005_OnCrank_With_Status_DRAFT() { this.LogIn(); VariationSampler sampler = new VariationSamplerByKiiUser(); client.AddResponse(200, CreateKiiExperimentAsJsonString(KiiExperimentStatus.DRAFT, 50, 50, null)); KiiExperiment experiment = KiiExperiment.GetByID("000001"); Variation variationA = experiment.Variations[0]; // 50% Variation variationB = experiment.Variations[1]; // 50% Variation variation = sampler.ChooseVariation(experiment, null); Assert.IsNull(variation); variation = sampler.ChooseVariation(experiment, variationA); Assert.AreEqual(variationA, variation); variation = sampler.ChooseVariation(experiment, variationB); Assert.AreEqual(variationB, variation); }
public void Test_0008_OnCrank_With_Status_TERMINATED_Whit_ChosenVariation() { System.Threading.Thread.Sleep(1); VariationSampler sampler = new RandomVariationSampler(); client.AddResponse(200, CreateKiiExperimentAsJsonString(KiiExperimentStatus.TERMINATED, 50, 50, "B")); KiiExperiment experiment = KiiExperiment.GetByID("000001"); Variation variationA = experiment.Variations[0]; // 50% Variation variationB = experiment.Variations[1]; // 50% Variation variation = sampler.ChooseVariation(experiment, null); Assert.AreEqual(variationB, variation); variation = sampler.ChooseVariation(experiment, variationA); Assert.AreEqual(variationB, variation); variation = sampler.ChooseVariation(experiment, variationB); Assert.AreEqual(variationB, variation); }
public void Test_0006_GetConversionEventByName() { this.LogIn(); client.AddResponse( 200, CreateKiiExperimentAsJsonString(id, description, version, status, variationNameA, eventNameA, percentageA, variableSetA, variationNameB, eventNameB, percentageB, variableSetB, variationNameA) ); KiiExperiment experiment = KiiExperiment.GetByID(id); ConversionEvent conversionEvent = experiment.GetConversionEventByName(eventNameB); Assert.AreEqual(experiment.ConversionEvents [1], conversionEvent); conversionEvent = experiment.GetConversionEventByName("hoge"); Assert.IsNull(conversionEvent); }
public void Test_0005_EventForConversionWhenStatusIsTerminated() { this.LogIn(); int experimentVersion = 10; client.AddResponse(200, CreateKiiExperimentAsJsonString(experimentVersion, KiiExperimentStatus.TERMINATED, "UI-A", "EV-A", "UI-B", "EV-B")); KiiExperiment experiment = KiiExperiment.GetByID("000001"); Variation variationA = experiment.Variations[0]; Variation variationB = experiment.Variations[1]; ConversionEvent eventA = experiment.ConversionEvents[0]; ConversionEvent eventB = experiment.ConversionEvents[1]; KiiEvent kiiEventA = variationA.EventForConversion(eventA); Assert.IsInstanceOfType(typeof(KiiEvent.NullKiiEvent), kiiEventA); KiiEvent kiiEventB = variationB.EventForConversion(eventB); Assert.IsInstanceOfType(typeof(KiiEvent.NullKiiEvent), kiiEventB); }
public void Test_0004_GetByID_ASync_With_InvalidID() { this.LogIn(); client.AddResponse( 200, CreateKiiExperimentAsJsonString(id, description, version, status, variationNameA, eventNameA, percentageA, variableSetA, variationNameB, eventNameB, percentageB, variableSetB, variationNameA) ); KiiExperiment.GetByID("+100*", (KiiExperiment experiment, Exception e) => { if (e == null) { Assert.Fail("ArgumentException was not thrown."); } if (e.GetType() != typeof(ArgumentException)) { Assert.Fail("unexpected exception. " + e.GetType()); } }); }
public void Test_0001_EventForConversion() { this.LogIn(); int experimentVersion = 10; client.AddResponse(200, CreateKiiExperimentAsJsonString(experimentVersion, KiiExperimentStatus.RUNNING, "UI-A", "EV-A", "UI-B", "EV-B")); KiiExperiment experiment = KiiExperiment.GetByID("000001"); Variation variationA = experiment.Variations[0]; Variation variationB = experiment.Variations[1]; ConversionEvent eventA = experiment.ConversionEvents[0]; ConversionEvent eventB = experiment.ConversionEvents[1]; KiiEvent kiiEventA = variationA.EventForConversion(0); Assert.AreEqual(variationA.Name, kiiEventA["variationName"]); Assert.AreEqual(eventA.Name, kiiEventA["conversionEvent"]); Assert.AreEqual(experimentVersion, kiiEventA["version"]); KiiEvent kiiEventB = variationB.EventForConversion(1); Assert.AreEqual(variationB.Name, kiiEventB["variationName"]); Assert.AreEqual(eventB.Name, kiiEventB["conversionEvent"]); Assert.AreEqual(experimentVersion, kiiEventB["version"]); }