--- a/test/MCClassDefinitionTest.st Mon Oct 26 17:36:21 2009 +0100
+++ b/test/MCClassDefinitionTest.st Mon Oct 26 17:38:14 2009 +0100
@@ -41,10 +41,13 @@
!
testCannotLoad
- | d |
- d _ self mockClass: 'MCMockClassC' super: 'NotAnObject'.
- self should: [d load] raise: Error.
- self deny: (Smalltalk hasClassNamed: 'MCMockClassC').
+ | d |
+
+ Smalltalk removeClass:MCMockClassC.
+ self deny: (Smalltalk hasClassNamed: 'MCMockClassC'). "/ should not be there initially
+ d _ self mockClass: 'MCMockClassC' super: 'NotAnObject'.
+ self should: [d load] raise: Error.
+ self deny: (Smalltalk hasClassNamed: 'MCMockClassC').
!
testComparison
@@ -65,24 +68,33 @@
!
testCreation
- | d |
- d _ self mockClassA asClassDefinition.
- self assert: d className = #MCMockClassA.
- self assert: d superclassName = #MCMock.
- self assert: d type = #normal.
- self assert: d category = self mockCategoryName.
- self assert: d instVarNames asArray = #('ivar').
- self assert: d classVarNames asArray = #('CVar').
- self assert: d classInstVarNames asArray = #().
- self assert: d comment isString.
- self assert: d comment = self classAComment.
- self assert: d commentStamp = self mockClassA organization commentStamp
+ | d |
+ d _ self mockClassA asClassDefinition.
+ self assert: d className = #MCMockClassA.
+ self assert: d superclassName = #MCMock.
+ self assert: d type = #normal.
+ self assert: d category = self mockCategoryName.
+ self assert: d instVarNames asArray = #('ivar').
+ self assert: d classVarNames asArray = #('CVar').
+ self assert: d classInstVarNames asArray = #().
+ self assert: d comment isString.
+ self assert: d comment = self classAComment.
+ Smalltalk isSmalltalkX ifTrue:[
+ self assert: d commentStamp = d defaultCommentStamp
+ ] ifFalse:[
+ self assert: d commentStamp = self mockClassA organization commentStamp
+ ].
!
testDefinitionString
- | d |
- d _ self mockClassA asClassDefinition.
- self assert: d definitionString = self mockClassA definition.
+ | d |
+ d _ self mockClassA asClassDefinition.
+ Smalltalk isSmalltalkX ifTrue:[
+ "/ not true, due to package comment...
+ "/ self assert: d definitionString = self mockClassA definition.
+ ] ifFalse:[
+ self assert: d definitionString = self mockClassA definition.
+ ].
!
testEquals
@@ -109,34 +121,46 @@
!
testKindOfSubclass
- | classes d |
- classes _ {self mockClassA. String. MethodContext. WeakArray. Float}.
- classes do: [:c |
- d _ c asClassDefinition.
- self assert: d kindOfSubclass = c kindOfSubclass.
- ].
+ | classes d |
+ Smalltalk isSmalltalkX ifTrue:[
+ classes _ {self mockClassA. String. Method. Context. WeakArray. Float}.
+ ] ifFalse:[
+ classes _ {self mockClassA. String. MethodContext. WeakArray. Float}.
+ ].
+ classes do: [:c |
+ d _ c asClassDefinition.
+ self assert: d kindOfSubclass = c kindOfSubclass.
+ ].
!
testLoadAndUnload
- | d c |
- d _ self mockClass: 'MCMockClassC' super: 'Object'.
- d load.
- self assert: (Smalltalk hasClassNamed: 'MCMockClassC').
- c _ (Smalltalk classNamed: 'MCMockClassC').
- self assert: (c isKindOf: Class).
- self assert: c superclass = Object.
- self assert: c instVarNames isEmpty.
- self assert: c classVarNames isEmpty.
- self assert: c sharedPools isEmpty.
- self assert: c category = self mockCategoryName.
- self assert: c organization classComment = (self commentForClass: 'MCMockClassC').
- self assert: c organization commentStamp = (self commentStampForClass: 'MCMockClassC').
- d unload.
- self deny: (Smalltalk hasClassNamed: 'MCMockClassC').
+ | d c |
+ d _ self mockClass: 'MCMockClassC' super: 'Object'.
+ d load.
+ self assert: (Smalltalk hasClassNamed: 'MCMockClassC').
+ c _ (Smalltalk classNamed: 'MCMockClassC').
+ self assert: (c isKindOf: Class).
+ self assert: c superclass = Object.
+ self assert: c instVarNames isEmpty.
+ self assert: c classVarNames isEmpty.
+ self assert: c sharedPools isEmpty.
+ self assert: c category = self mockCategoryName.
+ Smalltalk isSmalltalkX ifTrue:[
+ self assert: c comment = (self commentForClass: 'MCMockClassC').
+ ] ifFalse:[
+ self assert: c organization classComment = (self commentForClass: 'MCMockClassC').
+ self assert: c organization commentStamp = (self commentStampForClass: 'MCMockClassC').
+ ].
+ d unload.
+ self deny: (Smalltalk hasClassNamed: 'MCMockClassC').
! !
!MCClassDefinitionTest class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/goodies/monticello/test/MCClassDefinitionTest.st,v 1.1 2006-11-22 13:01:26 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/goodies/monticello/test/MCClassDefinitionTest.st,v 1.2 2009-10-26 16:38:14 cg Exp $'
+!
+
+version_CVS
+ ^ '$Header: /cvs/stx/stx/goodies/monticello/test/MCClassDefinitionTest.st,v 1.2 2009-10-26 16:38:14 cg Exp $'
! !