public void When_clearing_dictionary() { EasyDictionary <string, Person> dic = new EasyDictionary <string, Person>(p => p.Id) { new Person("A", 1), new Person("B", 2) }; dic.ShouldNotBeNull(); dic.Count.ShouldBe(2); dic.ContainsKey("A").ShouldBeTrue(); dic.ContainsKey("B").ShouldBeTrue(); dic.Clear(); dic.Count.ShouldBe(0); dic.ContainsKey("A").ShouldBeFalse(); dic.ContainsKey("B").ShouldBeFalse(); }
public void When_using_as_collection() { var p1 = new Person("A", 1); var p2 = new Person("B", 2); var comparer = StringComparer.OrdinalIgnoreCase; Func <Person, string> selector = p => p.Id; ICollection <Person> dic = new EasyDictionary <string, Person>( selector, 10, comparer) { p1, p2 }; dic.ShouldNotBeNull(); dic.Count.ShouldBe(2); dic.Contains(p1).ShouldBeTrue(); dic.Contains(p2).ShouldBeTrue(); var p3 = new Person("C", 3); dic.Add(p3); dic.Contains(p3).ShouldBeTrue(); dic.Remove(p1).ShouldBeTrue(); dic.Count.ShouldBe(2); dic.Contains(p1).ShouldBeFalse(); dic.Clear(); dic.Count.ShouldBe(0); }