public void TestAddingElementAfterRemoveKeyValuePairAtFreeIndex() { var dictionary = new ManualDictionary <int, string>(); dictionary.Add(1, "a"); dictionary.Add(2, "b"); dictionary.Add(10, "c"); dictionary.Add(11, "c"); dictionary.Add(12, "c"); Assert.True(dictionary.ContainsKey(10)); Assert.True(dictionary.Remove(10)); Assert.False(dictionary.Remove(13)); Assert.False(dictionary.Remove(33)); dictionary.Add(3, "b"); var enumerator = dictionary.GetEnumerator(); Assert.True(enumerator.MoveNext()); Assert.Equal(11, enumerator.Current.Key); Assert.Equal("c", enumerator.Current.Value); Assert.True(enumerator.MoveNext()); Assert.Equal(1, enumerator.Current.Key); Assert.Equal("a", enumerator.Current.Value); Assert.True(enumerator.MoveNext()); Assert.Equal(12, enumerator.Current.Key); Assert.Equal("c", enumerator.Current.Value); Assert.True(enumerator.MoveNext()); Assert.Equal(2, enumerator.Current.Key); Assert.Equal("b", enumerator.Current.Value); Assert.True(enumerator.MoveNext()); Assert.Equal(3, enumerator.Current.Key); Assert.Equal("b", enumerator.Current.Value); Assert.False(enumerator.MoveNext()); Assert.Equal(new[] { 11, 1, 12, 2, 3 }, dictionary.Keys); }
public void AddNewElementsInDictionaryAndTestKeysProperty() { var dictionary = new ManualDictionary <int, string>(); dictionary.Add(1, "a"); dictionary.Add(2, "b"); dictionary.Add(10, "c"); var enumerator = dictionary.GetEnumerator(); Assert.True(enumerator.MoveNext()); Assert.Equal(10, enumerator.Current.Key); Assert.Equal("c", enumerator.Current.Value); Assert.True(enumerator.MoveNext()); Assert.Equal(1, enumerator.Current.Key); Assert.Equal("a", enumerator.Current.Value); Assert.True(enumerator.MoveNext()); Assert.Equal(2, enumerator.Current.Key); Assert.Equal("b", enumerator.Current.Value); Assert.False(enumerator.MoveNext()); Assert.Equal(new[] { 10, 1, 2 }, dictionary.Keys); }
public void SetNewElementsInDictionary() { var dictionary = new ManualDictionary <int, string>(); dictionary[1] = "a"; dictionary.Add(2, "b"); dictionary.Add(10, "c"); var enumerator = dictionary.GetEnumerator(); Assert.True(enumerator.MoveNext()); Assert.Equal(new KeyValuePair <int, string>(10, "c"), enumerator.Current); Assert.Equal(10, enumerator.Current.Key); Assert.Equal("c", enumerator.Current.Value); Assert.True(enumerator.MoveNext()); Assert.Equal(1, enumerator.Current.Key); Assert.Equal("a", enumerator.Current.Value); Assert.True(enumerator.MoveNext()); Assert.Equal(2, enumerator.Current.Key); Assert.Equal("b", enumerator.Current.Value); Assert.False(enumerator.MoveNext()); }