forked from pharo-project/pharo
/
RGNamespaceTest.class.st
31 lines (28 loc) · 1.03 KB
/
RGNamespaceTest.class.st
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
"
SUnit tests for namespaces
"
Class {
#name : #RGNamespaceTest,
#superclass : #TestCase,
#category : #'Ring-Definitions-Tests-Containers-Base'
}
{ #category : #testing }
RGNamespaceTest >> testCreatingNamespace [
| newNamespace newPackage newClass |
newNamespace := RGNamespace named: #RingNamespace.
newPackage := RGPackageDefinition named: #'Collections-Sequenceable'.
newClass := RGClassDefinition named: #OrderedCollection.
newPackage addClass: newClass.
newNamespace
addPackage: newPackage;
addClass: newClass.
self assert: newNamespace isNamespace.
self assert: (newNamespace packageNamed: #'Collections-Sequenceable') identicalTo: newPackage.
self assert: (newNamespace classNamed: #OrderedCollection) identicalTo: newClass.
self assertEmpty: newNamespace methods.
self assertEmpty: newNamespace pools.
self assertEmpty: newNamespace globalVariables.
newNamespace removeClass: newClass.
self assert: (newNamespace classNamed: #OrderedCollection) isNil.
self assert: (newPackage classNamed: #OrderedCollection) notNil
]