ResumableTestFailureTestCase.st
author Claus Gittinger <cg@exept.de>
Wed, 29 May 2019 01:12:49 +0200
changeset 747 1dcb53cf964d
parent 222 8e6f482297fa
child 611 1eecc860f4a5
child 664 e31b2e7b658d
permissions -rw-r--r--
#FEATURE by cg class: TestCase added: #invokeTestMethod changed: #performTest support timeout annotation

"{ Package: 'stx:goodies/sunit' }"

TestCase subclass:#ResumableTestFailureTestCase
	instanceVariableNames:'duplicateFailureLog'
	classVariableNames:''
	poolDictionaries:''
	category:'SUnit-Tests'
!


!ResumableTestFailureTestCase methodsFor:'Not categorized'!

resumableTestFailureTest
	self
		assert: false description: 'You should see more than me' resumable: true;
		assert: false description: 'You should see more than me' resumable: true;
		assert: false description: 'You should see me last' resumable: false;
		assert: false description: 'You should not see me' resumable: true
! !

!ResumableTestFailureTestCase methodsFor:'logging'!

logFailure: aString
	duplicateFailureLog add: aString.
	super logFailure: aString.
! !

!ResumableTestFailureTestCase methodsFor:'running'!

setUp
	duplicateFailureLog := OrderedCollection with: 'In set up'.
!

tearDown
	self deny: 'You should not see me' = duplicateFailureLog last
			description: 'We saw the ''You should not see me'' failure'.
	self deny: 'You should see more than me' = duplicateFailureLog last
			description: 'We did not see more than a ''You should see more than me'' failure'.
!

testResumable
	| result suite |
	suite := TestSuite new.
	suite addTest: (self class selector: #errorTest).
	suite addTest: (self class selector: #regularTestFailureTest).
	suite addTest: (self class selector: #resumableTestFailureTest).
	suite addTest: (self class selector: #okTest).
	result := suite run.
	self assert: result failures size = 2;
		assert: result errors size = 1
! !

!ResumableTestFailureTestCase methodsFor:'test data'!

errorTest
	1 zork
!

failureTest
	self
		assert: false description: 'You should see me' resumable: true;
		assert: false description: 'You should see me too' resumable: true;
		assert: false description: 'You should see me last' resumable: false;
		assert: false description: 'You should not see me' resumable: true
!

okTest
	self assert: true
!

regularTestFailureTest
	self assert: false description: 'You should see me'
! !

!ResumableTestFailureTestCase class methodsFor:'documentation'!

version_SVN
    ^ '§Id: ResumableTestFailureTestCase.st 214 2011-03-14 12:22:21Z vranyj1 §'
! !