TestResource.st
author Claus Gittinger <cg@exept.de>
Wed, 19 Jun 2002 14:21:01 +0200
changeset 70 2ff4508f476d
parent 68 9fd111438d60
child 103 ad6897ce99e0
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/sunit' }"
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
Object subclass:#TestResource
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:'name description'
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:''
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	category:'SUnit-Base'
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
TestResource class instanceVariableNames:'current'
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
 No other class instance variables are inherited by this class.
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
"
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 44
diff changeset
    18
!TestResource class methodsFor:'accessing'!
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
current
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
	current isNil ifTrue: [current := self new].
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
	^current
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
current: aTestResource
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
	current := aTestResource
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
! !
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 44
diff changeset
    29
!TestResource class methodsFor:'creation'!
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
new
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
	^super new initialize
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
reset
70
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
    36
        current notNil ifTrue: 
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
    37
                [current tearDown.
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
    38
                current := nil]
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
    39
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
    40
        "self withAllSubclassesDo:[:each| each reset]"
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
! !
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 44
diff changeset
    43
!TestResource class methodsFor:'testing'!
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
isAbstract
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
	"Override to true if a TestCase subclass is Abstract and should not have
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
	TestCase instances built from it"
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
	^self name = #TestResource
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
isAvailable
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
	^self current notNil
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
isUnavailable
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
	^self isAvailable not
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
! !
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 44
diff changeset
    59
!TestResource methodsFor:'accessing'!
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
description
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
	description isNil ifTrue: [^''].
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
	^description
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
description: aString
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
	description := aString
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
name
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
	name isNil ifTrue: [^self printString].
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
	^name
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
name: aString
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
	name := aString
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
! !
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 44
diff changeset
    79
!TestResource methodsFor:'init / release'!
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
initialize
70
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
    82
    self setUp
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
! !
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 44
diff changeset
    85
!TestResource methodsFor:'printing'!
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
printOn: aStream
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
	aStream nextPutAll: self class printString
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
! !
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 44
diff changeset
    91
!TestResource methodsFor:'running'!
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
setUp
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
	"Does nothing. Subclasses should override this
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
	to initialize their resource"
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
tearDown
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
	"Does nothing. Subclasses should override this
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
	to tear down their resource"
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
! !
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 44
diff changeset
   103
!TestResource methodsFor:'testing'!
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
isAvailable
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
	"override to provide information on the readiness of the resource"
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
	^true
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
isUnavailable
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
	"override to provide information on the readiness of the resource"
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
	^self isAvailable not
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
! !
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
!TestResource class methodsFor:'documentation'!
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
version
70
2ff4508f476d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 68
diff changeset
   118
    ^ '$Header: /cvs/stx/stx/goodies/sunit/TestResource.st,v 1.3 2002-06-19 12:21:01 cg Exp $'
44
63d3c94197da initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
! !