CollectionAssert.That Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
CollectionAssert işlevinin tekil örneğini alır.
public:
static property Microsoft::VisualStudio::TestTools::UnitTesting::CollectionAssert ^ That { Microsoft::VisualStudio::TestTools::UnitTesting::CollectionAssert ^ get(); };
public static Microsoft.VisualStudio.TestTools.UnitTesting.CollectionAssert That { get; }
[System.Runtime.CompilerServices.Nullable(1)]
public static Microsoft.VisualStudio.TestTools.UnitTesting.CollectionAssert That { get; }
static member That : Microsoft.VisualStudio.TestTools.UnitTesting.CollectionAssert
[<System.Runtime.CompilerServices.Nullable(1)>]
static member That : Microsoft.VisualStudio.TestTools.UnitTesting.CollectionAssert
Public Shared ReadOnly Property That As CollectionAssert
Özellik Değeri
- Öznitelikler
Örnekler
Aşağıdaki örnek, üzerinde CollectionAssert bir uzantı yöntemi olarak özel AreEqualUnordered onay tanımlar ve aracılığıyla CollectionAssert.Thatçağırır:
using System.Collections.Generic;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;
public static class CustomCollectionAssertExtensions
{
public static void AreEqualUnordered<T>(this CollectionAssert collectionAssert, IEnumerable<T> expected, IEnumerable<T> actual)
{
if (!expected.OrderBy(x => x).SequenceEqual(actual.OrderBy(x => x)))
{
throw new AssertFailedException("CollectionAssert.That.AreEqualUnordered failed. Collections do not contain the same elements.");
}
}
}
[TestClass]
public class SetTests
{
[TestMethod]
public void Items_MatchRegardlessOfOrder()
{
CollectionAssert.That.AreEqualUnordered(new[] { 1, 2, 3 }, new[] { 3, 1, 2 });
}
}
Açıklamalar
Kullanıcılar, C# uzantısı yöntemleri aracılığıyla özel onayları eklemek için bunu kullanabilir. Örneğin, özel onay sağlayıcısının imzası olabilir public static void AreEqualUnordered(this CollectionAssert customAssert, ICollection expected, ICollection actual) ve çağrı sitesi olabilir CollectionAssert.That.AreEqualUnordered(list1, list2);.
Yeni özel onaylar için, bunun yerine genişletmeyi That tercih edin, çünkü CollectionAssert gelecekteki bir sürümde kullanım dışı bırakılacaktır. Daha fazla bilgi için bkz. StringAssert ve CollectionAssert'te uzantı kancaları.