compiler/tests/extras/PPCSetUpBeforeTearDownAfterResource.st
changeset 514 46dd1237b20a
parent 513 7b8093caf796
child 516 3b81c9e53352
--- a/compiler/tests/extras/PPCSetUpBeforeTearDownAfterResource.st	Fri Jul 31 09:35:15 2015 +0100
+++ b/compiler/tests/extras/PPCSetUpBeforeTearDownAfterResource.st	Fri Jul 31 14:07:31 2015 +0100
@@ -67,23 +67,38 @@
 !PPCSetUpBeforeTearDownAfterResource class methodsFor:'subclass creation'!
 
 for: aClass
-    ^ CachedResources at: aClass ifAbsentPut:[
-        | resourceMeta resourceClass |
+	^ CachedResources at: aClass ifAbsentPut:[
+		| resourceMeta resourceClass |
 
-        resourceMeta := Metaclass new.
-        resourceMeta setSuperclass: self class.
-        resourceMeta instSize: self class instSize.  
-        resourceClass := resourceMeta new.
-        resourceClass setSuperclass: self.
-        resourceClass instSize: self instSize.  
-        resourceClass testCaseClass: aClass.
-        resourceClass
-    ]
+		((Smalltalk respondsTo: #isSmalltalkX) and:[Smalltalk isSmalltalkX]) ifTrue:[
+			resourceMeta := Metaclass new.
+			resourceMeta setSuperclass: self class.
+			resourceMeta instSize: self class instSize.  
+			resourceClass := resourceMeta new.
+			resourceClass setSuperclass: self.
+			resourceClass instSize: self instSize.  
+		] ifFalse:[
+			" Assumes Pharo 5.0"
+			resourceMeta := Metaclass new.
+			resourceMeta
+				superclass: self class
+				withLayoutType: FixedLayout
+				slots: #().
+			resourceClass := resourceMeta new.
+			resourceClass superclass: self 
+				withLayoutType: FixedLayout
+				slots: #().			
+		].
+		resourceClass testCaseClass: aClass.
+		resourceClass
+	]
 
-    "Created: / 29-07-2015 / 16:17:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified (format): / 30-07-2015 / 07:48:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+	"Created: / 29-07-2015 / 16:17:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+	"Modified (format): / 30-07-2015 / 07:48:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+
 ! !
 
+
 !PPCSetUpBeforeTearDownAfterResource methodsFor:'setup & teardown'!
 
 setUp