salix-front/generate-tests.js

46 lines
1.5 KiB
JavaScript

const fs = require('fs');
const path = require('path');
// Ruta de la carpeta de componentes
// Ruta de la carpeta de pruebas
// ['common', 'ui'].forEach((folder) => {
generateTest('folder');
// });
function generateTest(type) {
const componentsDir = path.join(__dirname, `src/components`);
const testDir = path.join(__dirname, `test/cypress/components`);
// Leer todos los archivos en la carpeta de componentes
fs.readdir(componentsDir, (err, files) => {
if (err) return console.error('Error leyendo la carpeta de componentes:', err);
// Filtrar solo archivos .vue
const vueFiles = files.filter((file) => file.endsWith('.vue'));
vueFiles.forEach((file) => {
const componentName = path.basename(file, '.vue');
const testFileName = `${componentName}.spec.js`;
const testFilePath = path.join(testDir, testFileName);
// Contenido del archivo de prueba
const testFileContent = `
import ${componentName} from 'src/components/${file}';
describe.skip('<${componentName} />', () => {
it('TODO: boilerplate', () => {
// see: https://on.cypress.io/mounting-vue
cy.createWrapper(${componentName});
});
});
`;
// Escribir el archivo de prueba
fs.writeFile(testFilePath, testFileContent, (err) => {
if (err)
return console.error('Error escribiendo el archivo de prueba:', err);
console.log(`Archivo de prueba generado: ${testFileName}`);
});
});
});
}