@@ -24,7 +24,11 @@ import {
2424 folderInRootWorkspace ,
2525 updateSettings ,
2626} from "../utilities/testutilities" ;
27- import { executeTaskAndWaitForResult , waitForEndTaskProcess } from "../../utilities/tasks" ;
27+ import {
28+ cleanOutput ,
29+ executeTaskAndWaitForResult ,
30+ waitForEndTaskProcess ,
31+ } from "../../utilities/tasks" ;
2832import { mutable } from "../../utilities/types" ;
2933import { SwiftExecution } from "../../../src/tasks/SwiftExecution" ;
3034import { SwiftTask } from "../../../src/tasks/SwiftTaskProvider" ;
@@ -198,23 +202,21 @@ suite("SwiftPluginTaskProvider Test Suite", function () {
198202 taskProvider = workspaceContext . pluginProvider ;
199203 } ) ;
200204
201- test ( "Exit code on success" , async ( ) => {
202- const task = taskProvider . createSwiftPluginTask (
203- folderContext . swiftPackage . plugins [ 0 ] ,
204- folderContext . toolchain ,
205- {
206- cwd : folderContext . folder ,
207- scope : folderContext . workspaceFolder ,
208- }
209- ) ;
210- const { exitCode, output } = await executeTaskAndWaitForResult ( task ) ;
211- expect ( exitCode , output ) . to . equal ( 0 ) ;
212- // TODO figure out why the output is '' intermittently
213- // it seems like the task is being copied by any of the
214- // vscode.tasks event emitters so executeTaskAndWaitForResult
215- // captures no output
216- // expect(cleanOutput(output)).to.include("Hello, World!");
217- } ) ;
205+ for ( let i = 0 ; i < 25 ; ++ i ) {
206+ test ( "Exit code on success " + i , async ( ) => {
207+ const task = taskProvider . createSwiftPluginTask (
208+ folderContext . swiftPackage . plugins [ 0 ] ,
209+ folderContext . toolchain ,
210+ {
211+ cwd : folderContext . folder ,
212+ scope : folderContext . workspaceFolder ,
213+ }
214+ ) ;
215+ const { exitCode, output } = await executeTaskAndWaitForResult ( task ) ;
216+ expect ( exitCode , output ) . to . equal ( 0 ) ;
217+ expect ( cleanOutput ( output ) ) . to . include ( "Hello, World!" ) ;
218+ } ) ;
219+ }
218220
219221 test ( "Exit code on failure" , async ( ) => {
220222 const task = taskProvider . createSwiftPluginTask (
0 commit comments