Skip to content

Commit 203d08e

Browse files
author
Johan Brichau
committed
make class package work across all Pharo versions for generating test classes
1 parent edd9b01 commit 203d08e

File tree

5 files changed

+24
-23
lines changed

5 files changed

+24
-23
lines changed
Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,4 @@
11
accessing-code
22
defineSubClassOf: aSuperSymbol
33

4-
| class |
5-
class := SystemVersion current major >= 12
6-
ifTrue: [
7-
factory make: [ :aBuilder |
8-
aBuilder
9-
superclass: (Smalltalk at: aSuperSymbol);
10-
package: self category ] ]
11-
ifFalse: [
12-
factory
13-
newSubclassOf: (Smalltalk at: aSuperSymbol)
14-
instanceVariableNames: ''
15-
classVariableNames: 'classVarsString'
16-
category: self category ].
17-
environment
18-
addClass: class;
19-
addClass: class classSide.
20-
^ class
4+
^ self defineSubClassOf: aSuperSymbol inPackage: self category
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
accessing-code
2+
defineSubClassOf: aSuperSymbol inPackage: packageName
3+
4+
| class |
5+
class := SystemVersion current major >= 12
6+
ifTrue: [
7+
factory make: [ :aBuilder |
8+
aBuilder
9+
superclass: (Smalltalk at: aSuperSymbol);
10+
package: packageName ] ]
11+
ifFalse: [
12+
factory
13+
newSubclassOf: (Smalltalk at: aSuperSymbol)
14+
instanceVariableNames: ''
15+
classVariableNames: 'classVarsString'
16+
category: packageName ].
17+
environment
18+
addClass: class;
19+
addClass: class classSide.
20+
^ class

repository/Grease-Tests-Pharo-Slime.package/GRReSlimeTest.class/instance/testReferencesNotPortableClass.st

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ tests-block
22
testReferencesNotPortableClass
33

44
| class |
5-
class := self defineSubClassOf: #GRObject.
6-
class package: 'SomeCategory' tag: ''.
5+
class := self defineSubClassOf: #GRObject inPackage: 'SomeCategory'.
76
self compile: 'invalid ^ Semaphore new' in: class.
87
self compile: 'valid ^ GRObject new' in: class.
98
self

repository/Grease-Tests-Pharo-Slime.package/GRReSlimeTest.class/instance/testSubclassesNotPortableClass.st

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ tests-block
22
testSubclassesNotPortableClass
33

44
| class |
5-
class := self defineSubClassOf: #Mutex.
6-
class package: 'SomeCategory' tag: ''.
5+
class := self defineSubClassOf: #Mutex inPackage: 'SomeCategory'.
76
self
87
assertRule: GRSubclassesNotPortableClassRule
98
matches: { class }

repository/Grease-Tests-Pharo-Slime.package/GRReSlimeTest.class/instance/testUsesNotPortableClass.st

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@ tests-block
22
testUsesNotPortableClass
33

44
| class |
5-
class := self defineSubClassOf: #GRObject.
6-
class package: 'SomeCategory' tag: ''.
5+
class := self defineSubClassOf: #GRObject inPackage: 'SomeCategory'.
76
self compile: 'invalid ^ Semaphore new' in: class.
87
self compile: 'valid ^ GRObject new' in: class.
98
self

0 commit comments

Comments
 (0)