public void RegisterHystrixComman_ThrowsIfConfigNull() { ContainerBuilder services = new ContainerBuilder(); IConfiguration config = new ConfigurationBuilder().Build(); string stringKey = "DummyCommand"; var ex = Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixCommand <DummyCommand>(services, groupKey, null)); Assert.Contains(nameof(config), ex.Message); var ex2 = Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixCommand <IDummyCommand, DummyCommand>(services, groupKey, null)); Assert.Contains(nameof(config), ex2.Message); var ex3 = Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixCommand <DummyCommand>(services, stringKey, null)); Assert.Contains(nameof(config), ex3.Message); var ex4 = Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixCommand <IDummyCommand, DummyCommand>(services, stringKey, null)); Assert.Contains(nameof(config), ex4.Message); var ex5 = Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixCommand <DummyCommand>(services, groupKey, commandKey, null)); Assert.Contains(nameof(config), ex5.Message); var ex6 = Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixCommand <IDummyCommand, DummyCommand>(services, groupKey, commandKey, null)); Assert.Contains(nameof(config), ex6.Message); var ex7 = Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixCommand <DummyCommand>(services, stringKey, stringKey, null)); Assert.Contains(nameof(config), ex7.Message); var ex8 = Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixCommand <IDummyCommand, DummyCommand>(services, stringKey, stringKey, null)); Assert.Contains(nameof(config), ex8.Message); }
public void RegisterHystrixConnection_Requires_Config() { // arrange ContainerBuilder cb = new ContainerBuilder(); // act & assert Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixConnection(cb, null)); }
public void RegisterHystrixConnection_Requires_Builder() { // arrange IConfiguration config = new ConfigurationBuilder().Build(); // act & assert Assert.Throws <ArgumentNullException>(() => HystrixContainerBuilderExtensions.RegisterHystrixConnection(null, config)); }
public void RegisterHystrixConnection_AddsToContainer() { // arrange ContainerBuilder container = new ContainerBuilder(); IConfiguration config = new ConfigurationBuilder().Build(); // act var regBuilder = HystrixContainerBuilderExtensions.RegisterHystrixConnection(container, config); var services = container.Build(); var hystrixFactory = services.Resolve <HystrixConnectionFactory>(); // assert Assert.NotNull(hystrixFactory); Assert.IsType <HystrixConnectionFactory>(hystrixFactory); }
public void RegisterHystrixCommand_AddsToContainer() { ContainerBuilder services = new ContainerBuilder(); IConfiguration config = new ConfigurationBuilder().Build(); HystrixContainerBuilderExtensions.RegisterHystrixCommand <DummyCommand>(services, groupKey, config); var provider = services.Build(); var command = provider.Resolve <DummyCommand>(); Assert.NotNull(command); Assert.Equal(groupKey, command.CommandGroup); var expectedCommandKey = HystrixCommandKeyDefault.AsKey(typeof(DummyCommand).Name); Assert.Equal(expectedCommandKey, command.CommandKey); Assert.NotNull(command.Options); Assert.NotNull(command.Options._dynamic); services = new ContainerBuilder(); config = new ConfigurationBuilder().Build(); HystrixContainerBuilderExtensions.RegisterHystrixCommand <IDummyCommand, DummyCommand>(services, groupKey, config); provider = services.Build(); var icommand = provider.Resolve <IDummyCommand>(); Assert.NotNull(icommand); command = icommand as DummyCommand; Assert.NotNull(command); Assert.Equal(groupKey, command.CommandGroup); Assert.Equal(expectedCommandKey, command.CommandKey); Assert.NotNull(command.Options); Assert.NotNull(command.Options._dynamic); services = new ContainerBuilder(); HystrixContainerBuilderExtensions.RegisterHystrixCommand <DummyCommand>(services, "GroupKey", config); provider = services.Build(); command = provider.Resolve <DummyCommand>(); Assert.NotNull(command); Assert.Equal("GroupKey", command.CommandGroup.Name); expectedCommandKey = HystrixCommandKeyDefault.AsKey(typeof(DummyCommand).Name); Assert.Equal(expectedCommandKey, command.CommandKey); Assert.NotNull(command.Options); Assert.NotNull(command.Options._dynamic); services = new ContainerBuilder(); config = new ConfigurationBuilder().Build(); HystrixContainerBuilderExtensions.RegisterHystrixCommand <IDummyCommand, DummyCommand>(services, "GroupKey", config); provider = services.Build(); icommand = provider.Resolve <IDummyCommand>(); Assert.NotNull(icommand); command = icommand as DummyCommand; Assert.NotNull(command); Assert.Equal("GroupKey", command.CommandGroup.Name); Assert.Equal(expectedCommandKey, command.CommandKey); Assert.NotNull(command.Options); Assert.NotNull(command.Options._dynamic); services = new ContainerBuilder(); config = new ConfigurationBuilder().Build(); HystrixContainerBuilderExtensions.RegisterHystrixCommand <DummyCommand>(services, groupKey, commandKey, config); provider = services.Build(); command = provider.Resolve <DummyCommand>(); Assert.NotNull(command); Assert.Equal(groupKey, command.CommandGroup); Assert.Equal(commandKey, command.CommandKey); Assert.NotNull(command.Options); Assert.NotNull(command.Options._dynamic); services = new ContainerBuilder(); config = new ConfigurationBuilder().Build(); HystrixContainerBuilderExtensions.RegisterHystrixCommand <IDummyCommand, DummyCommand>(services, groupKey, commandKey, config); provider = services.Build(); icommand = provider.Resolve <IDummyCommand>(); Assert.NotNull(icommand); command = icommand as DummyCommand; Assert.NotNull(command); Assert.Equal(groupKey, command.CommandGroup); Assert.Equal(commandKey, command.CommandKey); Assert.NotNull(command.Options); Assert.NotNull(command.Options._dynamic); services = new ContainerBuilder(); HystrixContainerBuilderExtensions.RegisterHystrixCommand <DummyCommand>(services, "GroupKey", "CommandKey", config); provider = services.Build(); command = provider.Resolve <DummyCommand>(); Assert.NotNull(command); Assert.Equal("GroupKey", command.CommandGroup.Name); Assert.Equal("CommandKey", command.CommandKey.Name); Assert.NotNull(command.Options); Assert.NotNull(command.Options._dynamic); services = new ContainerBuilder(); config = new ConfigurationBuilder().Build(); HystrixContainerBuilderExtensions.RegisterHystrixCommand <IDummyCommand, DummyCommand>(services, "GroupKey", "CommandKey", config); provider = services.Build(); icommand = provider.Resolve <IDummyCommand>(); Assert.NotNull(icommand); command = icommand as DummyCommand; Assert.NotNull(command); Assert.Equal("GroupKey", command.CommandGroup.Name); Assert.Equal("CommandKey", command.CommandKey.Name); Assert.NotNull(command.Options); Assert.NotNull(command.Options._dynamic); }