<div dir="ltr">Never mind, I've got an error about a connection timeout, thus retried, but it seems like it was superfluous...<br></div><div class="gmail_extra"><br><div class="gmail_quote">2014-09-19 23:18 GMT+02:00 <span dir="ltr"><<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">Nicolas Cellier uploaded a new version of CollectionsTests to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/CollectionsTests-nice.223.mcz" target="_blank">http://source.squeak.org/trunk/CollectionsTests-nice.223.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: CollectionsTests-nice.223<br>
Author: nice<br>
Time: 19 September 2014, 11:15:20.772 pm<br>
UUID: f1a61e56-790b-457a-95fe-b3e149a460fb<br>
Ancestors: CollectionsTests-nice.222<br>
<br>
Add some tests for sort functions support<br>
<br>
=============== Diff against CollectionsTests-nice.222 ===============<br>
<br>
Item was added:<br>
+ TestCase subclass: #ChainedSortFunctionTest<br>
+ instanceVariableNames: ''<br>
+ classVariableNames: ''<br>
+ poolDictionaries: ''<br>
+ category: 'CollectionsTests-Support'!<br>
<br>
Item was added:<br>
+ ----- Method: ChainedSortFunctionTest>>testEvaluation (in category 'tests') -----<br>
+ testEvaluation<br>
+<br>
+ | function |<br>
+ function := #first ascending , [:a | a at: 2] descending , #last ascending.<br>
+ "first different"<br>
+ self assert: (function value: #(1 2 3) value: #(2 2 3)).<br>
+ self deny: (function value: #(3 2 3) value: #(2 2 3)).<br>
+ "first the same"<br>
+ self assert: (function value: #(1 2 3) value: #(1 1 3)).<br>
+ self assert: (function value: #(1 2 2) value: #(1 1 3)).<br>
+ self assert: (function value: #(1 2 3) value: #(1 1 2)).<br>
+ self deny: (function value: #(1 2 3) value: #(1 3 3)).<br>
+ self deny: (function value: #(1 2 2) value: #(1 3 3)).<br>
+ self deny: (function value: #(1 2 3) value: #(1 3 2)).<br>
+ "first and second the same"<br>
+ self assert: (function value: #(1 2 3) value: #(1 2 3)).<br>
+ self assert: (function value: #(1 2 2) value: #(1 2 3)).<br>
+ self deny: (function value: #(1 2 4) value: #(1 2 3))!<br>
<br>
Item was added:<br>
+ TestCase subclass: #SortFunctionTest<br>
+ instanceVariableNames: ''<br>
+ classVariableNames: ''<br>
+ poolDictionaries: ''<br>
+ category: 'CollectionsTests-Support'!<br>
<br>
Item was added:<br>
+ ----- Method: SortFunctionTest>>testDirectionToggling (in category 'tests') -----<br>
+ testDirectionToggling<br>
+<br>
+ | function |<br>
+ function := #x ascending.<br>
+ self assert: (function value: 0 @ 2 value: 1 @ 1).<br>
+ self assert: (function value: 1 @ 2 value: 1 @ 1).<br>
+ self deny: (function value: 2 @ 2 value: 1 @ 1).<br>
+ function toggleDirection.<br>
+ self deny: (function value: 1 @ 2 value: 2 @ 1).<br>
+ self assert: (function value: 1 @ 2 value: 1 @ 1).<br>
+ self assert: (function value: 2 @ 2 value: 1 @ 1).<br>
+ function toggleDirection.<br>
+ self assert: (function value: 0 @ 2 value: 1 @ 1).<br>
+ self assert: (function value: 1 @ 2 value: 1 @ 1).<br>
+ self deny: (function value: 2 @ 2 value: 1 @ 1)!<br>
<br>
Item was added:<br>
+ ----- Method: SortFunctionTest>>testSingleArgBlock (in category 'tests') -----<br>
+ testSingleArgBlock<br>
+<br>
+ | function block |<br>
+ block := [:point | point x / point y].<br>
+ function := block ascending.<br>
+ self assert: (function value: 0 @ 2 value: 1 @ 1).<br>
+ self assert: (function value: 1 @ 2 value: 2 @ 4).<br>
+ self deny: (function value: 2 @ 2 value: 1 @ 2).<br>
+ function := block descending.<br>
+ self deny: (function value: 1 @ 2 value: 2 @ 1).<br>
+ self assert: (function value: 2 @ 2 value: 1 @ 1).<br>
+ self assert: (function value: 3 @ 2 value: 1 @ 1)!<br>
<br>
Item was added:<br>
+ ----- Method: SortFunctionTest>>testTwoArgBlock (in category 'tests') -----<br>
+ testTwoArgBlock<br>
+<br>
+ | function block |<br>
+ block :=<br>
+ [:a :b |<br>
+ a odd = b odd ifTrue: [0] ifFalse: [a odd ifTrue: [-1] ifFalse: [1]]].<br>
+ function := block ascending.<br>
+ self assert: (function value: 2 value: 4).<br>
+ self assert: (function value: 1 value: 3).<br>
+ self assert: (function value: 1 value: 4).<br>
+ self deny: (function value: -2 value: 1).<br>
+ function := block descending.<br>
+ self assert: (function value: 2 value: 4).<br>
+ self assert: (function value: 1 value: 3).<br>
+ self deny: (function value: 1 value: 4).<br>
+ self assert: (function value: -2 value: 1)!<br>
<br>
Item was added:<br>
+ ----- Method: SortFunctionTest>>testUnarySymbol (in category 'tests') -----<br>
+ testUnarySymbol<br>
+<br>
+ | function |<br>
+ function := #x ascending.<br>
+ self assert: (function value: 0 @ 2 value: 1 @ 1).<br>
+ self assert: (function value: 1 @ 2 value: 1 @ 1).<br>
+ self deny: (function value: 2 @ 2 value: 1 @ 1).<br>
+ function := #x descending.<br>
+ self deny: (function value: 1 @ 2 value: 2 @ 1).<br>
+ self assert: (function value: 1 @ 2 value: 1 @ 1).<br>
+ self assert: (function value: 2 @ 2 value: 1 @ 1)!<br>
<br>
Item was added:<br>
+ TestCase subclass: #TestSpaceshipOperator<br>
+ instanceVariableNames: ''<br>
+ classVariableNames: ''<br>
+ poolDictionaries: ''<br>
+ category: 'CollectionsTests-Support'!<br>
<br>
Item was added:<br>
+ ----- Method: TestSpaceshipOperator>>testFloats (in category 'tests') -----<br>
+ testFloats<br>
+<br>
+ | a b c d |<br>
+ a := 13.1.<br>
+ b := 18.9.<br>
+ c := 18.9.<br>
+ d := -7.2.<br>
+ self assert: (b <=> c) isZero.<br>
+ self assert: a <=> b = -1.<br>
+ self assert: b <=> a = 1.<br>
+ self assert: a <=> d = 1.<br>
+ self assert: d <=> a = -1!<br>
<br>
Item was added:<br>
+ ----- Method: TestSpaceshipOperator>>testStrings (in category 'tests') -----<br>
+ testStrings<br>
+<br>
+ | a b c d |<br>
+ a := 'xc'.<br>
+ b := 'xd'.<br>
+ c := 'xd'.<br>
+ d := 'xa'.<br>
+ self assert: (b <=> c) isZero.<br>
+ self assert: a <=> b = -1.<br>
+ self assert: b <=> a = 1.<br>
+ self assert: a <=> d = 1.<br>
+ self assert: d <=> a = -1!<br>
<br>
<br>
</div></div></blockquote></div><br></div>