Использование run.inDir () для установки целевого каталога генератора не работает - PullRequest
0 голосов
/ 01 мая 2019

У меня есть простой генератор yeoman, который генерирует каталог с некоторыми файлами. В моем тесте я использую .inDir (path.join (__dirname, testDirectoryName)), чтобы установить конкретный каталог для генератора, чтобы установить результаты, но он генерирует каталог и файлы в своем корневом каталоге (где расположен генератор).

Я также пробовал без .inDir (), и результаты отображаются во временной папке, как и ожидалось. Но это не хорошо для нашего теста.

before(() => {
  return helpers.run(path.join(__dirname, '../generators/app'))
    .inDir(path.join(__dirname, testDirectoryName))
    .withOptions({
      projectPath: projectPath,
      projectName: projectName,
      configPath: configFilePath,
      'skip-install': true
    })
    .withPrompts({moduleName: "Yes"});
});

ожидаемый результат:

  • генератор-х
    • testDirectoryName
      • Projectname
        • file1
        • file2
        • 1019 * file3 *

результат:

  • генератор-х
    • testDirectoryName
    • Projectname
      • file1
      • file2
      • file3
...