using Bit.Core.Utilities; using Xunit; namespace Bit.Core.Test.Utilities; public class DomainNameValidatorAttributeTests { [Theory] [InlineData("example.com")] // basic domain [InlineData("sub.example.com")] // subdomain [InlineData("sub.sub2.example.com")] // multiple subdomains [InlineData("example-dash.com")] // domain with dash [InlineData("123example.com")] // domain starting with number [InlineData("example123.com")] // domain with numbers [InlineData("e.com")] // short domain [InlineData("very-long-subdomain-name.example.com")] // long subdomain [InlineData("wörldé.com")] // unicode domain (IDN) public void IsValid_ReturnsTrueWhenValid(string domainName) { var sut = new DomainNameValidatorAttribute(); var actual = sut.IsValid(domainName); Assert.True(actual); } [Theory] [InlineData("")] // XSS attempt [InlineData("example.com