public void Test_0012_GetByID_Status_Is_Out_Of_Range() { this.LogIn(); client.AddResponse( 200, "{" + " \"_id\" : \"ID-001\"," + " \"description\" : \"Experiment for UT\"," + " \"version\" : 2, " + " \"status\" : 1000, " + " \"conversionEvents\" : [ " + " { \"name\" : \"Event-A\" }, " + " { \"name\" : \"Event-B\" } " + " ], " + " \"variations\" : [ " + " { " + " \"name\" : \"A\", " + " \"percentage\" : 50, " + " \"variableSet\" : {\"message\" : \"set A\"} " + " }, " + " { " + " \"name\" : \"B\", " + " \"percentage\" : 50, " + " \"variableSet\" : {\"message\" : \"set B\"} " + " } " + " ]" + "}"); KiiExperiment experiment = KiiExperiment.GetByID(id); // verify Experiment Assert.AreEqual("ID-001", experiment.ID); Assert.AreEqual("Experiment for UT", experiment.Description); Assert.AreEqual(2, experiment.Version); Assert.AreEqual(KiiExperimentStatus.PAUSED, experiment.Status); // verify VariationA Variation variationA = experiment.GetVariationByName("A"); Assert.AreEqual("A", variationA.Name); Assert.AreEqual(50, variationA.Percentage); Assert.AreEqual( new JsonObject("{\"message\" : \"set A\"}").ToString(), variationA.VariableSet.ToString()); ConversionEvent eventA = experiment.GetConversionEventByName("Event-A"); Assert.AreEqual("Event-A", eventA.Name); // verify VariationB Variation variationB = experiment.GetVariationByName("B"); Assert.AreEqual("B", variationB.Name); Assert.AreEqual(50, variationB.Percentage); Assert.AreEqual( new JsonObject("{\"message\" : \"set B\"}").ToString(), variationB.VariableSet.ToString()); ConversionEvent eventB = experiment.GetConversionEventByName("Event-B"); Assert.AreEqual("Event-B", eventB.Name); }
public void Test_0000_GetConversionEventByName() { ConversionEvent e1 = new ConversionEvent("ConversionEvent1"); ConversionEvent e2 = new ConversionEvent("CONVERSIONEVENT1"); ConversionEvent e3 = new ConversionEvent("conversionevent1"); ConversionEvent e4 = new ConversionEvent("ConversionEvent2"); ConversionEvent e5 = new ConversionEvent("3ConversionEvent"); ConversionEvent[] array = new ConversionEvent[] { e1, e2, e3, e4, e5 }; Assert.AreEqual(e1, ConversionEvent.GetConversionEventByName("ConversionEvent1", array)); Assert.AreEqual(e2, ConversionEvent.GetConversionEventByName("CONVERSIONEVENT1", array)); Assert.AreEqual(e3, ConversionEvent.GetConversionEventByName("conversionevent1", array)); Assert.AreEqual(e4, ConversionEvent.GetConversionEventByName("ConversionEvent2", array)); Assert.AreEqual(e5, ConversionEvent.GetConversionEventByName("3ConversionEvent", array)); Assert.AreEqual(null, ConversionEvent.GetConversionEventByName("hoge", array)); }
/// <summary> /// You will generate event when the specified condition in the <see cref="KiiCorp.Cloud.ABTesting.KiiExperiment"/> has achieved. /// ex.) User has signed up, view the message, purchase item, etc. /// You need to call <see cref="KiiAnalytics.Upload(KiiEvent)"/> method of KiiAnalyticsSDK to send the event to Kii Analytics Cloud. /// </summary> /// <remarks> /// </remarks> /// <returns>KiiEvent represents event.</returns> /// <param name="conversionEvent">ConversionEvent to specify which conversionEvent has achieved.</param> public KiiEvent EventForConversion(ConversionEvent conversionEvent) { if (conversionEvent == null) { throw new ArgumentException("conversionEvent is null"); } if (mParentExperimentStatus != KiiExperimentStatus.RUNNING) { return(new KiiEvent.NullKiiEvent()); } KiiEvent e = KiiAnalytics.NewEvent(this.mParentExperimentID); e ["variationName"] = this.mName; e ["conversionEvent"] = conversionEvent.Name; e ["version"] = this.mParentExperimentVersion; return(e); }
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_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"]); }
/// <summary> /// You will generate event when the specified condition in the <see cref="KiiCorp.Cloud.ABTesting.KiiExperiment"/> has achieved. /// ex.) User has signed up, view the message, purchase item, etc. /// You need to call <see cref="KiiAnalytics.Upload(KiiEvent)"/> method of KiiAnalyticsSDK to send the event to Kii Analytics Cloud. /// </summary> /// <remarks> /// </remarks> /// <returns>KiiEvent represents event.</returns> /// <param name="conversionEventIndex">Index of conversionEvents array retrieved by <see cref="KiiExperiment.ConversionEvents"/></param> public KiiEvent EventForConversion(int conversionEventIndex) { ConversionEvent conversionEvent = this.mParentExperimentConversionEvents[conversionEventIndex]; return(this.EventForConversion(conversionEvent)); }
/// <summary> /// You will generate event when the specified condition in the <see cref="KiiCorp.Cloud.ABTesting.KiiExperiment"/> has achieved. /// ex.) User has signed up, view the message, purchase item, etc. /// You need to call <see cref="KiiAnalytics.Upload(KiiEvent)"/> method of KiiAnalyticsSDK to send the event to Kii Analytics Cloud. /// </summary> /// <remarks> /// </remarks> /// <returns>KiiEvent represents event.</returns> /// <param name="conversionEventName">Name of the conversion event.</param> public KiiEvent EventForConversion(string conversionEventName) { ConversionEvent conversionEvent = ConversionEvent.GetConversionEventByName(conversionEventName, this.mParentExperimentConversionEvents); return(this.EventForConversion(conversionEvent)); }
/// <summary> /// Get the Conversion Event by its name. /// </summary> /// <remarks> /// </remarks> /// <returns>Conversion Event or null if Experiment does not have conversion having specified name.</returns> /// <param name="name">Name of the Conversion Event</param> public ConversionEvent GetConversionEventByName(String name) { return(ConversionEvent.GetConversionEventByName(name, this.mConversionEvents)); }