using Kompas.Mcp.Core.Modeling;

namespace Kompas.Mcp.Tests;

[Trait("Category", "Unit")]
public sealed class CoordinateAxisTests
{
    [Theory]
    [InlineData("X", CoordinateAxis.X)]
    [InlineData("y", CoordinateAxis.Y)]
    [InlineData(" Z ", CoordinateAxis.Z)]
    public void Parse_maps_known(string value, CoordinateAxis expected)
        => Assert.Equal(expected, CoordinateAxes.Parse(value));

    [Theory]
    [InlineData("W")]
    [InlineData("")]
    [InlineData(null)]
    public void Parse_throws_on_unknown(string? value)
        => Assert.Throws<ArgumentException>(() => CoordinateAxes.Parse(value!));
}
