--- a/RegressionTests__CollectionTests.st Sun May 08 02:22:20 2016 +0200
+++ b/RegressionTests__CollectionTests.st Thu May 12 16:50:10 2016 +0200
@@ -774,6 +774,39 @@
sorted := data copy heapSort:[:a :b| a < b].
self checkSorted:sorted with:checkBlock against:data.
].
+!
+
+testOrderedCollection08_addBefore
+ |col|
+
+ col := #( 1 2 3 4 5 ) asOrderedCollection.
+ col add:0 beforeIndex:1.
+ self assert:(col asArray = #(0 1 2 3 4 5)).
+
+ col := OrderedCollection new.
+ col add:10.
+ col add:0 beforeIndex:1.
+ self assert:(col asArray = #(0 10)).
+
+ col := OrderedCollection with:10.
+ col add:0 beforeIndex:1.
+ self assert:(col asArray = #(0 10)).
+
+ col := OrderedCollection new:1.
+ col add:10.
+ self assert:(col size == 1).
+ self assert:(col asArray = #(10)).
+ self assert:(col instVarNamed:'firstIndex') == 1.
+ self assert:(col instVarNamed:'lastIndex') == 1.
+
+ col add:0 beforeIndex:1.
+ self assert:(col size == 2).
+ self assert:(col instVarNamed:'firstIndex') == 1.
+ self assert:(col instVarNamed:'lastIndex') == 2.
+ self assert:(col asArray = #(0 10)).
+ "
+ self new testOrderedCollection08_addBefore
+ "
! !
!CollectionTests methodsFor:'tests-orderedDictionary'!
@@ -1201,6 +1234,35 @@
].
].
+ (Array with:Array OrderedCollection ByteArray WordArray IntegerArray)
+ do:[:cls |
+ a := cls withAll: #(10 20 30 40 50 60 70 80 90 100).
+
+ self assert:(a indexOf:110) == 0.
+ self assert:(a indexOf:10) == 1.
+ self assert:(a indexOf:20) == 2.
+ self assert:(a indexOf:30) == 3.
+ self assert:(a indexOf:40) == 4.
+ self assert:(a indexOf:50) == 5.
+ self assert:(a indexOf:60) == 6.
+ self assert:(a indexOf:70) == 7.
+ self assert:(a indexOf:80) == 8.
+ self assert:(a indexOf:90) == 9.
+ self assert:(a indexOf:100) == 10.
+
+ self assert:(a identityIndexOf:110) == 0.
+ self assert:(a identityIndexOf:10) == 1.
+ self assert:(a identityIndexOf:20) == 2.
+ self assert:(a identityIndexOf:30) == 3.
+ self assert:(a identityIndexOf:40) == 4.
+ self assert:(a identityIndexOf:50) == 5.
+ self assert:(a identityIndexOf:60) == 6.
+ self assert:(a identityIndexOf:70) == 7.
+ self assert:(a identityIndexOf:80) == 8.
+ self assert:(a identityIndexOf:90) == 9.
+ self assert:(a identityIndexOf:100) == 10.
+ ].
+
"Created: / 07-10-2011 / 13:11:36 / cg"
! !