public void ConfigureEndpointsOnAllPlugins() { var plugin1 = Substitute.For <IPlugin>(); var plugin2 = Substitute.For <IPlugin>(); var plugins = new ServiceConfigurations(new[] { plugin1, plugin2 }, Substitute.For <ILogger>()); plugins.ConfigureEndpoints(Substitute.For <IEndpointRouteBuilder>()); plugin1.ReceivedWithAnyArgs().ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>()); plugin2.ReceivedWithAnyArgs().ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>()); }
public void ConfigureEndpointsOnAllPluginsWhenOneThrowsException() { var plugin1 = Substitute.For <IPlugin>(); plugin1.When(p => p.ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>())) .Do(x => { throw new Exception("Fail Plugin1"); }); var plugin2 = Substitute.For <IPlugin>(); var plugins = new ServiceConfigurations(new[] { plugin1, plugin2 }, Substitute.For <ILogger>()); plugins.ConfigureEndpoints(Substitute.For <IEndpointRouteBuilder>()); plugin1.ReceivedWithAnyArgs().ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>()); plugin2.ReceivedWithAnyArgs().ConfigureEndpoints(Arg.Any <IEndpointRouteBuilder>()); }