diff --git a/packages/create-freesewing-pattern/lib/index.js b/packages/create-freesewing-pattern/lib/index.js index ff76a6f4504..192be6da411 100644 --- a/packages/create-freesewing-pattern/lib/index.js +++ b/packages/create-freesewing-pattern/lib/index.js @@ -35,6 +35,7 @@ module.exports = async () => { repo: program.repo, manager: program.manager, template: program.template, + templatePath: program.templatePath, skipPrompts: program.skipPrompts, git: program.git } diff --git a/packages/create-freesewing-pattern/lib/prompt-library-params.js b/packages/create-freesewing-pattern/lib/prompt-library-params.js index b01bbd71a43..e6e0c92f17e 100644 --- a/packages/create-freesewing-pattern/lib/prompt-library-params.js +++ b/packages/create-freesewing-pattern/lib/prompt-library-params.js @@ -78,6 +78,7 @@ module.exports = async (opts) => { type: 'input', name: 'templatePath', message: 'Template Path', + default: opts.templatePath, when: ({ template }) => template === 'custom', validate: input => new Promise(resolve => { const fullPath = path.resolve(process.cwd(), input) diff --git a/packages/create-freesewing-pattern/lib/prompt-library-params.test.js b/packages/create-freesewing-pattern/lib/prompt-library-params.test.js new file mode 100644 index 00000000000..3354a2716cd --- /dev/null +++ b/packages/create-freesewing-pattern/lib/prompt-library-params.test.js @@ -0,0 +1,25 @@ +'use strict' + +const { test } = require('ava') + +const promptLibraryParams = require('./prompt-library-params') + +const opts = { + name: 'my-custom-template', + author: 'nala', + description: 'this is a auto-generated test module. please ignore.', + repo: 'nala/my-custom-template', + license: 'GPL', + manager: 'yarn', + template: 'custom', + templatePath: './template/default', + git: true +} + +test('passed options are returned when skipPrompts is true', async t => { + const result = await promptLibraryParams(Object.assign({}, opts, { skipPrompts: true })) + Object.entries(opts).forEach(opt => { + // console.log(`comparing passed in option ${opt[0]}:${opt[1]} to returned option ${result[opt[0]]}`) + t.is(opt[1], result[opt[0]]) + }) +})