32 lines
880 B
TypeScript
32 lines
880 B
TypeScript
import { Rule, SchematicContext, Tree } from '@angular-devkit/schematics';
|
|
|
|
function fixKarmaConf(host: Tree, context: SchematicContext) {
|
|
if (!host.exists('karma.conf.js')) {
|
|
context.logger.warn(`Could not find ./karma.conf.js`);
|
|
context.logger.warn(
|
|
'It is recommended that your karma configuration sets autoWatch: true'
|
|
);
|
|
return host;
|
|
}
|
|
|
|
const originalContent = host.read('karma.conf.js').toString();
|
|
const content = originalContent.replace(
|
|
'autoWatch: false',
|
|
'autoWatch: true'
|
|
);
|
|
if (content.includes('autoWatch: true')) {
|
|
host.overwrite('karma.conf.js', content);
|
|
} else {
|
|
context.logger.warn('Could not alter ./karma.conf.js');
|
|
context.logger.warn(
|
|
'It is recommended that your karma configuration sets autoWatch: true'
|
|
);
|
|
}
|
|
|
|
return host;
|
|
}
|
|
|
|
export default function(): Rule {
|
|
return fixKarmaConf;
|
|
}
|