using ZB.MOM.WW.Secrets.Abstractions; using Xunit; namespace ZB.MOM.WW.Secrets.Tests; public class SecretNameTests { [Theory] [InlineData("sql/historiangw/historian-password", "sql/historiangw/historian-password")] [InlineData(" SQL/Foo ", "sql/foo")] // trimmed + lowercased public void Normalizes(string input, string expected) => Assert.Equal(expected, new SecretName(input).Value); [Theory] [InlineData("")] [InlineData(" ")] [InlineData("bad name with spaces")] [InlineData("../escape")] public void RejectsInvalid(string input) => Assert.Throws(() => new SecretName(input)); }