hunk.code_window:   glob.sync(path.join(projectRoot, '/**/*.ts'))
       .forEach(tsPath => {
         findLoadChildren(tsPath).forEach(moduleName => {
           const fileName = path.resolve(path.dirname(tsPath), moduleName) + '.ts';
           if (fs.existsSync(fileName)) {
             // Put the moduleName as relative to the main.ts.
  
hunk.labels: keep keep keep replace keep keep
hunk.after_edit:         const fileName = path.resolve(projectRoot, moduleName) + '.ts';
  
hunk.file_path: addon/ng2/models/find-lazy-modules.ts
hunk.type: replace
file: import * as mockFs from 'mock-fs';
  import {stripIndents} from 'common-tags';
  import {expect} from 'chai';
  import {join} from 'path';
  
  import {findLazyModules} from '../../addon/ng2/models/find-lazy-modules';
  
  
  describe('find-lazy-module', () => {
    beforeEach(() => {
      mockFs({
        'project-root': {
          'fileA.ts': stripIndents`
            const r1 = {
              "loadChildren": "moduleA"
            };
            const r2 = {
              loadChildren: "moduleB"
            };
            const r3 = {
              'loadChildren': 'moduleC'
            };
            const r4 = {
              "loadChildren": 'app/+workspace/+settings/settings.module#SettingsModule'
            };
            const r5 = {
              loadChildren: 'unexistentModule'
            };
          `,
          // Create those files too as they have to exist.
          'moduleA.ts': '',
          'moduleB.ts': '',
          'moduleC.ts': '',
          'moduleD.ts': '',
          'app': { '+workspace': { '+settings': { 'settings.module.ts': '' } } }
        }
      });
    });
    afterEach(() => mockFs.restore());
  
    it('works', () => {
      expect(findLazyModules('project-root')).to.eql([
        './' + join('.', 'moduleA.ts'),
        './' + join('.', 'moduleB.ts'),
        './' + join('.', 'moduleC.ts'),
        './' + join('.', 'app/+workspace/+settings/settings.module.ts')
      ]);
    });
  });
  