using System; using API.Comparators; using Xunit; namespace API.Tests.Comparers; public class StringLogicalComparerTest { [Theory] [InlineData( new[] {"x1.jpg", "x10.jpg", "x3.jpg", "x4.jpg", "x11.jpg"}, new[] {"x1.jpg", "x3.jpg", "x4.jpg", "x10.jpg", "x11.jpg"} )] [InlineData( new[] {"a.jpg", "aaa.jpg", "1.jpg", }, new[] {"1.jpg", "a.jpg", "aaa.jpg"} )] [InlineData( new[] {"a.jpg", "aaa.jpg", "1.jpg", "!cover.png"}, new[] {"!cover.png", "1.jpg", "a.jpg", "aaa.jpg"} )] public void StringComparer(string[] input, string[] expected) { Array.Sort(input, StringLogicalComparer.Compare); var i = 0; foreach (var s in input) { Assert.Equal(s, expected[i]); i++; } } }