UNPKG

tlpp-dev-cli

Version:

CLI para agilizar o processo de criaΓ§Γ£o de projetos em TLPP e ADVPR

42 lines (41 loc) β€’ 1.82 kB
import chalk from 'chalk'; import logSymbols from 'log-symbols'; import ora from 'ora'; import { generateCases } from './generate-cases.js'; import { generateGroup } from './generate-group.js'; import { generateSuite } from './generate-suite.js'; export class GenerateService { currentDirectory = process.cwd(); api() { console.log('api'); } async tests(name) { console.log(''); const spinnerSuite = ora('Gerando Suite').start(); await this.delayedGenerate(name, generateSuite); spinnerSuite.succeed(); const spinnerGroup = ora('Gerando Grupo').start(); await this.delayedGenerate(name, generateGroup); spinnerGroup.succeed(); const spinnerCases = ora('Gerando Cases').start(); await this.delayedGenerate(name, generateCases); spinnerCases.succeed(); this.successFeedback(name); } async delayedGenerate(name, generate) { // eslint-disable-next-line no-promise-executor-return await new Promise(resolve => setTimeout(resolve, 1000)); await generate(this.currentDirectory, name); } successFeedback(name) { console.log(`\n${logSymbols.success} Pastas e arquivos foram criados com sucesso:\n`); console.log(`${chalk.green('πŸ“ Testes')} ${chalk.yellowBright('(ADVPR)')}`); console.log(`${chalk.green('β”œβ”€β”€ πŸ“ Suite')}`); console.log(`${chalk.green(`β”‚ β”œβ”€β”€ πŸ“„ ${name}TestSuite.prw`)}`); console.log(`${chalk.green('β”œβ”€β”€ πŸ“ Grupo')}`); console.log(`${chalk.green(`β”‚ β”œβ”€β”€ πŸ“„ ${name}TestGroup.prw`)}`); console.log(`${chalk.green('└── πŸ“ Casos de Teste')}`); console.log(`${chalk.green(` β”œβ”€β”€ πŸ“„ ${name}TestCases.prw`)}`); console.log('\n'); } }