strapi/test/createTestApp.js

65 lines
1.2 KiB
JavaScript
Raw Normal View History

2019-03-06 19:19:33 +01:00
const { cleanTestApp, generateTestApp } = require('./helpers/testAppGenerator');
2019-05-06 19:48:49 +02:00
const yargs = require('yargs');
2019-03-06 19:19:33 +01:00
const appName = 'testApp';
const databases = {
mongo: {
client: 'mongo',
host: '127.0.0.1',
port: 27017,
database: 'strapi_test',
username: 'root',
password: 'strapi',
},
postgres: {
client: 'postgres',
host: '127.0.0.1',
port: 5432,
database: 'strapi_test',
username: 'strapi',
password: 'strapi',
},
mysql: {
client: 'mysql',
host: '127.0.0.1',
port: 3306,
database: 'strapi-test',
username: 'root',
password: 'root',
},
sqlite: {
client: 'sqlite',
filename: './tmp/data.db',
},
2019-03-06 19:19:33 +01:00
};
2019-05-06 19:48:49 +02:00
const main = async database => {
2019-03-06 19:19:33 +01:00
try {
await cleanTestApp(appName);
await generateTestApp({ appName, database });
} catch (error) {
console.error(error);
process.exit(1);
}
};
2019-05-06 19:48:49 +02:00
yargs
.command(
'$0 [databaseName]',
'Create test app',
yargs => {
yargs.positional('databaseName', {
choices: Object.keys(databases),
});
},
({ databaseName }) => {
if (databaseName) {
return main(databases[databaseName]);
}
return main(process.argv.slice(2).join(' '));
}
2019-05-06 19:48:49 +02:00
)
.help().argv;