| File: Logging\LoggingOptionsValidatorTest.cs | Web Access |
| Project: src\test\Libraries\Microsoft.Extensions.Http.Diagnostics.Tests\Microsoft.Extensions.Http.Diagnostics.Tests.csproj (Microsoft.Extensions.Http.Diagnostics.Tests) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System; using FluentAssertions; using Microsoft.Extensions.Http.Logging.Internal; using Xunit; namespace Microsoft.Extensions.Http.Logging.Test; public class LoggingOptionsValidatorTest { [Fact] public void Ctor_CreatesAnInstance() { var act = () => _ = new LoggingOptionsValidator(); act.Should().NotThrow(); } [Fact] public void Validate_ObjectHasNoIssues_Success() { var validator = new LoggingOptionsValidator(); var result = validator.Validate("model", new LoggingOptions()); result.Succeeded.Should().BeTrue(); } [Fact] public void Validate_ObjectHasOneIssues_Fails() { var validator = new LoggingOptionsValidator(); var options = new LoggingOptions { BodyReadTimeout = TimeSpan.Zero }; validator.Validate("model", options).Failed.Should().BeTrue(); } [Fact] public void Validate_ObjectHasTwoIssues_Fails() { var validator = new LoggingOptionsValidator(); var options = new LoggingOptions { BodySizeLimit = -1 }; validator.Validate("model", options).Failed.Should().BeTrue(); } }