public static ITestcontainersBuilder <T> WithMessageBroker <T>(this ITestcontainersBuilder <T> builder, TestcontainerMessageBrokerConfiguration configuration) where T : TestcontainerMessageBroker { foreach (var environment in configuration.Environments) { builder = builder.WithEnvironment(environment.Key, environment.Value); } return(builder .WithImage(configuration.Image) .WithPortBinding(configuration.Port, configuration.DefaultPort) .WithOutputConsumer(configuration.OutputConsumer) .WithWaitStrategy(configuration.WaitStrategy) .ConfigureContainer((container) => { container.Hostname = configuration.Hostname; container.Port = configuration.Port; container.Username = configuration.Username; container.Password = configuration.Password; })); }
public static ITestcontainersBuilder <T> WithMessageBroker <T>(this ITestcontainersBuilder <T> builder, TestcontainerMessageBrokerConfiguration configuration) where T : TestcontainerMessageBroker { builder = configuration.Environments.Aggregate(builder, (current, environment) => current.WithEnvironment(environment.Key, environment.Value)); return(builder .WithImage(configuration.Image) .WithPortBinding(configuration.Port, configuration.DefaultPort) .WithOutputConsumer(configuration.OutputConsumer) .WithWaitStrategy(configuration.WaitStrategy) .ConfigureContainer(container => { container.ContainerPort = configuration.DefaultPort; container.Username = configuration.Username; container.Password = configuration.Password; })); }