public void BatchActionFactoryTest_getProvider(BatchUrlManagerCommand command) { //Arrange var sharpBatchTrakingFactory = new Mock <ISharpBatchTrackingFactory>(MockBehavior.Strict); sharpBatchTrakingFactory.Setup((s) => s.getTrakingProvider()) .Returns(new TrackingMemory()) .Verifiable(); var modelSerializer = new Mock <IModelSerializer>(MockBehavior.Strict); IPropertyInvoker propertyInvoker = new DefaultPropertyInvoker(); MethodActivator methodActivator = new MethodActivator(); IBatchInvoker batchInvoker = new DefaultBatchInvoker(propertyInvoker, methodActivator, sharpBatchTrakingFactory.Object, modelSerializer.Object); IBatchInvokerProvider batchInvokerProvider = new DefaultBatchInvokerProvider(batchInvoker, sharpBatchTrakingFactory.Object); ApplicationBatchManager applicationBatchManager = new ApplicationBatchManager(); BatchActionProvider batchActionProvider = new BatchActionProvider(applicationBatchManager, batchInvokerProvider); SystemActionProvider systemActionProvider = new SystemActionProvider(sharpBatchTrakingFactory.Object, modelSerializer.Object); IBatchActionFactory batchActionFactory = new BatchActionFactory(batchActionProvider, systemActionProvider); var batchUrlManager = new Mock <IBatchUrlManager>(MockBehavior.Strict); batchUrlManager.Setup((s) => s.RequestCommand) .Returns(command) .Verifiable(); //Act var actionProvider = batchActionFactory.getProvider(batchUrlManager.Object); //Assert if (command == BatchUrlManagerCommand.Exec) { Assert.Same(batchActionProvider, actionProvider); } else { Assert.Same(systemActionProvider, actionProvider); } batchUrlManager.Verify(); sharpBatchTrakingFactory.Verify(); }
private static IApplicationBatchManager getBatchAction(IServiceCollection service) { var hostingService = (IHostingEnvironment)service.FirstOrDefault(t => t.ServiceType == typeof(IHostingEnvironment))?.ImplementationInstance; var manager = (IApplicationBatchManager)service.FirstOrDefault(t => t.ServiceType == typeof(IApplicationBatchManager))?.ImplementationInstance; if (manager == null) { manager = new ApplicationBatchManager(); } var batchDescriptors = BatchActionDiscovery.discoveryBatchDescription(hostingService.ApplicationName); foreach (var item in batchDescriptors) { manager.BatchActions.Add(item); } return(manager); }
private ApplicationBatchManager createApplicationBatchManager() { var batchManager = new ApplicationBatchManager(); new ApplicationBatchManager(); batchManager.BatchActions.Add(new BatchActionDescriptor() { BatchName = "Batch1", ActionName = "Action1" }); batchManager.BatchActions.Add(new BatchActionDescriptor() { BatchName = "Batch1", ActionName = "Action2" }); batchManager.BatchActions.Add(new BatchActionDescriptor() { BatchName = "Batch2", ActionName = "Action1" }); return(batchManager); }