CollectionAssert.That Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene l'istanza singleton della funzionalità CollectionAssert.
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
Valore della proprietà
- Attributi
Esempio
L'esempio seguente definisce un'asserzione personalizzata AreEqualUnordered come metodo di estensione su CollectionAssert e la richiama tramite CollectionAssert.That:
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 });
}
}
Commenti
Gli utenti possono usarlo per collegare asserzioni personalizzate tramite metodi di estensione C#. Ad esempio, la firma di un provider di asserzioni personalizzato potrebbe essere public static void AreEqualUnordered(this CollectionAssert customAssert, ICollection expected, ICollection actual) e il sito di chiamata sarebbe CollectionAssert.That.AreEqualUnordered(list1, list2);.
Per le nuove asserzioni personalizzate, preferire invece l'estensione That , perché CollectionAssert è probabile che sia deprecata in una versione futura. Per altre informazioni, vedere Hook di estensione in StringAssert e CollectionAssert.