System::TestCompare Struct Reference

Service structure providing interface to compare collections. More...

Static Public Member Functions

template<typename T , typename U >
static bool AreEqual (const SharedPtr< Array< T >> &arrA, const SharedPtr< Array< U >> &arrB)
 Compares arrays of non-pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< Array< SharedPtr< T >>> &arrA, const SharedPtr< Array< SharedPtr< U >>> &arrB)
 Compares arrays of pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< SCG::List< T > > &listA, const SharedPtr< SCG::List< U > > &listB)
 Compares lists of non-pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< SCG::List< SharedPtr< T > > > &listA, const SharedPtr< SCG::List< SharedPtr< U > > > &listB)
 Compares lists of pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< SCG::List< T > > &listA, const System::ArrayPtr< U > &arrB)
 Compares lists with arrays in non-pointers elements case. More...
 
template<typename T , typename U >
static bool AreEqual (const System::ArrayPtr< T > &arrA, const SharedPtr< SCG::List< U > > &listB)
 Compares lists with arrays in non-pointers elements case. More...
 
template<typename T , typename U >
static bool AreEqual (const System::ArrayPtr< SharedPtr< T > > &arr, const SharedPtr< SCG::List< SharedPtr< U > > > &list)
 Compares lists with arrays in pointers elements case. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< SCG::List< SharedPtr< T > > > &list, const System::ArrayPtr< SharedPtr< U > > &arr)
 Compares lists with arrays in pointers elements case. More...
 
template<typename K , typename U >
static bool AreEqual (const SharedPtr< SCG::Dictionary< K, U > > &dictA, const SharedPtr< SCG::Dictionary< K, U > > &dictB)
 Compares dictionaries of non-pointer mapped types. More...
 
template<typename K , typename U >
static bool AreEqual (const SharedPtr< SCG::Dictionary< K, SharedPtr< U > > > &dictA, const SharedPtr< SCG::Dictionary< K, SharedPtr< U > > > &dictB)
 Compares dictionaries of pointer mapped types. More...
 
template<typename K1 , typename U1 , typename K2 , typename U2 >
static bool AreEqual (const SharedPtr< SCG::Dictionary< K1, U1 > > &dictA, const SharedPtr< SCG::Dictionary< K2, U2 > > &dictB)
 Compares dictionaries of different types. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< SCG::HashSet< T > > &containerPtrA, const SharedPtr< SCG::HashSet< U > > &containerPtrB)
 Compares hashsets of non-pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< SCG::HashSet< SharedPtr< T > > > &contA, const SharedPtr< SCG::HashSet< SharedPtr< U > > > &contB)
 Compares hashsets of pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SCG::QueuePtr< T > &queueA, const SCG::QueuePtr< U > &queueB)
 Compares queues of non-pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SCG::QueuePtr< SharedPtr< T > > &queueA, const SCG::QueuePtr< SharedPtr< U > > &queueB)
 Compares queues of pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< SCG::Stack< T > > &stackA, const SharedPtr< SCG::Stack< U > > &stackB)
 Compares stacks of non-pointers. More...
 
template<typename T , typename U >
static bool AreEqual (const SharedPtr< SCG::Stack< SharedPtr< T > > > &stackA, const SharedPtr< SCG::Stack< SharedPtr< U > > > &stackB)
 Compares stacks of pointers. More...
 
template<typename K , typename U >
static bool AreEqual (const SharedPtr< SCG::SortedDictionary< K, U >> &dictA, const SharedPtr< SCG::SortedDictionary< K, U >> &dictB)
 Compares sorted dictionaries of non-pointer mapped types. More...
 
template<typename K , typename U >
static bool AreEqual (const SharedPtr< SCG::SortedDictionary< K, SharedPtr< U > >> &dictA, const SharedPtr< SCG::SortedDictionary< K, SharedPtr< U > >> &dictB)
 Compares sorted dictionaries of pointer mapped types. More...
 
template<typename K1 , typename U1 , typename K2 , typename U2 >
static bool AreEqual (const SharedPtr< SCG::SortedDictionary< K1, U1 >> &dictA, const SharedPtr< SCG::SortedDictionary< K2, U2 >> &dictB)
 Compares sorted dictionaries of different types. More...
 
template<typename K , typename U >
static bool AreEqual (const SharedPtr< SCG::SortedList< K, U >> &dictA, const SharedPtr< SCG::SortedList< K, U >> &dictB)
 Compares sorted lists of non-pointer mapped types. More...
 
template<typename K , typename U >
static bool AreEqual (const SharedPtr< SCG::SortedList< K, SharedPtr< U > >> &dictA, const SharedPtr< SCG::SortedList< K, SharedPtr< U > >> &dictB)
 Compares sorted lists of pointer mapped types. More...
 
template<typename K1 , typename U1 , typename K2 , typename U2 >
static bool AreEqual (const SharedPtr< SCG::SortedList< K1, U1 >> &dictA, const SharedPtr< SCG::SortedList< K2, U2 >> &dictB)
 Compares sorted lists of different types. More...
 
static bool AreEqual (const System::Collections::Specialized::StringCollectionPtr &arrA, const System::Collections::Specialized::StringCollectionPtr &arrB)
 Compares string collections. More...
 
template<typename T , typename U >
static bool AreEqual (const System::SharedPtr< SCG::IEnumerable< T > > &et, const System::SharedPtr< SCG::IEnumerable< U > > &eu)
 Compares IEnumerable instances. More...
 
template<typename T >
static bool AbstractEqual (SCG::ICollection< T > *const collA, SCG::ICollection< T > *const collB)
 Compares two collections of unknown type. More...
 

Detailed Description

Service structure providing interface to compare collections.

Member Function Documentation

◆ AbstractEqual()

template<typename T >
static bool System::TestCompare::AbstractEqual ( SCG::ICollection< T > *const  collA,
SCG::ICollection< T > *const  collB 
)
inlinestatic

Compares two collections of unknown type.

Template Parameters
TCollection element type.
Parameters
collALHS collection.
collBRHS collection.
Returns
true if collections match (e. g. both are null), or if sizes match and elements match, false otherwise.

◆ AreEqual() [1/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< Array< T >> &  arrA,
const SharedPtr< Array< U >> &  arrB 
)
inlinestatic

Compares arrays of non-pointers.

Template Parameters
TFirst array element type.
USecond array element type.
Parameters
arrALHS array.
arrBRHS array.
Returns
true if arrays sizes and data match, false otherwise.

◆ AreEqual() [2/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< Array< SharedPtr< T >>> &  arrA,
const SharedPtr< Array< SharedPtr< U >>> &  arrB 
)
inlinestatic

Compares arrays of pointers.

Template Parameters
TFirst array pointee type.
USecond array pointee type.
Parameters
arrALHS array.
arrBRHS array.
Returns
true if arrays sizes and objects match, false otherwise.

◆ AreEqual() [3/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::List< T > > &  listA,
const SharedPtr< SCG::List< U > > &  listB 
)
inlinestatic

Compares lists of non-pointers.

Template Parameters
TFirst list element type.
USecond list element type.
Parameters
listALHS list.
listBRHS list.
Returns
true if sizes and data match, false otherwise.

◆ AreEqual() [4/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::List< SharedPtr< T > > > &  listA,
const SharedPtr< SCG::List< SharedPtr< U > > > &  listB 
)
inlinestatic

Compares lists of pointers.

Template Parameters
TFirst list pointee type.
USecond list pointee type.
Parameters
listALHS list.
listBRHS list.
Returns
true if lists sizes and objects match, false otherwise.

◆ AreEqual() [5/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::List< T > > &  listA,
const System::ArrayPtr< U > &  arrB 
)
inlinestatic

Compares lists with arrays in non-pointers elements case.

Template Parameters
TList element type.
UArray element type.
Parameters
listAList.
arrBArray.
Returns
true if sizes and data match, false otherwise.

◆ AreEqual() [6/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const System::ArrayPtr< T > &  arrA,
const SharedPtr< SCG::List< U > > &  listB 
)
inlinestatic

Compares lists with arrays in non-pointers elements case.

Template Parameters
TArray element type.
UList element type.
Parameters
arrAArray.
listBList.
Returns
true if sizes and data match, false otherwise.

◆ AreEqual() [7/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const System::ArrayPtr< SharedPtr< T > > &  arr,
const SharedPtr< SCG::List< SharedPtr< U > > > &  list 
)
inlinestatic

Compares lists with arrays in pointers elements case.

Template Parameters
TArray pointee type.
UList pointee type.
Parameters
arrArray.
listList.
Returns
true if sizes and objects match, false otherwise.

◆ AreEqual() [8/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::List< SharedPtr< T > > > &  list,
const System::ArrayPtr< SharedPtr< U > > &  arr 
)
inlinestatic

Compares lists with arrays in pointers elements case.

Template Parameters
TList pointee type.
UArray pointee type.
Parameters
listList.
arrArray.
Returns
true if sizes and objects match, false otherwise.

◆ AreEqual() [9/25]

template<typename K , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::Dictionary< K, U > > &  dictA,
const SharedPtr< SCG::Dictionary< K, U > > &  dictB 
)
inlinestatic

Compares dictionaries of non-pointer mapped types.

Template Parameters
KKey type.
UMapped type.
Parameters
dictALHS dictionary.
dictBRHS dictionary.
Returns
true if dictionaries sizes and data match, false otherwise.

◆ AreEqual() [10/25]

template<typename K , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::Dictionary< K, SharedPtr< U > > > &  dictA,
const SharedPtr< SCG::Dictionary< K, SharedPtr< U > > > &  dictB 
)
inlinestatic

Compares dictionaries of pointer mapped types.

Template Parameters
KKey type.
UMapped pointee type.
Parameters
dictALHS dictionary.
dictBRHS dictionary.
Returns
true if dictionaries sizes and data match, false otherwise.

◆ AreEqual() [11/25]

template<typename K1 , typename U1 , typename K2 , typename U2 >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::Dictionary< K1, U1 > > &  dictA,
const SharedPtr< SCG::Dictionary< K2, U2 > > &  dictB 
)
inlinestatic

Compares dictionaries of different types.

Template Parameters
K1LHS dictionary key type.
U1LHS dictionary mapped type.
K2RHS dictionary key type.
U2RHS dictionary mapped type.
Parameters
dictALHS dictionary.
dictBRHS dictionary.
Returns
Always returns false as type conversion is forbidden here.

◆ AreEqual() [12/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::HashSet< T > > &  containerPtrA,
const SharedPtr< SCG::HashSet< U > > &  containerPtrB 
)
inlinestatic

Compares hashsets of non-pointers.

Template Parameters
TFirst hashset element type.
USecond hashset element type.
Parameters
containerPtrALHS hashset.
containerPtrBRHS hashset.
Returns
true if hashsets sizes and data match, false otherwise.

◆ AreEqual() [13/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::HashSet< SharedPtr< T > > > &  contA,
const SharedPtr< SCG::HashSet< SharedPtr< U > > > &  contB 
)
inlinestatic

Compares hashsets of pointers.

Template Parameters
TFirst hashset pointee type.
USecond hashset pointee type.
Parameters
contALHS hashset.
contBRHS hashset.
Returns
true if hashsets sizes and data match, false otherwise.

◆ AreEqual() [14/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SCG::QueuePtr< T > &  queueA,
const SCG::QueuePtr< U > &  queueB 
)
inlinestatic

Compares queues of non-pointers.

Template Parameters
TFirst queue element type.
USecond queue element type.
Parameters
queueALHS queue.
queueBRHS queue.
Returns
true if queues sizes and data match, false otherwise.

◆ AreEqual() [15/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SCG::QueuePtr< SharedPtr< T > > &  queueA,
const SCG::QueuePtr< SharedPtr< U > > &  queueB 
)
inlinestatic

Compares queues of pointers.

Template Parameters
TFirst queue pointee type.
USecond queue pointee type.
Parameters
queueALHS queue.
queueBRHS queue.
Returns
true if queues sizes and data match, false otherwise.

◆ AreEqual() [16/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::Stack< T > > &  stackA,
const SharedPtr< SCG::Stack< U > > &  stackB 
)
inlinestatic

Compares stacks of non-pointers.

Template Parameters
TFirst stack element type.
USecond stack element type.
Parameters
stackALHS stack.
stackBRHS stack.
Returns
true if stacks sizes and data match, false otherwise.

◆ AreEqual() [17/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::Stack< SharedPtr< T > > > &  stackA,
const SharedPtr< SCG::Stack< SharedPtr< U > > > &  stackB 
)
inlinestatic

Compares stacks of pointers.

Template Parameters
TFirst stack pointee type.
USecond stack pointee type.
Parameters
stackALHS stack.
stackBRHS stack.
Returns
true if stacks sizes and data match, false otherwise.

◆ AreEqual() [18/25]

template<typename K , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::SortedDictionary< K, U >> &  dictA,
const SharedPtr< SCG::SortedDictionary< K, U >> &  dictB 
)
inlinestatic

Compares sorted dictionaries of non-pointer mapped types.

Template Parameters
KKey type.
UMapped type.
Parameters
dictALHS dictionary.
dictBRHS dictionary.
Returns
true if dictionaries sizes and data match, false otherwise.

◆ AreEqual() [19/25]

template<typename K , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::SortedDictionary< K, SharedPtr< U > >> &  dictA,
const SharedPtr< SCG::SortedDictionary< K, SharedPtr< U > >> &  dictB 
)
inlinestatic

Compares sorted dictionaries of pointer mapped types.

Template Parameters
KKey type.
UMapped pointee type.
Parameters
dictALHS dictionary.
dictBRHS dictionary.
Returns
true if dictionaries sizes and data match, false otherwise.

◆ AreEqual() [20/25]

template<typename K1 , typename U1 , typename K2 , typename U2 >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::SortedDictionary< K1, U1 >> &  dictA,
const SharedPtr< SCG::SortedDictionary< K2, U2 >> &  dictB 
)
inlinestatic

Compares sorted dictionaries of different types.

Template Parameters
K1LHS dictionary key type.
U1LHS dictionary mapped type.
K2RHS dictionary key type.
U2RHS dictionary mapped type.
Parameters
dictALHS dictionary.
dictBRHS dictionary.
Returns
Always returns false as type conversion is forbidden here.

◆ AreEqual() [21/25]

template<typename K , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::SortedList< K, U >> &  dictA,
const SharedPtr< SCG::SortedList< K, U >> &  dictB 
)
inlinestatic

Compares sorted lists of non-pointer mapped types.

Template Parameters
KKey type.
UMapped type.
Parameters
dictALHS list.
dictBRHS list.
Returns
true if lists sizes and data match, false otherwise.

◆ AreEqual() [22/25]

template<typename K , typename U >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::SortedList< K, SharedPtr< U > >> &  dictA,
const SharedPtr< SCG::SortedList< K, SharedPtr< U > >> &  dictB 
)
inlinestatic

Compares sorted lists of pointer mapped types.

Template Parameters
KKey type.
UMapped pointee type.
Parameters
dictALHS list.
dictBRHS list.
Returns
true if lists sizes and data match, false otherwise.

◆ AreEqual() [23/25]

template<typename K1 , typename U1 , typename K2 , typename U2 >
static bool System::TestCompare::AreEqual ( const SharedPtr< SCG::SortedList< K1, U1 >> &  dictA,
const SharedPtr< SCG::SortedList< K2, U2 >> &  dictB 
)
inlinestatic

Compares sorted lists of different types.

Template Parameters
K1LHS list key type.
U1LHS list mapped type.
K2RHS list key type.
U2RHS list mapped type.
Parameters
dictALHS list.
dictBRHS list.
Returns
Always returns false as type conversion is forbidden here.

◆ AreEqual() [24/25]

static bool System::TestCompare::AreEqual ( const System::Collections::Specialized::StringCollectionPtr arrA,
const System::Collections::Specialized::StringCollectionPtr arrB 
)
inlinestatic

Compares string collections.

Parameters
arrALHS collection.
arrBRHS collection.
Returns
True if sizes and data match, false otherwise.

◆ AreEqual() [25/25]

template<typename T , typename U >
static bool System::TestCompare::AreEqual ( const System::SharedPtr< SCG::IEnumerable< T > > &  et,
const System::SharedPtr< SCG::IEnumerable< U > > &  eu 
)
inlinestatic

Compares IEnumerable instances.

Parameters
etLHS enumerable object.
euRHS enumerable object.
Returns
True if sizes and data match, false otherwise.