hunk.code_window: // DISABLED_FOR_IVY   These should pass but are currently not supported
   (veEnabled ? describe : xdescribe)('Extract i18n Target', () => {
     const extractionFile = join(normalize('src'), 'messages.xlf');
     let architect: Architect;
     beforeEach(async () => {
       await host.initialize().toPromise();
  
hunk.labels: keep keep replace replace keep keep keep keep keep
hunk.after_edit: describe('Extract i18n Target', () => {
  
hunk.file_path: packages/angular_devkit/build_angular/test/extract-i18n/works_spec_large.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 { Compiler, compilation } from 'webpack';
  import { HashFormat } from '../models/webpack-configs/utils';
  
  
  export interface RemoveHashPluginOptions {
    chunkNames: string[];
    hashFormat: HashFormat;
  }
  
  export class RemoveHashPlugin {
  
    constructor(private options: RemoveHashPluginOptions) { }
  
    apply(compiler: Compiler): void {
      compiler.hooks.compilation.tap('remove-hash-plugin', compilation => {
        const mainTemplate = compilation.mainTemplate as compilation.MainTemplate & {
          hooks: compilation.CompilationHooks;
        };
  
        mainTemplate.hooks.assetPath.tap('remove-hash-plugin',
          (path: string, data: { chunk?: { name: string } }) => {
            const chunkName = data.chunk && data.chunk.name;
            const { chunkNames, hashFormat } = this.options;
  
            if (chunkName && chunkNames.includes(chunkName)) {
              // Replace hash formats with empty strings.
              return path
                .replace(hashFormat.chunk, '')
                .replace(hashFormat.extract, '');
            }
  
            return path;
          },
        );
      });
    }
  }
  