TestCase.st
author Claus Gittinger <cg@exept.de>
Tue, 04 Dec 2001 10:06:50 +0100
changeset 40 b27893ae4b99
parent 37 6da5b7e8e3ab
child 50 6db52a1a4543
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/sunit' }"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
Object subclass:#TestCase
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:'testSelector'
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:''
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
     7
	category:'SUnit-Base'
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
12
4a6597527f92 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
    10
2
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    11
!TestCase class methodsFor:'initialization'!
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    12
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    13
initialize
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    14
    "ensure, that the sunit extensions are loaded"
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    15
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    16
    (Class implements:#sunitName) ifFalse:[
36
6e7ee8f590b2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 35
diff changeset
    17
	Smalltalk fileIn:'extensions.st' inPackage:(self package)
2
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    18
    ].    
4
ce83a7e08215 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3
diff changeset
    19
    TestFailure isLoaded ifFalse:[
35
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
    20
	TestFailure autoload
4
ce83a7e08215 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3
diff changeset
    21
    ].
2
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    22
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    23
    "
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    24
     self initialize
4
ce83a7e08215 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3
diff changeset
    25
    "
ce83a7e08215 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3
diff changeset
    26
! !
2
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
    27
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
!TestCase class methodsFor:'Instance Creation'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
debug: aSymbol
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    31
	^(self selector: aSymbol) debug
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    32
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
run: aSymbol
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    35
	^(self selector: aSymbol) run
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    36
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
selector: aSymbol
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    39
	^self new setTestSelector: aSymbol
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    40
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
suite
37
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
    43
        | testSelectors result |
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
    44
        testSelectors := self sunitSelectors select: [:each | 'test*' match: each].
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
    45
        testSelectors sort.
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
    46
        result := TestSuite new.
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
    47
        result name:self name.
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
    48
        testSelectors do: [:each | result addTest: (self selector: each)].
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
    49
        ^result
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
    "Modified: / 21.6.2000 / 10:05:24 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
!TestCase methodsFor:'Accessing'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
assert: aBoolean
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    57
    "fail, if the argument is not true"
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    58
13
28f0d3459b1b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 12
diff changeset
    59
    (aBoolean isKindOf:Boolean) ifFalse:[ self error:'non boolean assertion' ].
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    60
    aBoolean ifFalse: [self signalFailure: 'Assertion failed']
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
    "Modified: / 21.6.2000 / 10:00:05 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
27
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    65
assertFalse:aBoolean
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    66
    ^ self assert:aBoolean not
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    67
!
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    68
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    69
assertFalse:aBoolean named:testName
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    70
    ^ self assert:aBoolean not
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    71
!
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    72
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    73
assertTrue:aBoolean 
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    74
    ^ self assert:aBoolean
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    75
!
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    76
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    77
assertTrue:aBoolean named:testName
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    78
    ^ self assert:aBoolean
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    79
!
a36d465d164c backward compatibility stuff
Claus Gittinger <cg@exept.de>
parents: 22
diff changeset
    80
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
deny: aBoolean
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    82
    "fail, if the argument is not false"
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    83
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    84
    self assert: aBoolean not
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    85
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
should: aBlock
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    88
    "fail, if the block does not evaluate to true"
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    89
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    90
    self assert: aBlock value
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    91
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
should: aBlock raise: anExceptionalEvent 
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    94
    "fail, if the block does not raise the given event"
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    95
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
    96
    ^self assert: (self executeShould: aBlock inScopeOf: anExceptionalEvent)
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
    "Modified: / 21.6.2000 / 10:01:08 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
shouldnt: aBlock
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   102
    "fail, if the block does evaluate to true"
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   103
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   104
    self deny: aBlock value
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   105
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
shouldnt: aBlock raise: anExceptionalEvent 
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   108
    "fail, if the block does raise the given event"
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   109
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   110
    ^self assert: (self executeShould: aBlock inScopeOf: anExceptionalEvent) not
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
    "Modified: / 21.6.2000 / 10:01:16 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
signalFailure: aString
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   116
    "/ TestResult failure sunitSignalWith: aString
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   117
    TestResult failure raiseErrorString:aString in:thisContext sender sender .
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
3
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   119
    "Modified: / 21.6.2000 / 10:01:34 / Sames"
da7aa391dc49 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2
diff changeset
   120
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
!TestCase methodsFor:'Dependencies'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
addDependentToHierachy: anObject 
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   125
	"an empty method. for Composite compability with TestSuite"
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   126
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
removeDependentFromHierachy: anObject 
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   129
	"an empty method. for Composite compability with TestSuite"
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   130
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
!TestCase methodsFor:'Printing'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
37
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
   134
name
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
   135
        ^ self class name.
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
   136
!
6da5b7e8e3ab better update (name)
Claus Gittinger <cg@exept.de>
parents: 36
diff changeset
   137
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
printOn: aStream
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
	aStream nextPutAll: self class name.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
	aStream nextPutAll: '>>'.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
	aStream nextPutAll: testSelector
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
    "Modified: / 4.4.2000 / 18:59:53 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
! !
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
!TestCase methodsFor:'Private'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
executeShould: aBlock inScopeOf: anExceptionalEvent 
35
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   149
	[[aBlock value]
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   150
		on: anExceptionalEvent
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   151
		do: [:ex | ^true]]
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   152
			on: TestResult error
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   153
			do: [:ex | ^false].
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   154
	^false.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
    "Modified: / 21.6.2000 / 10:03:03 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
setTestSelector: aSymbol
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   160
	testSelector := aSymbol
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   161
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
!TestCase methodsFor:'Running'!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
debug
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   166
	(self class selector: testSelector) runCase
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   167
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
debugAsFailure
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   170
	(self class selector: testSelector) runCaseAsFailure
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   171
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
openDebuggerOnFailingTestMethod
35
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   174
	"SUnit has halted one step in front of the failing test method. 
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   175
	Step over the 'self halt' and send into 'self perform: testSelector' 
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   176
	to see the failure from the beginning"
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
35
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   178
	"/ self halt.
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   179
	self perform: testSelector asSymbol
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   181
    "Modified: / 21.6.2000 / 10:03:37 / Sames"
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   182
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
run
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
	| result |
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
	result := TestResult new.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
	self run: result.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   188
	^result
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   189
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
run: aResult
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   192
	aResult runCase: self
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   193
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
40
b27893ae4b99 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 37
diff changeset
   195
run: aResult afterEachDo:block2
b27893ae4b99 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 37
diff changeset
   196
        aResult runCase: self.
b27893ae4b99 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 37
diff changeset
   197
        block2 value:self value:aResult.
b27893ae4b99 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 37
diff changeset
   198
!
b27893ae4b99 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 37
diff changeset
   199
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
runCase
35
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   201
	self setUp.
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   202
	[self perform: testSelector asSymbol] valueNowOrOnUnwindDo: [self tearDown]
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
    "Modified: / 21.6.2000 / 10:04:18 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
runCaseAsFailure
35
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   208
	self setUp.
243e56eed6ca *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 32
diff changeset
   209
	[[self openDebuggerOnFailingTestMethod] valueNowOrOnUnwindDo: [self tearDown]] fork
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
    "Modified: / 21.6.2000 / 10:04:33 / Sames"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   214
setUp
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   215
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   217
tearDown
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
   218
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
12
4a6597527f92 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   220
!TestCase class methodsFor:'documentation'!
4a6597527f92 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   221
4a6597527f92 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   222
version
40
b27893ae4b99 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 37
diff changeset
   223
    ^ '$Header: /cvs/stx/stx/goodies/sunit/TestCase.st,v 1.16 2001-12-04 09:06:50 cg Exp $'
12
4a6597527f92 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
   224
! !
2
6f450bf08bc0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1
diff changeset
   225
TestCase initialize!