fix(js): skip watcher if --watch=false for node executor (#17887)
This commit is contained in:
parent
0608318449
commit
b7d283bced
@ -3,8 +3,11 @@ import {
|
|||||||
checkFilesExist,
|
checkFilesExist,
|
||||||
cleanupProject,
|
cleanupProject,
|
||||||
newProject,
|
newProject,
|
||||||
|
promisifiedTreeKill,
|
||||||
|
readFile,
|
||||||
runCLI,
|
runCLI,
|
||||||
runCLIAsync,
|
runCLIAsync,
|
||||||
|
runCommandUntil,
|
||||||
tmpProjPath,
|
tmpProjPath,
|
||||||
uniq,
|
uniq,
|
||||||
updateFile,
|
updateFile,
|
||||||
@ -24,12 +27,21 @@ describe('Node Applications + esbuild', () => {
|
|||||||
checkFilesDoNotExist(`apps/${app}/webpack.config.js`);
|
checkFilesDoNotExist(`apps/${app}/webpack.config.js`);
|
||||||
|
|
||||||
updateFile(`apps/${app}/src/main.ts`, `console.log('Hello World!');`);
|
updateFile(`apps/${app}/src/main.ts`, `console.log('Hello World!');`);
|
||||||
await runCLIAsync(`build ${app}`);
|
|
||||||
|
|
||||||
|
const p = await runCommandUntil(`serve ${app} --watch=false`, (output) => {
|
||||||
|
process.stdout.write(output);
|
||||||
|
return output.includes(`Hello World!`);
|
||||||
|
});
|
||||||
checkFilesExist(`dist/apps/${app}/main.js`);
|
checkFilesExist(`dist/apps/${app}/main.js`);
|
||||||
const result = execSync(`node dist/apps/${app}/main.js`, {
|
|
||||||
cwd: tmpProjPath(),
|
// Check that updating the file won't trigger a rebuild since --watch=false.
|
||||||
}).toString();
|
updateFile(`apps/${app}/src/main.ts`, `console.log('Bye1');`);
|
||||||
expect(result).toMatch(/Hello World!/);
|
await new Promise((res) => setTimeout(res, 2000));
|
||||||
|
|
||||||
|
expect(readFile(`dist/apps/${app}/apps/${app}/src/main.js`)).not.toContain(
|
||||||
|
`Bye!`
|
||||||
|
);
|
||||||
|
|
||||||
|
await promisifiedTreeKill(p.pid, 'SIGKILL');
|
||||||
}, 300_000);
|
}, 300_000);
|
||||||
});
|
});
|
||||||
|
|||||||
@ -213,6 +213,7 @@ export async function* nodeExecutor(
|
|||||||
tasks.push(task);
|
tasks.push(task);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (options.watch) {
|
||||||
const stopWatch = await daemonClient.registerFileWatcher(
|
const stopWatch = await daemonClient.registerFileWatcher(
|
||||||
{
|
{
|
||||||
watchProjects: [context.projectName],
|
watchProjects: [context.projectName],
|
||||||
@ -253,6 +254,7 @@ export async function* nodeExecutor(
|
|||||||
stopAllTasks('SIGHUP');
|
stopAllTasks('SIGHUP');
|
||||||
process.exit(128 + 1);
|
process.exit(128 + 1);
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
await addToQueue();
|
await addToQueue();
|
||||||
await processQueue();
|
await processQueue();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user