SUnitTest.st
author Jan Vrany <jan.vrany@labware.com>
Fri, 07 Oct 2022 12:27:15 +0100
branchjv
changeset 773 5e936bce7857
parent 724 4dae63fce9f9
permissions -rw-r--r--
Increase interation times when running under Jenkins ...to ridiculously high values. This is an attempt to stabilize builds as they often spuriously fail because of UI tests. Sigh.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
724
4dae63fce9f9 vIssue #239: Fix all Smalltak/X source files to be in unicode (UTF8 without BOM) and prefixed by "{ Encoding: utf8 }" when any unicode character is present
Patrik Svestka <patrik.svestka@gmail.com>
parents: 664
diff changeset
     1
"{ Encoding: utf8 }"
4dae63fce9f9 vIssue #239: Fix all Smalltak/X source files to be in unicode (UTF8 without BOM) and prefixed by "{ Encoding: utf8 }" when any unicode character is present
Patrik Svestka <patrik.svestka@gmail.com>
parents: 664
diff changeset
     2
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"{ Package: 'stx:goodies/sunit' }"
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
664
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
     5
"{ NameSpace: Smalltalk }"
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
     6
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
TestCase subclass:#SUnitTest
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
	instanceVariableNames:'hasRun hasSetup hasRanOnce'
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
	classVariableNames:''
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
	poolDictionaries:''
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    11
	category:'SUnit-Tests'
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
222
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    14
SUnitTest comment:'This is both an example of writing tests and a self test for the SUnit. The tests
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    15
here are pretty strange, since you want to make sure things blow up. You should
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    16
not generally have to write tests this complicated in structure, although they
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    17
will be far more complicated in terms of your own objects- more assertions, more
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    18
complicated setup. Kent says: "Never forget, however, that if the tests are hard
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
    19
to write, something is probably wrong with the design".'
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
    20
!
9
e4ecc750aa38 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6
diff changeset
    21
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
    22
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 58
diff changeset
    23
!SUnitTest methodsFor:'accessing'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
hasRun
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    26
	^hasRun
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    27
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
hasSetup
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    30
	^hasSetup
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    31
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 58
diff changeset
    33
!SUnitTest methodsFor:'private'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
    35
assertForTestResult: aResult runCount: aRunCount passed: aPassedCount failed: aFailureCount errors: anErrorCount
664
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    36
    self assertForTestResult: aResult runCount: aRunCount passed: aPassedCount failed: aFailureCount errors: anErrorCount skipped: 0
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
    37
664
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    38
    "Modified: / 03-09-2016 / 08:54:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    39
!
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    40
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    41
assertForTestResult: aResult runCount: aRunCount passed: aPassedCount failed: aFailureCount errors: anErrorCount skipped: skippedCount
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    42
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    43
        self
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    44
                assert: aResult runCount = aRunCount;
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    45
                assert: aResult passedCount = aPassedCount;
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    46
                assert: aResult failureCount = aFailureCount;
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    47
                assert: aResult errorCount = anErrorCount;
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    48
                assert: aResult skippedCount = skippedCount
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    49
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    50
    "Created: / 03-09-2016 / 08:54:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
    51
!
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
    52
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
error
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
	3 zork
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
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
fail
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
    58
	self assert: false
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    59
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
135
2716224f9146 *** empty log message ***
boris
parents: 109
diff changeset
    61
failAndError
222
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    62
	self assert: false.
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    63
	self assert: false. " second failure "
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    64
	self error.
135
2716224f9146 *** empty log message ***
boris
parents: 109
diff changeset
    65
!
2716224f9146 *** empty log message ***
boris
parents: 109
diff changeset
    66
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    67
noop
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    68
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
setRun
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    71
	hasRun := true
664
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    72
!
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    73
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    74
skipped
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    75
        self skipIf: true description: 'Skipped'
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    76
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
    77
    "Created: / 03-09-2016 / 08:55:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    78
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 58
diff changeset
    80
!SUnitTest methodsFor:'running'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
setUp
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    83
	hasSetup := true
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    84
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
68
9fd111438d60 category renames (lower case)
Claus Gittinger <cg@exept.de>
parents: 58
diff changeset
    86
!SUnitTest methodsFor:'testing'!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
    88
errorShouldntRaise
222
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    89
	self
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    90
		shouldnt: [self someMessageThatIsntUnderstood]
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
    91
		raise: SUnitNameResolver notificationObject
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
    92
!
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
    93
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
testAssert
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
	self assert: true.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
    96
	self deny: false
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
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
testDefects
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
	| result suite error failure |
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
	suite := TestSuite new.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
	suite addTest: (error := self class selector: #error).
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
	suite addTest: (failure := self class selector: #fail).
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
	result := suite run.
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   105
	self assert: result defects asArray = (Array with: error with: failure).
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   106
	self
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   107
		assertForTestResult: result
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   108
		runCount: 2
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   109
		passed: 0
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   110
		failed: 1
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   111
		errors: 1
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
!
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
testDialectLocalizedException
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   116
	self
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   117
		should: [TestResult signalFailureWith: 'Foo']
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   118
		raise: TestResult failure.
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   119
	self
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   120
		should: [TestResult signalErrorWith: 'Foo']
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   121
		raise: TestResult error.
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
!
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
testError
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   125
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
	| case result |
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   127
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
	case := self class selector: #error.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
	result := case run.
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   130
	self
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   131
		assertForTestResult: result
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   132
		runCount: 1
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   133
		passed: 0
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   134
		failed: 0
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   135
		errors: 1.
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   136
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   137
	case := self class selector: #errorShouldntRaise.
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   138
	result := case run.
222
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
   139
	self
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   140
		assertForTestResult: result
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   141
		runCount: 1
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   142
		passed: 0
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   143
		failed: 0
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   144
		errors: 1
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   145
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
testException
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   149
	self
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   150
		should: [self error: 'foo']
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   151
		raise: TestResult error
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
!
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
testFail
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   155
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
	| case result |
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   157
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
	case := self class selector: #fail.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
	result := case run.
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   160
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   161
	self
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   162
		assertForTestResult: result
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   163
		runCount: 1
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   164
		passed: 0
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   165
		failed: 1
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   166
		errors: 0
135
2716224f9146 *** empty log message ***
boris
parents: 109
diff changeset
   167
!
2716224f9146 *** empty log message ***
boris
parents: 109
diff changeset
   168
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
testIsNotRerunOnDebug
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   170
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
	| case |
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   172
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
	case := self class selector: #testRanOnlyOnce.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
	case run.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   175
	case debug
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   176
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
testRan
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   179
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
	| case |
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   181
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
	case := self class selector: #setRun.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
	case run.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
	self assert: case hasSetup.
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   185
	self assert: case hasRun
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   186
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
testRanOnlyOnce
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   189
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
	self assert: hasRanOnce ~= true.
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   191
	hasRanOnce := true
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   192
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
testResult
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   195
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
	| case result |
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   197
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
	case := self class selector: #noop.
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
	result := case run.
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   200
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   201
	self
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   202
		assertForTestResult: result
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   203
		runCount: 1
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   204
		passed: 1
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   205
		failed: 0
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   206
		errors: 0
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   207
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
testRunning
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
222
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
   211
	(SUnitDelay forSeconds: 2) wait
0
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
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
testShould
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   215
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   216
	self
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   217
		should: [true];
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   218
		shouldnt: [false]
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   219
!
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
664
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   221
testSkip
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   222
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   223
        | case result |
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   224
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   225
        case := self class selector: #skipped.
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   226
        result := case run.
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   227
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   228
        self
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   229
                assertForTestResult: result
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   230
                runCount: 1
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   231
                passed: 0
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   232
                failed: 0
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   233
                errors: 0
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   234
                skipped: 1
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   235
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   236
    "Created: / 03-09-2016 / 08:53:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   237
!
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   238
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
testSuite
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   240
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
	| suite result |
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   242
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
	suite := TestSuite new.
222
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
   244
	suite
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   245
		addTest: (self class selector: #noop);
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   246
		addTest: (self class selector: #fail);
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   247
		addTest: (self class selector: #error).
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   248
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
	result := suite run.
109
7bb3f3015dd5 defined source container
Stefan Vogel <sv@exept.de>
parents: 68
diff changeset
   250
58
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   251
	self
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   252
		assertForTestResult: result
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   253
		runCount: 3
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   254
		passed: 1
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   255
		failed: 1
Claus Gittinger <cg@exept.de>
parents: 52
diff changeset
   256
		errors: 1
6
78bb1397e43d added rerun-defect tests; fixed button enable bug
Claus Gittinger <cg@exept.de>
parents: 0
diff changeset
   257
! !
0
9365d5753f11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
14
a4a5478621e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
   259
!SUnitTest class methodsFor:'documentation'!
a4a5478621e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
   260
a4a5478621e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
   261
version
222
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
   262
    ^ '$Header: /cvs/stx/stx/goodies/sunit/SUnitTest.st,v 1.11 2011-06-29 19:15:49 cg Exp $'
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
   263
!
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
   264
664
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   265
version_HG
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   266
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   267
    ^ '$Changeset: <not expanded> $'
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   268
!
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   269
222
8e6f482297fa Jan's 4.1 version
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
   270
version_SVN
724
4dae63fce9f9 vIssue #239: Fix all Smalltak/X source files to be in unicode (UTF8 without BOM) and prefixed by "{ Encoding: utf8 }" when any unicode character is present
Patrik Svestka <patrik.svestka@gmail.com>
parents: 664
diff changeset
   271
    ^ '§Id: SUnitTest.st 214 2011-03-14 12:22:21Z vranyj1 §'
14
a4a5478621e3 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9
diff changeset
   272
! !
664
e31b2e7b658d FIX: Do not treat skipped test as passed!
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 222
diff changeset
   273