hunk.code_window: export default function() {
     const modulePath = join('src', 'app', 'app.module.ts');
     return ng('generate', 'component', 'test-component', '--export')
       .then(() => expectFileToMatch(modulePath, /exports: \[\n(\s*)  TestComponentComponent\n\1\]/))
       // Try to run the unit tests.
       .then(() => ng('test', '--watch=false'));
   }
hunk.labels: keep keep keep keep keep replace keep keep keep keep
hunk.after_edit:     .then(() => expectFileToMatch(modulePath, /exports: \[\r?\n(\s*)  TestComponentComponent\r?\n\1\]/))
  
hunk.file_path: tests/legacy-cli/e2e/tests/generate/component/component-module-export.ts
hunk.type: replace
file: /**
   * @license
   * Copyright Google Inc. All Rights Reserved.
   *
   * Use of this source code is governed by an MIT-style license that can be
   * found in the LICENSE file at https://angular.io/license
   */
  import { Diagnostics, formatDiagnostics } from '@angular/compiler-cli';
  import { DiagnosticCategory } from 'typescript';
  import { addError, addWarning } from '../webpack-diagnostics';
  
  export type DiagnosticsReporter = (diagnostics: Diagnostics) => void;
  
  export function createDiagnosticsReporter(
    compilation: import('webpack').compilation.Compilation,
  ): DiagnosticsReporter {
    return (diagnostics) => {
      for (const diagnostic of diagnostics) {
        const text = formatDiagnostics([diagnostic]);
        if (diagnostic.category === DiagnosticCategory.Error) {
          addError(compilation, text);
        } else {
          addWarning(compilation, text);
        }
      }
    };
  }
  