Утверждение в NUnit, что коллекция находится в том же порядке, что и ожидаемая коллекция - PullRequest
11 голосов
/ 09 июня 2009

Я знаю, как проверить, что коллекция упорядочена по какому-либо свойству:

Assert.That(actual, Is.Ordered.By("Foo"));

Как я могу утверждать, что фактический содержит элементы (1,2,5,3,4) в этом конкретном порядке (без написания пользовательского компаратора).

1 Ответ

23 голосов
/ 09 июня 2009

Используйте

CollectionAssert.AreEqual(expectedIEnumerable, actualIEnumerable);

Это проверяет, что элементы равны и находятся в том же порядке.

Я совершенно уверен, что когда вы используете Assert.That для коллекции, вы получаете функциональность подтверждения коллекции. Так что вы можете сказать что-то вроде

Assert.That(collection, Is.EqualTo(expectedCollection)); // Same order

или

Assert.That(collection, Is.EquivalentTo(expectedCollection)); // Same item count

, а также такие вещи, как

Assert.That(collection, Has.Count.EqualTo(expectedSize));

Ключевое слово Has открывает вам доступ к материалам, относящимся к утверждениям коллекции, и действительно полезно.

...