public NybusHost(IBusEngine busEngine, INybusConfiguration configuration, IServiceProvider serviceProvider, ILogger <NybusHost> logger) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _engine = busEngine ?? throw new ArgumentNullException(nameof(busEngine)); _configuration = configuration ?? throw new ArgumentNullException(nameof(configuration)); _serviceProvider = serviceProvider ?? throw new ArgumentNullException(nameof(serviceProvider)); }
public void CustomizeConfiguration(IServiceProvider serviceProvider, INybusConfiguration configuration) { foreach (var customization in _configurationCustomizations) { customization(serviceProvider, configuration); } }
public void Configure_(NybusConfigurator sut, IServiceProvider serviceProvider, INybusConfiguration configuration, Action <INybusConfiguration> configurationDelegate) { sut.Configure(configurationDelegate); sut.CustomizeConfiguration(serviceProvider, configuration); Mock.Get(configurationDelegate).Verify(p => p(configuration)); }
public NybusHost BuildHost(IBusEngine engine, IServiceProvider serviceProvider, INybusConfiguration configuration) { var host = new NybusHost(engine, configuration, serviceProvider, _loggerFactory.CreateLogger <NybusHost>()); foreach (var subscription in _subscriptions) { subscription(host); } return(host); }
public async Task ExecuteEventHandlerAsync_executes_error_filter_on_fail([Frozen] IServiceProvider serviceProvider, [Frozen] IBusEngine engine, [Frozen] INybusConfiguration configuration, NybusHost sut, IDispatcher dispatcher, EventMessage <FirstTestEvent> eventMessage, IServiceScopeFactory scopeFactory, IEventHandler <FirstTestEvent> handler, Exception error, IErrorFilter errorFilter) { configuration.EventErrorFilters = new[] { errorFilter }; var handlerType = handler.GetType(); var context = new NybusEventContext <FirstTestEvent>(eventMessage); Mock.Get(serviceProvider).Setup(p => p.GetService(typeof(IServiceScopeFactory))).Returns(scopeFactory); Mock.Get(serviceProvider).Setup(p => p.GetService(handlerType)).Returns(handler); Mock.Get(handler).Setup(p => p.HandleAsync(It.IsAny <IDispatcher>(), It.IsAny <IEventContext <FirstTestEvent> >())).Throws(error); await sut.ExecuteEventHandlerAsync(dispatcher, context, handlerType); Mock.Get(errorFilter).Verify(p => p.HandleErrorAsync(context, error, It.IsAny <EventErrorDelegate <FirstTestEvent> >())); }
public void ServiceProvider_is_required(IBusEngine engine, INybusConfiguration configuration, ILogger <NybusHost> logger) { Assert.Throws <ArgumentNullException>(() => new NybusHost(engine, configuration, null, logger)); }
public void BusEngine_is_required(INybusConfiguration configuration, IServiceProvider serviceProvider, ILogger <NybusHost> logger) { Assert.Throws <ArgumentNullException>(() => new NybusHost(null, configuration, serviceProvider, logger)); }