Search in sources :

Example 51 with ProjectConfig

use of com.optimizely.ab.config.ProjectConfig in project java-sdk by optimizely.

the class BatchEventProcessorTest method testFlushOnMismatchRevision.

@Test
public void testFlushOnMismatchRevision() throws Exception {
    setEventProcessor(logEvent -> eventHandlerRule.dispatchEvent(logEvent));
    ProjectConfig projectConfig1 = mock(ProjectConfig.class);
    when(projectConfig1.getRevision()).thenReturn("1");
    when(projectConfig1.getProjectId()).thenReturn("X");
    UserEvent userEvent1 = buildConversionEvent(EVENT_NAME, projectConfig1);
    eventProcessor.process(userEvent1);
    eventHandlerRule.expectConversion(EVENT_NAME, USER_ID);
    ProjectConfig projectConfig2 = mock(ProjectConfig.class);
    when(projectConfig2.getRevision()).thenReturn("2");
    when(projectConfig1.getProjectId()).thenReturn("X");
    UserEvent userEvent2 = buildConversionEvent(EVENT_NAME, projectConfig2);
    eventProcessor.process(userEvent2);
    eventHandlerRule.expectConversion(EVENT_NAME, USER_ID);
    eventProcessor.close();
    eventHandlerRule.expectCalls(2);
}
Also used : ProjectConfig(com.optimizely.ab.config.ProjectConfig) Test(org.junit.Test)

Aggregations

ProjectConfig (com.optimizely.ab.config.ProjectConfig)51 Test (org.junit.Test)45 DatafileProjectConfigTestUtils.verifyProjectConfig (com.optimizely.ab.config.DatafileProjectConfigTestUtils.verifyProjectConfig)28 Experiment (com.optimizely.ab.config.Experiment)19 FeatureFlag (com.optimizely.ab.config.FeatureFlag)14 FeatureVariable (com.optimizely.ab.config.FeatureVariable)12 LogEvent (com.optimizely.ab.event.LogEvent)10 Variation (com.optimizely.ab.config.Variation)9 Attribute (com.optimizely.ab.config.Attribute)7 EventBatch (com.optimizely.ab.event.internal.payload.EventBatch)7 ExhaustiveTest (com.optimizely.ab.categories.ExhaustiveTest)6 EventType (com.optimizely.ab.config.EventType)6 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)6 HashMap (java.util.HashMap)3 DecisionService (com.optimizely.ab.bucketing.DecisionService)2 Group (com.optimizely.ab.config.Group)2 LiveVariable (com.optimizely.ab.config.LiveVariable)2 Rollout (com.optimizely.ab.config.Rollout)2 Audience (com.optimizely.ab.config.audience.Audience)2 EventBuilder (com.optimizely.ab.event.internal.EventBuilder)2