using Kompas.Mcp.Core.Validation;

namespace Kompas.Mcp.Tests;

/// <summary>Режим авто-валидации из окружения: по умолчанию включён, выключается явными «нет».</summary>
[Trait("Category", "Unit")]
public sealed class AutoValidationSettingsTests
{
    [Theory]
    [InlineData(null)]
    [InlineData("")]
    [InlineData("   ")]
    [InlineData("1")]
    [InlineData("true")]
    [InlineData("on")]
    [InlineData("что угодно")]
    public void Enabled_by_default(string? value)
        => Assert.True(AutoValidationSettings.ParseEnabled(value));

    [Theory]
    [InlineData("0")]
    [InlineData("false")]
    [InlineData("FALSE")]
    [InlineData("Off")]
    [InlineData("no")]
    [InlineData("disabled")]
    [InlineData("  0  ")]
    public void Disabled_by_explicit_negatives(string value)
        => Assert.False(AutoValidationSettings.ParseEnabled(value));
}
