Andreas Raab uploaded a new version of Tests to project The Trunk:
http://source.squeak.org/trunk/Tests-ar.72.mcz==================== Summary ====================
Name: Tests-ar.72
Author: ar
Time: 7 April 2010, 9:50:12.201 am
UUID: 5e3419be-fa4d-814b-a1f6-af38961fac9f
Ancestors: Tests-ar.71
The previous fix for MCChangeNotificationTest was incomplete and based on flawed analysis. This one should do better.
=============== Diff against Tests-ar.71 ===============
Item was changed:
----- Method: MCChangeNotificationTest>>setUp (in category 'running') -----
setUp
+
+ "FIXME: Unregister Monticellomocks if it got created in another test
+ (for example MCMethodDefinitionTest may create it implicitly).
+ This avoids a nasty failure of MCChangeNotificationTest due to
+ some inconsistency about the package info registered with it.
+ If Monticellomocks was created earlier it will contain a 'regular'
+ PackageInfo instance but the test requires it to be an MCMockPackageInfo"
+ MCWorkingCopy registry
+ removeKey: (MCPackage new name: 'Monticellomocks')
+ ifAbsent:[].
+ PackageOrganizer default unregisterPackageNamed: 'Monticellomocks'.
+
workingCopy := MCWorkingCopy forPackage: self mockPackage.
+ !
- !
Item was changed:
----- Method: MCMethodDefinitionTest>>tearDown (in category 'running') -----
tearDown
self restoreMocks.
(MCWorkingCopy forPackage: (MCPackage named: 'FooBarBaz')) unregister.
self class compile: 'override ^ 1' classified: 'mocks'.
self ownPackage modified: isModified.
-
- "FIXME: Unregister Monticellomocks if it got created implicitly.
- This avoids a nasty failure of MCChangeNotificationTest due to
- some inconsistency about whether package names are case sensitive
- or not. They're treated as case insensitive in some name lookups but not
- in others; most importantly PackageOrganizer default treats package
- names as being case sensitive. The package created here is Monticellomocks
- (lower case mocks) and an instance of PackageInfo; the package expected
- in MCChangeNotificationTest is MonticelloMocks and an instance of
- MCMockPackageInfo. Since *that* lookup is case insensitive it can
- find Monticellomocks instead of MonticelloMocks and fail."
- PackageOrganizer default unregisterPackageNamed: 'Monticellomocks'.
!