using Kompas.Mcp.Core.Drawings; namespace Kompas.Mcp.Tests; [Trait("Category", "Unit")] public sealed class AngleDimensionTypesTests { [Theory] [InlineData("min", AngleDimensionType.Min)] [InlineData("max", AngleDimensionType.Max)] [InlineData("more", AngleDimensionType.More)] [InlineData(" MIN ", AngleDimensionType.Min)] [InlineData("минимальный", AngleDimensionType.Min)] [InlineData("максимальный", AngleDimensionType.Max)] [InlineData("больше180", AngleDimensionType.More)] public void Parse_maps_known(string value, AngleDimensionType expected) => Assert.Equal(expected, AngleDimensionTypes.Parse(value)); [Fact] public void Parse_throws_on_unknown() => Assert.Throws(() => AngleDimensionTypes.Parse("acute")); [Fact] public void Parse_throws_on_null() => Assert.Throws(() => AngleDimensionTypes.Parse(null!)); // ToKompas (→ ksAngleDimTypeEnum) намеренно НЕ покрыт unit-тестом: тестовый проект не ссылается // на Kompas6Constants (граница проекта, как у DimensionOrientations.ToKompas). Маппинг тривиален // и проверяется интеграцией (min → острый угол 90°, выбор сектора). }