Мы можем добавить необязательное лямбда-выражение в метод Equal ().Затем вы могли бы сделать что-то вроде
[TestMethod()]
public void foo()
{
var actual = new List<string> { "ONE", "TWO", "THREE", "FOUR" };
var expected = new List<string> { "One", "Two", "Three", "Four" };
actual.Should().Equal(expected,
(o1, o2) => string.Compare(o1, o2, StringComparison.InvariantCultureIgnoreCase))
}
. IComparer также был бы возможен, но я думаю, что случайное исключение из поведения по умолчанию Equal () не потребовало бы дополнительного пользовательского класса.Фактически, отдельный IComparer может скрыть цель теста.Дайте мне знать, что вы, ребята, считаете лучшим решением, поэтому я могу добавить его в качестве проблемы на Codeplex для выпуска 1.8.0.