public void AddContextProviderMethodHappyPath() { var builder = new TestLoggerBuilder(); IDependency dependency = new ConcreteDependency(); int setting = 123; var serviceProvider = new ServiceCollection() .AddSingleton(dependency) .BuildServiceProvider(); builder.AddContextProvider <TestContextProvider>(setting); var registration = builder.ContextProviderRegistrations.Should().ContainSingle() .Subject; var contextProvider = registration.Invoke(serviceProvider); var testContextProvider = contextProvider.Should().BeOfType <TestContextProvider>() .Subject; testContextProvider.Setting.Should().Be(setting); testContextProvider.Dependency.Should().BeSameAs(dependency); }
public void AddFileLogProviderMethod3HappyPath() { var builder = new TestLoggerBuilder(); IDependency dependency = new ConcreteDependency(); int setting = 123; var file = "c:\\foobar"; var serviceProvider = new ServiceCollection() .AddSingleton(dependency) .BuildServiceProvider(); builder.AddFileLogProvider <TestLogFormatter>(file, LogLevel.Info, logFormatterParameters: setting); var registration = builder.LogProviderRegistrations.Should().ContainSingle() .Subject; var logProvider = registration.Invoke(serviceProvider); var fileLogProvider = logProvider.Should().BeOfType <FileLogProvider>() .Subject; fileLogProvider.Level.Should().Be(LogLevel.Info); fileLogProvider.File.Should().Be(file); var formatter = fileLogProvider.Formatter.Should().BeOfType <TestLogFormatter>() .Subject; formatter.Dependency.Should().BeSameAs(dependency); formatter.Setting.Should().Be(setting); }
public void AddRollingFileLogProviderMethod3HappyPath() { var builder = new TestLoggerBuilder(); IDependency dependency = new ConcreteDependency(); int setting = 123; var file = "c:\\foobar"; var serviceProvider = new ServiceCollection() .AddSingleton(dependency) .BuildServiceProvider(); builder.AddRollingFileLogProvider <TestLogFormatter>(file, LogLevel.Info, maxFileSizeKilobytes: 123, maxArchiveCount: 456, rolloverPeriod: RolloverPeriod.Hourly, logFormatterParameters: setting); var registration = builder.LogProviderRegistrations.Should().ContainSingle() .Subject; var logProvider = registration.Invoke(serviceProvider); var rollingFileLogProvider = logProvider.Should().BeOfType <RollingFileLogProvider>() .Subject; rollingFileLogProvider.Level.Should().Be(LogLevel.Info); rollingFileLogProvider.File.Should().Be(file); rollingFileLogProvider.MaxFileSizeBytes.Should().Be(123 * 1024); rollingFileLogProvider.MaxArchiveCount.Should().Be(456); rollingFileLogProvider.RolloverPeriod.Should().Be(RolloverPeriod.Hourly); var formatter = rollingFileLogProvider.Formatter.Should().BeOfType <TestLogFormatter>() .Subject; formatter.Dependency.Should().BeSameAs(dependency); formatter.Setting.Should().Be(setting); }
public ClassWithConcreteDependency(ConcreteDependency dependency) { this.dependency = dependency; }