[squeak-dev] The Trunk: CollectionsTests-mt.310.mcz

commits at source.squeak.org commits at source.squeak.org
Tue May 14 07:45:31 UTC 2019


Marcel Taeumel uploaded a new version of CollectionsTests to project The Trunk:
http://source.squeak.org/trunk/CollectionsTests-mt.310.mcz

==================== Summary ====================

Name: CollectionsTests-mt.310
Author: mt
Time: 14 May 2019, 9:45:29.021441 am
UUID: 7250e350-3e87-c64c-950e-8a5f794794d1
Ancestors: CollectionsTests-mt.309

Adds more tests for #any:, #any:as:, and #take:.

=============== Diff against CollectionsTests-mt.309 ===============

Item was changed:
  ----- Method: CollectionTest>>testAny (in category 'tests') -----
  testAny
  
+ 	{
+ 		"{ numberOfElements. originalCollection }"
+ 		{ 2. Array withAll: #(1 2 3 4) }.
+ 		{ 4. Array withAll: #(1 2 3 4) }.
+ 		{ 0. Array withAll: #(1 2 3 4) }.
+ 		{ 2. OrderedCollection withAll: #(1 2 3 4) }.
+ 		{ 2. Dictionary withAll: { #apple -> #red. #plum -> #purple. #peach -> #orange } }.			
+ 		{ 2. Set withAll: #(1 2 3 4) }.
+ 		{ 2. Bag withAll: #(1 1 2 2) }.
+ 	} do: [:spec | | result |
+ 		result := spec second any: spec first.
+ 		self
+ 			assert: (spec second includesAllOf: result);
+ 			assert: spec first equals: result size;
+ 			assert: spec second class equals: result class].!
- 	self
- 		assert: #(1 2) equals: (#(1 2 3 4) any: 2);
- 		assert: #(1 2 3 4) equals: (#(1 2 3 4) any: 4);
- 		should: [#(1 2 3 4) any: 5] raise: Error.!

Item was changed:
  ----- Method: CollectionTest>>testAnyAs (in category 'tests') -----
  testAnyAs
  
+ 	{
+ 		"{ numberOfElements. originalCollection }"
+ 		{ 2. 2. OrderedCollection. Array withAll: #(1 2 3 4) }.
+ 		{ 4. 1. Set. Array withAll: #(1 1 1 1) }.
+ 		{ 4. 4. Bag. Array withAll: #(1 1 1 1) }.
+ 		{ 2. 2. Dictionary. Array withAll: { #apple -> #red. #plum -> #purple. #peach -> #orange } }.			
+ 	} do: [:spec | | result |
+ 		result := spec fourth any: spec first as: spec third.
+ 		
+ 		"For Array vs. Dictionary, #includesAllOf: does not work because it would just iterate the values in the dictionary."
+ 		(result associationsDo: [:each | self assert: (spec fourth includes: each)]).
+ 		
+ 		self
+ 			assert: spec second equals: result size;
+ 			assert: spec third equals: result class].!
- 	self
- 		assert: ((#(1 2 3 4) any: 2 as: OrderedCollection) isKindOf: OrderedCollection);
- 		assert: ((#(1 1 2 3 4) any: 2 as: Set) isKindOf: Set);
- 		assert: 1 equals: (#(1 1 1 1) any: 3 as: Set) size.!

Item was added:
+ ----- Method: CollectionTest>>testAnyError (in category 'tests') -----
+ testAnyError
+ 
+ 	self
+ 		should: [#(1 2 3 4) any: 5] raise: Error; "Too small."
+ 		should: [#(1 2 3 4) any: -1] raise: Error. "Bad argument."!

Item was added:
+ ----- Method: CollectionTest>>testAnyStreams (in category 'tests') -----
+ testAnyStreams
+ 
+ 	{
+ 		"{ numberOfElements. originalCollection }"
+ 		{ 2. Array withAll: #(1 2 3 4) }.
+ 		{ 4. Array withAll: #(1 2 3 4) }.
+ 		{ 0. Array withAll: #(1 2 3 4) }.
+ 		{ 2. OrderedCollection withAll: #(1 2 3 4) }.
+ 	} do: [:spec | | result |
+ 		result := spec second readStream any: spec first.
+ 		self
+ 			assert: (spec second includesAllOf: result);
+ 			assert: spec first equals: result size;
+ 			assert: spec second class equals: result class].!

Item was changed:
  ----- Method: CollectionTest>>testTake (in category 'tests') -----
  testTake
  
  	self
+ 		assert: 2 equals: (#(1 2) take: 5) size;
+ 		assert: 2 equals: (#(1 2) readStream take: 5) size;
+ 		should: [#(1 2) take: -1] raise: Error.!
- 		assert: #(1 2) equals: (#(1 2 3 4) take: 2);
- 		assert: #(1 2) equals: (#(1 2) take: 5).!



More information about the Squeak-dev mailing list