@@ -10,8 +10,9 @@ Class {
10
10
' originalProtocol' ,
11
11
' data'
12
12
],
13
- #category : ' MuTalk-Model' ,
14
- #package : ' MuTalk-Model'
13
+ #category : ' MuTalk-Model-Core' ,
14
+ #package : ' MuTalk-Model' ,
15
+ #tag : ' Core'
15
16
}
16
17
17
18
{ #category : ' instance creation' }
@@ -171,14 +172,32 @@ MTMethodMutation >> printOn: aStream [
171
172
]
172
173
173
174
{ #category : ' running' }
174
- MTMethodMutation >> runMutantStoppingOnError: aBoolean [
175
+ MTMethodMutation >> runMutantStoppingOnError: aBoolean in: anEvaluation [
175
176
176
- | testResults |
177
+ | testResults brokenTests |
178
+ [
177
179
EpMonitor disableDuring: [
178
- [ self install.
179
- testResults := self runTestsStoppingOnError: aBoolean
180
- ] ensure : [ self uninstall ] ].
181
- ^ testResults
180
+ testResults := [
181
+ self install.
182
+ self runTestsStoppingOnError: aBoolean ] ensure : [
183
+ self uninstall ] ] ]
184
+ on: Error
185
+ do: [ :error |
186
+ ^ MTMutantEvaluationResultTerminated
187
+ newFor: self
188
+ results: error freeze
189
+ producedBy: anEvaluation ].
190
+
191
+ brokenTests := testResults errorsSize + testResults failuresSize.
192
+ brokenTests = 0 ifTrue: [
193
+ ^ MTMutantEvaluationResultSurvived
194
+ newFor: self
195
+ results: testResults
196
+ producedBy: anEvaluation ].
197
+ ^ MTMutantEvaluationResultKilled
198
+ newFor: self
199
+ results: testResults
200
+ producedBy: anEvaluation
182
201
]
183
202
184
203
{ #category : ' private' }
0 commit comments