public void TestTreeBimapDictionaryIndexerSetNotExistingValue() { var bimap = new TreeBimap <int, int>(); Fill(bimap, x => x, y => y); BimapDictionaryIndexerSetNotExistingValue(bimap); }
public void TestTreeBimapDictionaryIndexer() { var bimap = new TreeBimap <int, int>(); Fill(bimap, x => x, y => y); DictionaryIndexer(bimap); AssertBimapDictionaryIndexer(bimap); }
public void TestTreeBimapCollectionOperations() { var bimap = new TreeBimap <int, Order>(new OrderComparer()); bimap.Fill(x => new KeyValuePair <int, Order>(x, new Order { Id = x })); bimap.CollectionOperations <KeyValuePair <int, Order> >(1000); }
public void TestTreeBimapDictionaryOperations() { var bimap = new TreeBimap <Order, Bill>(new OrderComparer(), new BillComparer()); bimap.DictionaryOperations <Order, Bill>(x => new Order { Id = x }, y => new Bill { Id = y }, new BillEqualityComparer().Equals); }
public void TestTreeBiampColletionRemove() { var bimap = new TreeBimap <Order, Bill>(new OrderComparer(), new BillComparer()); Fill(bimap, x => new Order { Id = x }, y => new Bill { Id = y }); CollectionRemove(bimap); }
public void TestTreeBimapConstructor() { var treeBimap1 = new TreeBimap <Order, Bill>(new OrderComparer(), new BillComparer()); BimapOperation(treeBimap1, x => new Order { Id = x }, y => new Bill { Id = y }, new OrderEqualityComparer(), new BillEqualityComparer()); var treeBimap2 = new TreeBimap <Order, Bill>((x1, x2) => x1.Id - x2.Id, (y1, y2) => y1.Id - y2.Id); BimapOperation(treeBimap2, x => new Order { Id = x }, y => new Bill { Id = y }, new OrderEqualityComparer(), new BillEqualityComparer()); var treeBimap3 = new TreeBimap <int, int>(); BimapOperation(treeBimap3, x => x, y => y, EqualityComparer <int> .Default, EqualityComparer <int> .Default); var treeBimap4 = new TreeBimap <Order, int>((x1, x2) => x1.Id - x2.Id); BimapOperation(treeBimap4, x => new Order { Id = x }, y => y, new OrderEqualityComparer(), EqualityComparer <int> .Default); var treeBimap5 = new TreeBimap <int, Order>((x1, x2) => x1.Id - x2.Id); BimapOperation(treeBimap5, x => x, y => new Order { Id = y }, EqualityComparer <int> .Default, new OrderEqualityComparer()); var treeBimap6 = new TreeBimap <Order, int>(new OrderComparer()); BimapOperation(treeBimap6, x => new Order { Id = x }, y => y, new OrderEqualityComparer(), EqualityComparer <int> .Default); var treeBimap7 = new TreeBimap <int, Order>(new OrderComparer()); BimapOperation(treeBimap7, x => x, y => new Order { Id = y }, EqualityComparer <int> .Default, new OrderEqualityComparer()); }
public void TestTreeBimapComplexConstructor() { var hashBimap = new HashedBimap <Order, Bill>(new OrderEqualityComparer(), new BillEqualityComparer()); for (var i = 0; i < 10000; i++) { hashBimap.Add(new Order { Id = i }, new Bill { Id = i }); } var treeBimap = new TreeBimap <Order, Bill>(hashBimap, (x1, x2) => x1.Id - x2.Id, (y1, y2) => y1.Id - y2.Id); for (var i = 0; i < 10000; i++) { Assert.True(treeBimap.ContainsKey(new Order { Id = i })); Assert.True(treeBimap.ContainsValue(new Bill { Id = i })); Assert.True(((ICollection <KeyValuePair <Order, Bill> >)treeBimap).Contains(new KeyValuePair <Order, Bill>(new Order { Id = i }, new Bill { Id = i }))); } var bimap2 = new HashedBimap <int, int>(); for (var i = 0; i < 10000; i++) { bimap2.Add(i, i + 1); } var treeBimap2 = new TreeBimap <int, int>(bimap2); for (var i = 0; i < 10000; i++) { Assert.True(treeBimap2.ContainsKey(i)); Assert.True(treeBimap2.ContainsValue(i + 1)); Assert.True(((ICollection <KeyValuePair <int, int> >)treeBimap2).Contains(new KeyValuePair <int, int>(i, i + 1))); } }