[Pkg] The Trunk: SUnit-pre.115.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Apr 30 17:18:49 UTC 2019


Patrick Rein uploaded a new version of SUnit to project The Trunk:
http://source.squeak.org/trunk/SUnit-pre.115.mcz

==================== Summary ====================

Name: SUnit-pre.115
Author: pre
Time: 30 April 2019, 7:18:47.687906 pm
UUID: 447c12dd-c108-094a-9327-ef47edc61497
Ancestors: SUnit-cypress.1, SUnit-fn.114

Recategorizes test methods in SUnit to create a good example to start from.

=============== Diff against SUnit-fn.114 ===============

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>setUp (in category 'running') -----
- ----- Method: ClassFactoryForTestCaseTest>>setUp (in category 'setUp-tearDown') -----
  setUp
  	super setUp.
  	factory := ClassFactoryForTestCase new!

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>tearDown (in category 'running') -----
- ----- Method: ClassFactoryForTestCaseTest>>tearDown (in category 'setUp-tearDown') -----
  tearDown
  	super tearDown.
  	factory cleanUp!

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>testClassCreationInDifferentCategories (in category 'tests') -----
- ----- Method: ClassFactoryForTestCaseTest>>testClassCreationInDifferentCategories (in category 'testing') -----
  testClassCreationInDifferentCategories
  	| firstThreeClasses lastTwoClasses |
  	3 timesRepeat: [
  		factory newSubclassOf: Object instanceVariableNames: '' classVariableNames: '' category: #One].
  	firstThreeClasses := factory createdClasses copy.
  	2 timesRepeat: [
  		factory newSubclassOf: Object instanceVariableNames: '' classVariableNames: '' category: #Two].
  	lastTwoClasses := factory createdClasses copyWithoutAll: firstThreeClasses.
  	self assert: (firstThreeClasses allSatisfy: [:class| class category = (factory packageName, '-', #One) asSymbol]).
  	self assert: (lastTwoClasses allSatisfy: [:class| class category = (factory packageName, '-', #Two) asSymbol]).!

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>testClassFastCreationInDifferentCategories (in category 'tests') -----
- ----- Method: ClassFactoryForTestCaseTest>>testClassFastCreationInDifferentCategories (in category 'testing') -----
  testClassFastCreationInDifferentCategories
  	| firstThreeClasses lastTwoClasses |
  	3 timesRepeat: [
  		factory newClassInCategory: #One].
  	firstThreeClasses := factory createdClasses copy.
  	2 timesRepeat: [
  		factory newClassInCategory: #Two].
  	lastTwoClasses := factory createdClasses copyWithoutAll: firstThreeClasses.
  	self assert: (firstThreeClasses allSatisfy: [:class| class category = (factory packageName, '-', #One) asSymbol]).
  	self assert: (lastTwoClasses allSatisfy: [:class| class category = (factory packageName, '-', #Two) asSymbol]).!

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>testDefaultCategoryCleanUp (in category 'tests') -----
- ----- Method: ClassFactoryForTestCaseTest>>testDefaultCategoryCleanUp (in category 'testing') -----
  testDefaultCategoryCleanUp
  	| createdClassNames allClasses |
  	3 timesRepeat: [
  		factory newClass].
  	createdClassNames := factory createdClassNames.
  	factory cleanUp.	
  	self assert: (factory createdClasses allSatisfy: [:class| class isObsolete]). 
  	allClasses := SystemNavigation new allClasses.
  	self assert: (factory createdClasses noneSatisfy: [:class| allClasses includes: class]).
  	self deny: (SystemOrganization categories includes: factory defaultCategory). 
  	self deny: (ChangeSet current changedClassNames includesAnyOf: createdClassNames)
  !

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>testMultipleClassCreation (in category 'tests') -----
- ----- Method: ClassFactoryForTestCaseTest>>testMultipleClassCreation (in category 'testing') -----
  testMultipleClassCreation
  	5 timesRepeat: [
  		factory newClass].
  	self assert: (SystemNavigation new allClasses includesAllOf: factory createdClasses).
  	self assert: factory createdClassNames asSet size = 5.
  	self assert: (SystemOrganization listAtCategoryNamed: factory defaultCategory) asSet = factory createdClassNames asSet!

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>testPackageCleanUp (in category 'tests') -----
- ----- Method: ClassFactoryForTestCaseTest>>testPackageCleanUp (in category 'testing') -----
  testPackageCleanUp
  	| createdClassNames allClasses |
  	3 timesRepeat: [
  		factory newClassInCategory: #One].
  	2 timesRepeat: [
  		factory newClassInCategory: #Two].
  	createdClassNames := factory createdClassNames.
  	factory cleanUp.	
  	self assert: (factory createdClasses allSatisfy: [:class| class isObsolete]). 
  	allClasses := SystemNavigation new allClasses.
  	self assert: (factory createdClasses noneSatisfy: [:class| allClasses includes: class]).
  	self assert: (SystemOrganization categoriesMatching: factory packageName, '*') isEmpty. 
  	self deny: (ChangeSet current changedClassNames includesAnyOf: createdClassNames)
  !

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>testSingleClassCreation (in category 'tests') -----
- ----- Method: ClassFactoryForTestCaseTest>>testSingleClassCreation (in category 'testing') -----
  testSingleClassCreation
  	|class elementsInCategoryForTest |
  	class := factory 
  		newSubclassOf: Object 
  		instanceVariableNames: 'a b c' 
  		classVariableNames: 'X Y'.
  	self assert: (SystemNavigation new allClasses includes: class).
  	elementsInCategoryForTest := SystemOrganization listAtCategoryNamed: factory defaultCategory. 
  	self assert: elementsInCategoryForTest = {class name}.
  	self assert: class instVarNames = #(a b c).
  	self assert: class classPool keys asSet = #(X Y) asSet!

Item was changed:
+ ----- Method: ClassFactoryForTestCaseTest>>testSingleClassFastCreation (in category 'tests') -----
- ----- Method: ClassFactoryForTestCaseTest>>testSingleClassFastCreation (in category 'testing') -----
  testSingleClassFastCreation
  	|class elementsInCategoryForTest |
  	class := factory newClass.
  	self assert: (SystemNavigation new allClasses includes: class).
  	elementsInCategoryForTest := SystemOrganization listAtCategoryNamed: factory defaultCategory. 
  	self assert: elementsInCategoryForTest = {class name}.
  	self assert: class instVarNames isEmpty.
  	self assert: class classPool isEmpty!

Item was changed:
+ ----- Method: ClassTestCase>>selectorsTested (in category 'coverage') -----
- ----- Method: ClassTestCase>>selectorsTested (in category 'Coverage') -----
  selectorsTested
  	| literals |
  	literals := Set new.
  	self class
  		selectorsAndMethodsDo: [ :s :m | (s beginsWith: 'test')
  			ifTrue: [ literals addAll: (m messages)] ].
  	^ literals sorted!

Item was changed:
+ ----- Method: LongTestCase>>defaultTimeout (in category 'accessing') -----
- ----- Method: LongTestCase>>defaultTimeout (in category 'as yet unclassified') -----
  defaultTimeout
  	"Answer the default timeout to use for tests in this test case. The timeout is a value in seconds."
  
  	^super defaultTimeout * 10!

Item was changed:
+ ----- Method: LongTestCaseTest>>setUp (in category 'running') -----
- ----- Method: LongTestCaseTest>>setUp (in category 'as yet unclassified') -----
  setUp
  
  	preferenceValue := LongTestCase shouldRun!

Item was changed:
+ ----- Method: LongTestCaseTest>>tearDown (in category 'running') -----
- ----- Method: LongTestCaseTest>>tearDown (in category 'as yet unclassified') -----
  tearDown
  
  	LongTestCase shouldRun: preferenceValue!

Item was changed:
+ ----- Method: LongTestCaseTest>>testLongTestCaseDoNotRun (in category 'tests') -----
- ----- Method: LongTestCaseTest>>testLongTestCaseDoNotRun (in category 'testing') -----
  testLongTestCaseDoNotRun
  	"self debug: #testLongTestCaseDoNotRun"
  	"self run: #testLongTestCaseDoNotRun"
  
  	LongTestCase doNotRunLongTestCases.
  	LongTestCaseTestUnderTest markAsNotRun.
  	self deny: LongTestCaseTestUnderTest hasRun.
  	LongTestCaseTestUnderTest suite run.
  	self deny: LongTestCaseTestUnderTest hasRun.
  
  
  	!

Item was changed:
+ ----- Method: LongTestCaseTest>>testLongTestCaseRun (in category 'tests') -----
- ----- Method: LongTestCaseTest>>testLongTestCaseRun (in category 'testing') -----
  testLongTestCaseRun
  	"self debug: #testLongTestCaseRun"
  	"self run: #testLongTestCaseRun"
  
  	LongTestCase runLongTestCases.
  	LongTestCaseTestUnderTest markAsNotRun.
  	self deny: LongTestCaseTestUnderTest hasRun.
  	LongTestCaseTestUnderTest suite run.
  	self assert: LongTestCaseTestUnderTest hasRun.
  	LongTestCase doNotRunLongTestCases.
  
  	!

Item was changed:
+ ----- Method: LongTestCaseTestUnderTest>>testWhenRunMarkTestedToTrue (in category 'tests') -----
- ----- Method: LongTestCaseTestUnderTest>>testWhenRunMarkTestedToTrue (in category 'testing') -----
  testWhenRunMarkTestedToTrue
  
  
  	RunStatus := true.!

Item was changed:
+ ----- Method: ResumableTestFailureTestCase>>errorTest (in category 'data') -----
- ----- Method: ResumableTestFailureTestCase>>errorTest (in category 'not categorized') -----
  errorTest
  	1 zork
  			!

Item was changed:
+ ----- Method: ResumableTestFailureTestCase>>failureTest (in category 'data') -----
- ----- Method: ResumableTestFailureTestCase>>failureTest (in category 'not categorized') -----
  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
  			!

Item was changed:
+ ----- Method: ResumableTestFailureTestCase>>okTest (in category 'data') -----
- ----- Method: ResumableTestFailureTestCase>>okTest (in category 'not categorized') -----
  okTest
  	self assert: true
  			!

Item was changed:
+ ----- Method: ResumableTestFailureTestCase>>regularTestFailureTest (in category 'data') -----
- ----- Method: ResumableTestFailureTestCase>>regularTestFailureTest (in category 'not categorized') -----
  regularTestFailureTest
  	self assert: false description: 'You should see me'
  			!

Item was changed:
+ ----- Method: ResumableTestFailureTestCase>>resumableTestFailureTest (in category 'data') -----
- ----- Method: ResumableTestFailureTestCase>>resumableTestFailureTest (in category 'not categorized') -----
  resumableTestFailureTest
  	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
  			!

Item was changed:
+ ----- Method: ResumableTestFailureTestCase>>testResumable (in category 'tests') -----
- ----- Method: ResumableTestFailureTestCase>>testResumable (in category 'not categorized') -----
  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
  			!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testAssertionFailedInRaiseWithExceptionDo (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testAssertionFailedInRaiseWithExceptionDo (in category 'test') -----
  testAssertionFailedInRaiseWithExceptionDo
  
  	| testCase testResult  |
  	
  	testCase := self class selector: #assertionFailedInRaiseWithExceptionDoTest.
  	testResult := testCase run.
  	
  	self assert: (testResult failures includes: testCase).
  	self assert: testResult failures size=1.
  	self assert: testResult passed isEmpty.
  	self assert: testResult errors isEmpty.
  	
  	!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testAutoAssertFalse (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testAutoAssertFalse (in category 'test') -----
  testAutoAssertFalse
  	| booleanCondition |
  	self assert: self isLogging.
  	self should: [ self assert: 1 = 2 description: 'self assert: 1 = 2' ] raise: TestResult failure.
  	booleanCondition := (self stream contents subStrings: {Character cr}) last = 'self assert: 1 = 2'.
  	self assert: booleanCondition!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testAutoAssertTrue (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testAutoAssertTrue (in category 'test') -----
  testAutoAssertTrue
  	self assert: 1 = 1.
  	self assert: true!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testAutoDenyFalse (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testAutoDenyFalse (in category 'test') -----
  testAutoDenyFalse
  	| booleanCondition |
  	self assert: self isLogging.
  	self should: [ self deny: 1 = 1 description: 'self deny: 1 = 1'.] raise: TestResult failure.
  	booleanCondition := (self stream contents subStrings:  {Character cr}) last = 'self deny: 1 = 1'.
  	self assert: booleanCondition!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testAutoDenyTrue (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testAutoDenyTrue (in category 'test') -----
  testAutoDenyTrue
  	self deny: 1 = 2.
  	self deny: false!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testDifferentExceptionInShouldRaiseWithExceptionDo (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testDifferentExceptionInShouldRaiseWithExceptionDo (in category 'test') -----
  testDifferentExceptionInShouldRaiseWithExceptionDo
  
  	| testCase testResult  |
  	
  	testCase := self class selector: #differentExceptionInShouldRaiseWithExceptionDoTest.
  	testResult := testCase run.
  	
  	self assert: (testResult passed includes: testCase).
  	self assert: testResult errors isEmpty.
  	self assert: testResult failures isEmpty.
  	self assert: testResult passed size=1!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testEnsureInternetFails (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testEnsureInternetFails (in category 'test') -----
  testEnsureInternetFails
  
  	self should: [self ensureInternetConnectionTo: ''] raise: Error!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testErrorInRaiseWithExceptionDo (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testErrorInRaiseWithExceptionDo (in category 'test') -----
  testErrorInRaiseWithExceptionDo
  
  	| testCase testResult  |
  	
  	testCase := self class selector: #errorInRaiseWithExceptionDoTest.
  	testResult := testCase run.
  		
  	self assert: (testResult errors includes: testCase).
  	self assert: testResult errors size=1.
  	self assert: testResult failures isEmpty.
  	self assert: testResult passed isEmpty.
  	
  	!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testExceptionWithMatchingString (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testExceptionWithMatchingString (in category 'as yet unclassified') -----
  testExceptionWithMatchingString
  	self should: [ Object obsolete ] raise: Error whoseDescriptionIncludes: 'NOT obsolete' description: 'tested obsoleting Object'!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testExceptionWithoutMatchingString (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testExceptionWithoutMatchingString (in category 'as yet unclassified') -----
  testExceptionWithoutMatchingString
  	self should: [ Object obsolete ] raise: Error whoseDescriptionDoesNotInclude: 'Zero' description: 'tested obsoleting Object'!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testInvalidShouldNotTakeMoreThan (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testInvalidShouldNotTakeMoreThan (in category 'test') -----
  testInvalidShouldNotTakeMoreThan
  
  	| testCase testResult |
  
  	testCase := self class selector: #invalidShouldNotTakeMoreThan.
  	testResult := testCase run.
  
  	self assert: testResult passed isEmpty.
  	self assert: testResult failures size = 1.
  	self assert: (testResult failures includes: testCase).
  	self assert: testResult errors isEmpty
  
  !

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testInvalidShouldNotTakeMoreThanMilliseconds (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testInvalidShouldNotTakeMoreThanMilliseconds (in category 'test') -----
  testInvalidShouldNotTakeMoreThanMilliseconds
  
  	| testCase testResult |
  
  	testCase := self class selector: #invalidShouldNotTakeMoreThanMilliseconds.
  	testResult := testCase run.
  
  	self assert: testResult passed isEmpty.
  	self assert: testResult failures size = 1.
  	self assert: (testResult failures includes: testCase).
  	self assert: testResult errors isEmpty
  
  !

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testNoExceptionInShouldRaiseWithExceptionDo (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testNoExceptionInShouldRaiseWithExceptionDo (in category 'test') -----
  testNoExceptionInShouldRaiseWithExceptionDo
  
  	| testCase testResult  |
  	
  	testCase := self class selector: #noExceptionInShouldRaiseWithExceptionDoTest.
  	testResult := testCase run.
  	
  	self assert: (testResult failures includes: testCase).
  	self assert: testResult failures size=1.
  	self assert: testResult passed isEmpty.
  	self assert: testResult errors isEmpty.
  	
  	!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testNoExceptionWithMatchingString (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testNoExceptionWithMatchingString (in category 'as yet unclassified') -----
  testNoExceptionWithMatchingString
  	self shouldnt: [ Object obsolete ] raise: Error whoseDescriptionIncludes: 'Zero' description: 'tested obsoleting Object'!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testNoExceptionWithNoMatchingString (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testNoExceptionWithNoMatchingString (in category 'as yet unclassified') -----
  testNoExceptionWithNoMatchingString
  	self shouldnt: [ Object obsolete ] raise: Error whoseDescriptionDoesNotInclude: 'NOT' description: 'tested obsoleting Object'!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testShouldFix (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testShouldFix (in category 'test') -----
  testShouldFix
  
  	| testCase testResult  |
  	
  	testCase := self class selector: #shouldFixTest.
  	testResult := testCase run.
  	
  	self assert: (testResult passed includes: testCase).
  	self assert: testResult passed size=1.
  	self assert: testResult failures isEmpty.
  	self assert: testResult errors isEmpty.
  	
  	!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testShouldRaiseWithExceptionDo (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testShouldRaiseWithExceptionDo (in category 'test') -----
  testShouldRaiseWithExceptionDo
  
  	| testCase testResult  |
  	
  	testCase := self class selector: #shouldRaiseWithExceptionDoTest.
  	testResult := testCase run.
  	
  	self assert: (testResult passed includes: testCase).
  	self assert: testResult passed size=1.
  	self assert: testResult failures isEmpty.
  	self assert: testResult errors isEmpty.
  	
  	!

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testValidShouldNotTakeMoreThan (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testValidShouldNotTakeMoreThan (in category 'test') -----
  testValidShouldNotTakeMoreThan
  	| testCase testResult |
  
  	testCase := self class selector: #validShouldNotTakeMoreThan.
  	testResult := testCase run.
  
  	self assert: (testResult passed includes: testCase).
  	self assert: testResult passed size = 1.
  	self assert: testResult failures isEmpty.
  	self assert: testResult errors isEmpty
  
  !

Item was changed:
+ ----- Method: SUnitExtensionsTest>>testValidShouldNotTakeMoreThanMilliseconds (in category 'tests') -----
- ----- Method: SUnitExtensionsTest>>testValidShouldNotTakeMoreThanMilliseconds (in category 'test') -----
  testValidShouldNotTakeMoreThanMilliseconds
  
  	| testCase testResult |
  
  	testCase := self class selector: #validShouldNotTakeMoreThanMilliseconds.
  	testResult := testCase run.
  
  	self assert: (testResult passed includes: testCase).
  	self assert: testResult passed size = 1.
  	self assert: testResult failures isEmpty.
  	self assert: testResult errors isEmpty
  
  !

Item was changed:
+ ----- Method: SUnitTest>>errorShouldntRaise (in category 'tests') -----
- ----- Method: SUnitTest>>errorShouldntRaise (in category 'testing') -----
  errorShouldntRaise
  	self 
  		shouldnt: [self someMessageThatIsntUnderstood] 
  		raise: Notification new
  			!

Item was changed:
+ ----- Method: SUnitTest>>testAssert (in category 'tests') -----
- ----- Method: SUnitTest>>testAssert (in category 'testing') -----
  testAssert
  	self assert: true.
  	self deny: false
  			!

Item was changed:
+ ----- Method: SUnitTest>>testAssertIdentical (in category 'tests') -----
- ----- Method: SUnitTest>>testAssertIdentical (in category 'testing') -----
  testAssertIdentical
  	| a b |
  	a := 'foo'.
  	b := 'bar'.
  	self should: [self assert: a identical: b] raise: TestFailure.
  	[self assert: a identical: b] on: TestFailure do: [:e | |error|
  		error := e messageText.
  		self assert: (error includesSubstring: a) description: 'Error message doesn''t include the expected value'.
  		self assert: (error includesSubstring: b) description: 'Error message doesn''t include the expected value'].!

Item was changed:
+ ----- Method: SUnitTest>>testAssertIdenticalDescription (in category 'tests') -----
- ----- Method: SUnitTest>>testAssertIdenticalDescription (in category 'testing') -----
  testAssertIdenticalDescription
  	| a b |
  	a := 'foo'.
  	b := a copy.
  	self should: [self assert: a identical: b description: 'A desciption'] raise: TestFailure.
  	[self assert: a identical: b description: 'A desciption'] on: TestFailure do: [:e | |error|
  		error := e messageText.
  		self assert: (error includesSubstring: 'A desciption') description: 'Error message doesn''t give you the description'].!

Item was changed:
+ ----- Method: SUnitTest>>testAssertIdenticalWithEqualObjects (in category 'tests') -----
- ----- Method: SUnitTest>>testAssertIdenticalWithEqualObjects (in category 'testing') -----
  testAssertIdenticalWithEqualObjects
  	| a b |
  	a := 'foo'.
  	b := a copy.
  	self should: [self assert: a identical: b] raise: TestFailure.
  	[self assert: a identical: b] on: TestFailure do: [:e | |error|
  		error := e messageText.
  		self assert: (error includesSubstring: 'not identical') description: 'Error message doesn''t say the two things aren''t identical'].!

Item was changed:
+ ----- Method: SUnitTest>>testDefects (in category 'tests') -----
- ----- Method: SUnitTest>>testDefects (in category 'testing') -----
  testDefects
  	| result suite error failure |
  	suite := TestSuite new.
  	suite addTest: (error := self class selector: #error).
  	suite addTest: (failure := self class selector: #fail).
  	result := suite run.
  	self assert: result defects asArray = (Array with: error with: failure).
  	self
  		assertForTestResult: result
  		runCount: 2
  		passed: 0
  		failed: 1
  		errors: 1
  			!

Item was changed:
+ ----- Method: SUnitTest>>testDialectLocalizedException (in category 'tests') -----
- ----- Method: SUnitTest>>testDialectLocalizedException (in category 'testing') -----
  testDialectLocalizedException
  
  	self
  		should: [TestResult signalFailureWith: 'Foo']
  		raise: TestResult failure.
  	self
  		should: [TestResult signalErrorWith: 'Foo']
  		raise: TestResult error.
  
  			!

Item was changed:
+ ----- Method: SUnitTest>>testError (in category 'tests') -----
- ----- Method: SUnitTest>>testError (in category 'testing') -----
  testError
  
  	| case result |
  
  	case := self class selector: #error.
  	result := case run.
  	self
  		assertForTestResult: result
  		runCount: 1
  		passed: 0
  		failed: 0
  		errors: 1.
  
  	case := self class selector: #errorShouldntRaise.
  	result := case run.
  	self 
  		assertForTestResult: result
  		runCount: 1
  		passed: 0
  		failed: 0
  		errors: 1
  			!

Item was changed:
+ ----- Method: SUnitTest>>testException (in category 'tests') -----
- ----- Method: SUnitTest>>testException (in category 'testing') -----
  testException
  
  	self
  		should: [self error: 'foo']
  		raise: TestResult error
  			!

Item was changed:
+ ----- Method: SUnitTest>>testFail (in category 'tests') -----
- ----- Method: SUnitTest>>testFail (in category 'testing') -----
  testFail
  
  	| case result |
  
  	case := self class selector: #fail.
  	result := case run.
  
  	self
  		assertForTestResult: result
  		runCount: 1
  		passed: 0
  		failed: 1
  		errors: 0
  			!

Item was changed:
+ ----- Method: SUnitTest>>testRan (in category 'tests') -----
- ----- Method: SUnitTest>>testRan (in category 'testing') -----
  testRan
  
  	| case |
  
  	case := self class selector: #setRun.
  	case run.
  	self assert: case hasSetup.
  	self assert: case hasRun
  			!

Item was changed:
+ ----- Method: SUnitTest>>testRanOnlyOnce (in category 'tests') -----
- ----- Method: SUnitTest>>testRanOnlyOnce (in category 'testing') -----
  testRanOnlyOnce
  
  	self assert: hasRanOnce ~= true.
  	hasRanOnce := true
  			!

Item was changed:
+ ----- Method: SUnitTest>>testResult (in category 'tests') -----
- ----- Method: SUnitTest>>testResult (in category 'testing') -----
  testResult
  
  	| case result |
  
  	case := self class selector: #noop.
  	result := case run.
  
  	self
  		assertForTestResult: result
  		runCount: 1
  		passed: 1
  		failed: 0
  		errors: 0
  			!

Item was changed:
+ ----- Method: SUnitTest>>testRunning (in category 'tests') -----
- ----- Method: SUnitTest>>testRunning (in category 'testing') -----
  testRunning
  
  	(Delay forSeconds: 2) wait
  			!

Item was changed:
+ ----- Method: SUnitTest>>testSelectorWithArg: (in category 'tests') -----
- ----- Method: SUnitTest>>testSelectorWithArg: (in category 'testing') -----
  testSelectorWithArg: anObject
  	"should not result in error"!

Item was changed:
+ ----- Method: SUnitTest>>testShould (in category 'tests') -----
- ----- Method: SUnitTest>>testShould (in category 'testing') -----
  testShould
  
  	self
  		should: [true];
  		shouldnt: [false]
  			!

Item was changed:
+ ----- Method: SUnitTest>>testSuite (in category 'tests') -----
- ----- Method: SUnitTest>>testSuite (in category 'testing') -----
  testSuite
  
  	| suite result |
  
  	suite := TestSuite new.
  	suite 
  		addTest: (self class selector: #noop);
  		addTest: (self class selector: #fail);
  		addTest: (self class selector: #error).
  
  	result := suite run.
  
  	self
  		assertForTestResult: result
  		runCount: 3
  		passed: 1
  		failed: 1
  		errors: 1
  			!

Item was changed:
+ ----- Method: SUnitTest>>testTestTimeout (in category 'tests') -----
- ----- Method: SUnitTest>>testTestTimeout (in category 'testing') -----
  testTestTimeout
  	self should:[(Delay forSeconds: (self timeoutForTest + 1)) wait] raise: TestFailure.
  !

Item was changed:
+ ----- Method: SUnitTest>>testTestTimeoutLoop (in category 'tests') -----
- ----- Method: SUnitTest>>testTestTimeoutLoop (in category 'testing') -----
  testTestTimeoutLoop
  	<timeout: 1>
  	self should:[[] repeat] raise: TestFailure.
  !

Item was changed:
+ ----- Method: SUnitTest>>testTestTimeoutTag (in category 'tests') -----
- ----- Method: SUnitTest>>testTestTimeoutTag (in category 'testing') -----
  testTestTimeoutTag
  	<timeout: 1>
  	self should:[(Delay forSeconds: 3) wait] raise: TestFailure.
  !

Item was changed:
+ ----- Method: SUnitTest>>testWithExceptionDo (in category 'tests') -----
- ----- Method: SUnitTest>>testWithExceptionDo (in category 'testing') -----
  testWithExceptionDo
  
  	self
  		should: [self error: 'foo']
  		raise: TestResult error
  		withExceptionDo: [:exception |
  			self assert: (exception description includesSubstring: 'foo')
  		]
  			!

Item was changed:
+ ----- Method: SimpleTestResourceTestCase>>dummy (in category 'private') -----
- ----- Method: SimpleTestResourceTestCase>>dummy (in category 'not categorized') -----
  dummy
  	self assert: true
  			!

Item was changed:
+ ----- Method: SimpleTestResourceTestCase>>error (in category 'extensions') -----
- ----- Method: SimpleTestResourceTestCase>>error (in category 'not categorized') -----
  error
  	'foo' odd
  			!

Item was changed:
+ ----- Method: SimpleTestResourceTestCase>>fail (in category 'extensions') -----
- ----- Method: SimpleTestResourceTestCase>>fail (in category 'not categorized') -----
  fail
  	self assert: false
  			!

Item was changed:
+ ----- Method: SimpleTestResourceTestCase>>setRun (in category 'extensions') -----
- ----- Method: SimpleTestResourceTestCase>>setRun (in category 'not categorized') -----
  setRun
  	resource setRun
  			!

Item was changed:
+ ----- Method: SimpleTestResourceTestCase>>setUp (in category 'running') -----
- ----- Method: SimpleTestResourceTestCase>>setUp (in category 'not categorized') -----
  setUp
  	resource := SimpleTestResource current
  			!

Item was changed:
+ ----- Method: SimpleTestResourceTestCase>>testRan (in category 'tests') -----
- ----- Method: SimpleTestResourceTestCase>>testRan (in category 'not categorized') -----
  testRan
  	| case |
  
  	case := self class selector: #setRun.
  	case run.
  	self assert: resource hasSetup.
  	self assert: resource hasRun
  			!

Item was changed:
+ ----- Method: SimpleTestResourceTestCase>>testResourceInitRelease (in category 'tests') -----
- ----- Method: SimpleTestResourceTestCase>>testResourceInitRelease (in category 'not categorized') -----
  testResourceInitRelease
  	| result suite error failure |
  	suite := TestSuite new.
  	suite addTest: (error := self class selector: #error).
  	suite addTest: (failure := self class selector: #fail).
  	suite addTest: (self class selector: #dummy).
  	result := suite run.
  	self assert: resource hasSetup
  			!

Item was changed:
+ ----- Method: SimpleTestResourceTestCase>>testResourcesCollection (in category 'tests') -----
- ----- Method: SimpleTestResourceTestCase>>testResourcesCollection (in category 'not categorized') -----
  testResourcesCollection
  	| collection |
  	collection := self resources.
  	self assert: collection size = 1
  			!

Item was changed:
+ ----- Method: TestCase class>>testSelectors (in category 'accessing') -----
- ----- Method: TestCase class>>testSelectors (in category 'Accessing') -----
  testSelectors
  
  	^(self selectors asArray select: [ :each | 
  		(each beginsWith: 'test') and: [ each numArgs isZero ] ]) sort!

Item was changed:
+ ----- Method: TestCase>>expectedFailures (in category 'failures') -----
- ----- Method: TestCase>>expectedFailures (in category 'testing') -----
  expectedFailures
  	^ Array new!



More information about the Packages mailing list