@@ -2,8 +2,7 @@ import * as cp from "node:child_process";
22import fs from "node:fs/promises" ;
33import os from "node:os" ;
44import path from "node:path" ;
5- import { promisify } from "node:util" ;
6- import { beforeAll , describe , expect , it } from "vitest" ;
5+ import { beforeAll , describe , expect , it } from "vitest" ;
76
87import {
98 expectPathsEqual ,
@@ -95,8 +94,8 @@ describe("platform utils", () => {
9594 const tmp = path . join ( os . tmpdir ( ) , "vscode-coder-tests-platform" ) ;
9695
9796 beforeAll ( async ( ) => {
98- await fs . rm ( tmp , { recursive : true , force : true } ) ;
99- await fs . mkdir ( tmp , { recursive : true } ) ;
97+ await fs . rm ( tmp , { recursive : true , force : true } ) ;
98+ await fs . mkdir ( tmp , { recursive : true } ) ;
10099 } ) ;
101100
102101 it ( "writes a .js file and returns its path" , async ( ) => {
@@ -115,11 +114,10 @@ describe("platform utils", () => {
115114 describe ( "shimExecFile" , ( ) => {
116115 const tmp = path . join ( os . tmpdir ( ) , "vscode-coder-tests-shim" ) ;
117116 const mod = shimExecFile ( cp ) ;
118- const shimmedExecFile = promisify ( mod . execFile ) ;
119117
120118 beforeAll ( async ( ) => {
121- await fs . rm ( tmp , { recursive : true , force : true } ) ;
122- await fs . mkdir ( tmp , { recursive : true } ) ;
119+ await fs . rm ( tmp , { recursive : true , force : true } ) ;
120+ await fs . mkdir ( tmp , { recursive : true } ) ;
123121 } ) ;
124122
125123 it ( "runs .js files through node" , async ( ) => {
@@ -128,7 +126,11 @@ describe("platform utils", () => {
128126 "echo" ,
129127 'process.stdout.write("ok");' ,
130128 ) ;
131- const { stdout } = await shimmedExecFile ( script ) ;
129+ const stdout = await new Promise < string > ( ( resolve , reject ) => {
130+ mod . execFile ( script , ( err , out ) =>
131+ err ? reject ( err ) : resolve ( out ) ,
132+ ) ;
133+ } ) ;
132134 expect ( stdout ) . toBe ( "ok" ) ;
133135 } ) ;
134136
@@ -138,24 +140,22 @@ describe("platform utils", () => {
138140 "echo-args" ,
139141 "process.stdout.write(process.argv.slice(2).join(','));" ,
140142 ) ;
141- const { stdout } = await shimmedExecFile ( script , [ "a" , "b" , "c" ] ) ;
143+ const stdout = await new Promise < string > ( ( resolve , reject ) => {
144+ mod . execFile ( script , [ "a" , "b" , "c" ] , ( err , out ) =>
145+ err ? reject ( err ) : resolve ( out ) ,
146+ ) ;
147+ } ) ;
142148 expect ( stdout ) . toBe ( "a,b,c" ) ;
143149 } ) ;
144150
145151 it ( "does not rewrite non-.js files" , async ( ) => {
146- await expect ( shimmedExecFile ( "/nonexistent/binary" ) ) . rejects . toThrow (
147- "ENOENT" ,
148- ) ;
149- } ) ;
150-
151- it ( "preserves the callback form" , async ( ) => {
152- const script = path . join ( tmp , "echo.js" ) ;
153- const stdout = await new Promise < string > ( ( resolve , reject ) => {
154- mod . execFile ( script , ( err , out ) =>
155- err ? reject ( new Error ( err . message ) ) : resolve ( out ) ,
156- ) ;
157- } ) ;
158- expect ( stdout ) . toBe ( "ok" ) ;
152+ await expect (
153+ new Promise ( ( resolve , reject ) => {
154+ mod . execFile ( "/nonexistent/binary" , ( err , out ) =>
155+ err ? reject ( err ) : resolve ( out ) ,
156+ ) ;
157+ } ) ,
158+ ) . rejects . toThrow ( "ENOENT" ) ;
159159 } ) ;
160160
161161 it ( "does not touch spawn" , ( ) => {
0 commit comments