public void SortedArrayKeyList_can_allow_duplicates() { var a = new CKSortedArrayKeyList<int, string>( i => i.ToString() ); a.AddRangeArray( 1, 10, 100, 100, 1000, 10000, 2, 20, 3, 30, 100, 46, 56 ); CheckList( a, 1, 10, 100, 1000, 10000, 2, 20, 3, 30, 46, 56 ); Assert.That( a.IndexOf( 1 ), Is.EqualTo( 0 ) ); Assert.That( a.IndexOf( 2 ), Is.EqualTo( 5 ) ); Assert.That( a.IndexOf( 3 ), Is.EqualTo( 7 ) ); Assert.That( a.KeyCount( "100" ), Is.EqualTo( 1 ) ); object o; o = "2"; Assert.That( a.IndexOf( o ), Is.EqualTo( 5 ) ); o = 2; Assert.That( a.IndexOf( o ), Is.EqualTo( 5 ) ); o = null; Assert.That( a.IndexOf( o ), Is.EqualTo( Int32.MinValue ) ); o = new ClassToTest( "A" ); Assert.That( a.IndexOf( o ), Is.EqualTo( Int32.MinValue ) ); o = "42"; Assert.That( a.Contains( o ), Is.False ); a.Remove( "10" ); Assert.That( a.KeyCount( "10" ), Is.EqualTo( 0 ) ); CheckList( a, 1, 100, 1000, 10000, 2, 20, 3, 30, 46, 56 ); a.Remove( "20" ); CheckList( a, 1, 100, 1000, 10000, 2, 3, 30, 46, 56 ); a.Remove( "100" ); Assert.That( a.KeyCount( "100" ), Is.EqualTo( 0 ) ); CheckList( a, 1, 1000, 10000, 2, 3, 30, 46, 56 ); Assert.That( a.Remove( "Nothing" ), Is.False ); }
public void SortedArrayKeyList_can_allow_duplicates() { var a = new CKSortedArrayKeyList <int, string>(i => i.ToString()); a.AddRangeArray(1, 10, 100, 100, 1000, 10000, 2, 20, 3, 30, 100, 46, 56); CheckList(a, 1, 10, 100, 1000, 10000, 2, 20, 3, 30, 46, 56); Assert.That(a.IndexOf(1), Is.EqualTo(0)); Assert.That(a.IndexOf(2), Is.EqualTo(5)); Assert.That(a.IndexOf(3), Is.EqualTo(7)); Assert.That(a.KeyCount("100"), Is.EqualTo(1)); object o; o = "2"; Assert.That(a.IndexOf(o), Is.EqualTo(5)); o = 2; Assert.That(a.IndexOf(o), Is.EqualTo(5)); o = null; Assert.That(a.IndexOf(o), Is.EqualTo(Int32.MinValue)); o = new ClassToTest("A"); Assert.That(a.IndexOf(o), Is.EqualTo(Int32.MinValue)); o = "42"; Assert.That(a.Contains(o), Is.False); a.Remove("10"); Assert.That(a.KeyCount("10"), Is.EqualTo(0)); CheckList(a, 1, 100, 1000, 10000, 2, 20, 3, 30, 46, 56); a.Remove("20"); CheckList(a, 1, 100, 1000, 10000, 2, 3, 30, 46, 56); a.Remove("100"); Assert.That(a.KeyCount("100"), Is.EqualTo(0)); CheckList(a, 1, 1000, 10000, 2, 3, 30, 46, 56); Assert.That(a.Remove("Nothing"), Is.False); }
public void SortedArrayKeyList_can_allow_duplicates() { var a = new CKSortedArrayKeyList <int, string>(i => i.ToString()); a.AddRangeArray(1, 10, 100, 100, 1000, 10000, 2, 20, 3, 30, 100, 46, 56); CheckList(a, 1, 10, 100, 1000, 10000, 2, 20, 3, 30, 46, 56); a.IndexOf(1).Should().Be(0); a.IndexOf(2).Should().Be(5); a.IndexOf(3).Should().Be(7); a.KeyCount("100").Should().Be(1); object o; o = "2"; a.IndexOf(o).Should().Be(5); o = 2; a.IndexOf(o).Should().Be(5); o = null; a.IndexOf(o).Should().Be(Int32.MinValue); o = new ClassToTest("A"); a.IndexOf(o).Should().Be(Int32.MinValue); o = "42"; a.Contains(o).Should().BeFalse(); a.Remove("10"); a.KeyCount("10").Should().Be(0); CheckList(a, 1, 100, 1000, 10000, 2, 20, 3, 30, 46, 56); a.Remove("20"); CheckList(a, 1, 100, 1000, 10000, 2, 3, 30, 46, 56); a.Remove("100"); a.KeyCount("100").Should().Be(0); CheckList(a, 1, 1000, 10000, 2, 3, 30, 46, 56); a.Remove("Nothing").Should().BeFalse(); }