hunk.code_window:     async readFile() {
         return inputData;
       },
       async writeFile(path: string, data: string) {
         try {
           const testCase = readFileSync(join(__dirname, 'test', 'cases', path) + '.json', 'utf8');
           expect(data).toEqual(testCase);
         } catch (e) {
           fail(`Unable to load test case '${path}': ${e.message || e}`);
         }
  
hunk.labels: keep keep keep keep keep replace keep keep keep keep
hunk.after_edit:         const testCase = readFileSync(
             require.resolve(join(__dirname, 'test', 'cases', path) + '.json'), 'utf8');
  
hunk.file_path: packages/angular_devkit/core/src/workspace/json/writer_spec.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 { TestBed, async } from '@angular/core/testing';
  import { AppComponent } from './app.component';
  describe('AppComponent', () => {
    beforeEach(async(() => {
      TestBed.configureTestingModule({
        declarations: [
          AppComponent
        ],
      }).compileComponents();
    }));
    it('should create the app', async(() => {
      const fixture = TestBed.createComponent(AppComponent);
      const app = fixture.debugElement.componentInstance;
      expect(app).toBeTruthy();
    }));
    it(`should have as title 'app'`, async(() => {
      const fixture = TestBed.createComponent(AppComponent);
      const app = fixture.debugElement.componentInstance;
      expect(app.title).toEqual('app');
    }));
    it('should render title in a h1 tag', async(() => {
      const fixture = TestBed.createComponent(AppComponent);
      fixture.detectChanges();
      const compiled = fixture.debugElement.nativeElement;
      expect(compiled.querySelector('h1').textContent).toContain('Welcome to app!');
    }));
  });
  