diff --git a/integration/ngcc/test.sh b/integration/ngcc/test.sh index c9f5261466..c6d4d33e57 100755 --- a/integration/ngcc/test.sh +++ b/integration/ngcc/test.sh @@ -7,7 +7,9 @@ PATH=$PATH:$(npm bin) ivy-ngcc --help # node --inspect-brk $(npm bin)/ivy-ngcc -f esm2015 -ivy-ngcc +# Run ngcc and check it logged compilation output as expected +ivy-ngcc | grep 'Compiling' +if [[ $? != 0 ]]; then exit 1; fi # Did it add the appropriate build markers? @@ -60,7 +62,12 @@ ivy-ngcc if [[ $? != 0 ]]; then exit 1; fi # Can it be safely run again (as a noop)? -ivy-ngcc +# And check that it logged skipping compilation as expected +ivy-ngcc | grep 'Skipping' +if [[ $? != 0 ]]; then exit 1; fi + +# Check that running it with logging level error outputs nothing +ivy-ngcc -l error | grep '.' && exit 1 # Does running it with --formats fail? ivy-ngcc --formats fesm2015 && exit 1 diff --git a/packages/compiler-cli/ngcc/main-ngcc.ts b/packages/compiler-cli/ngcc/main-ngcc.ts index a5ae11dc8e..b4ec014e37 100644 --- a/packages/compiler-cli/ngcc/main-ngcc.ts +++ b/packages/compiler-cli/ngcc/main-ngcc.ts @@ -60,14 +60,14 @@ if (require.main === module) { const propertiesToConsider: string[] = options['p']; const targetEntryPointPath = options['t'] ? options['t'] : undefined; const compileAllFormats = !options['first-only']; - const logLevel = options['l'] as keyof typeof LogLevel; + const logLevel = options['l'] as keyof typeof LogLevel | undefined; try { mainNgcc({ basePath: baseSourcePath, propertiesToConsider, targetEntryPointPath, compileAllFormats, - logger: new ConsoleLogger(LogLevel[logLevel]), + logger: logLevel && new ConsoleLogger(LogLevel[logLevel]), }); process.exitCode = 0; } catch (e) {