[squeak-dev] The Trunk: Tests-cmm.249.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Aug 14 18:58:54 UTC 2013


Chris Muller uploaded a new version of Tests to project The Trunk:
http://source.squeak.org/trunk/Tests-cmm.249.mcz

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

Name: Tests-cmm.249
Author: cmm
Time: 14 August 2013, 1:07:51.56 pm
UUID: b4ce241c-eaa5-4324-90aa-6f895203b47d
Ancestors: Tests-cmm.247

- Added test for new MCInfoProxy.

=============== Diff against Tests-nice.246 ===============

Item was added:
+ ----- Method: InstallerTest class>>suiteClass (in category 'as yet unclassified') -----
+ suiteClass
+ 	^ InstallerTestSuite!

Item was added:
+ TestSuite subclass: #InstallerTestSuite
+ 	instanceVariableNames: ''
+ 	classVariableNames: ''
+ 	poolDictionaries: ''
+ 	category: 'Tests-Installer-Core'!

Item was added:
+ ----- Method: InstallerTestSuite>>ensureTestMethods (in category 'initialize-release') -----
+ ensureTestMethods
+ 	"Ensure InstallerTest has test methods for each externally-loadable package defined by Installer.  By generating these methods, they don't have to be maintained separately."
+ 	^ (Installer methodsInCategory: 'external-packages') do:
+ 		[ : each | (InstallerTest canUnderstand: each) ifFalse:
+ 			[ InstallerTest 
+ 				compile:
+ 					(String streamContents:
+ 						[ : stream | stream
+ 							 nextPutAll: 'test'; nextPutAll: each;
+ 							 cr; tab;
+ 							 nextPutAll: 'Installer new merge: #'; nextPutAll: each ])
+ 				classified: '*generated' ] ]!

Item was added:
+ ----- Method: InstallerTestSuite>>initialize (in category 'initialize-release') -----
+ initialize
+ 	super initialize.
+ 	self ensureTestMethods!

Item was added:
+ ----- Method: MCWorkingCopyTest>>testInfoProxy (in category 'tests') -----
+ testInfoProxy
+ 	| latestSnapshot instanceCountBefore notificationReceived allAncestorsBefore |
+ 	<timeout: 10>
+ 	latestSnapshot := (1 to: 13)
+ 		inject: self snapshot
+ 		into: [ : snap : n | self change: #someMethod toReturn: n; snapshot ].
+ 	Smalltalk garbageCollect.
+ 	instanceCountBefore := MCVersionInfo instanceCount.
+ 	allAncestorsBefore := workingCopy ancestry allAncestors.
+ 	workingCopy stubAncestry.
+ 	repositoryGroup flushCache.
+ 	Smalltalk garbageCollect.
+ 	"We're only one less rather than three, because we're using an in-memory repository"
+ 	self assert: instanceCountBefore < MCVersionInfo instanceCount.
+ 	notificationReceived := false.
+ 	[ self assert: allAncestorsBefore = workingCopy ancestry allAncestors ]
+ 		on: MCProxyMaterialization
+ 		do:
+ 			[ : noti | notificationReceived := true.
+ 			noti defaultAction ].
+ 	self
+ 		 assert: notificationReceived ;
+ 		 assert: MCVersionInfo instanceCount >= instanceCountBefore.
+ 	"Very important to ensure saving does not save a truncated ancestry hierarchy."
+ 	workingCopy stubAncestry.
+ 	self change: #someMethod toReturn: 14; snapshot.
+ 	self assert: workingCopy ancestry ancestors anyOne allAncestors = allAncestorsBefore!



More information about the Squeak-dev mailing list