public void Search_NonExistingKey_ReturnsValue() { ImmutableHashTable <int, int> hashTable = ImmutableHashTable <int, int> .Empty; var value = hashTable.Search(1); Assert.Equal(0, value); }
public void Search_NonExistingType_ReturnsDefaultValue() { ImmutableHashTable <Type, int> hashTable = ImmutableHashTable <Type, int> .Empty; var value = hashTable.Search(typeof(int)); Assert.Equal(0, value); }
public void ImmutableHashTable_Add() { ImmutableHashTable <ReferenceInt, int> hashTable = ImmutableHashTable <ReferenceInt, int> .Empty; for (var i = 0; i < N; i++) { hashTable = hashTable.Add(_mapping[i], i); } }
public void Search_ExistingType_ReturnsValue() { ImmutableHashTable <Type, int> hashTable = ImmutableHashTable <Type, int> .Empty; hashTable = hashTable.Add(typeof(int), 42); var value = hashTable.Search(typeof(int)); Assert.Equal(42, value); }
public void Search_ExistingKey_ReturnsValue() { ImmutableHashTable <int, int> hashTable = ImmutableHashTable <int, int> .Empty; hashTable = hashTable.Add(1, 42); var value = hashTable.Search(1); Assert.Equal(42, value); }
public void AddValues_CausingTableResize_PreservesExistingValues() { ImmutableHashTable <int, int> hashTable = ImmutableHashTable <int, int> .Empty; hashTable = hashTable.Add(2, 2); hashTable = hashTable.Add(4, 4); hashTable = hashTable.Add(8, 8); var value = hashTable.Search(2); Assert.Equal(2, value); }
public void Setup() { _mapping = new ReferenceInt[N]; for (int i = 0; i < _mapping.Length; i++) { _mapping[i] = new ReferenceInt(i); } _hashTable = ImmutableHashTable <ReferenceInt, int> .Empty; for (var i = 0; i < N; i++) { _hashTable = _hashTable.Add(_mapping[i], i); } }
public void Search_SameHashCode_ReturnsValue() { ImmutableHashTable <FooWithSameHashCode, int> hashTable = ImmutableHashTable <FooWithSameHashCode, int> .Empty; var firstKey = new FooWithSameHashCode(42); var secondKey = new FooWithSameHashCode(84); hashTable = hashTable.Add(firstKey, 42); hashTable = hashTable.Add(secondKey, 84); var value = hashTable.Search(firstKey); Assert.Equal(42, value); }