public void TestEventProcessorWithBatchEventProcessorObj() { var eventDispatcher = new DefaultEventDispatcher(LoggerMock.Object); var notificationCenter = new NotificationCenter(); var projectConfigManager = new HttpProjectConfigManager.Builder() .WithSdkKey("10192104166") .Build(true); var batchEventProcessor = new BatchEventProcessor.Builder() .WithLogger(LoggerMock.Object) .WithMaxBatchSize(20) .WithFlushInterval(TimeSpan.FromSeconds(3)) .WithEventDispatcher(eventDispatcher) .WithNotificationCenter(notificationCenter) .Build(); var optimizely = OptimizelyFactory.NewDefaultInstance(projectConfigManager, notificationCenter, eventProcessor: batchEventProcessor); var actualbatchEventProcessor = Reflection.GetFieldValue <BatchEventProcessor, Optimizely>(optimizely, "EventProcessor"); var actualEventProcessorProps = new EventProcessorProps(actualbatchEventProcessor); var expectedEventProcessorProps = new EventProcessorProps(batchEventProcessor); Assert.AreEqual(actualEventProcessorProps, expectedEventProcessorProps); optimizely.Dispose(); }
public void TestEventProcessorWithDefaultEventBatching() { var optimizely = OptimizelyFactory.NewDefaultInstance(); var batchEventProcessor = Reflection.GetFieldValue <BatchEventProcessor, Optimizely>(optimizely, "EventProcessor"); var actualEventProcessorProps = new EventProcessorProps(batchEventProcessor); var expectedEventProcessorProps = new EventProcessorProps { BatchSize = 10, FlushInterval = TimeSpan.FromSeconds(2), TimeoutInterval = TimeSpan.FromSeconds(10) }; Assert.AreEqual(actualEventProcessorProps, expectedEventProcessorProps); optimizely.Dispose(); }
public void TestEventProcessorWithEventBatchingBatchSizeAndInterval() { OptimizelyFactory.SetBatchSize(2); OptimizelyFactory.SetFlushInterval(TimeSpan.FromSeconds(4)); var optimizely = OptimizelyFactory.NewDefaultInstance("sdk-Key"); var batchEventProcessor = Reflection.GetFieldValue <BatchEventProcessor, Optimizely>(optimizely, "EventProcessor"); var actualEventProcessorProps = new EventProcessorProps(batchEventProcessor); var expectedEventProcessorProps = new EventProcessorProps { BatchSize = 2, FlushInterval = TimeSpan.FromSeconds(4), TimeoutInterval = TimeSpan.FromMinutes(5) }; Assert.AreEqual(actualEventProcessorProps, expectedEventProcessorProps); optimizely.Dispose(); }