Files

36 lines
1.1 KiB
JavaScript
Raw Permalink Normal View History

const { writeFile } = require("fs/promises");
const { join } = require("path");
const { splitDirectoryName } = require("./helpers");
async function writeExerciseSpec(exercisePath) {
const { exerciseName } = splitDirectoryName(exercisePath);
const isSolutionFile = exercisePath.includes("/solution");
const trueExerciseName = isSolutionFile
? `${exerciseName}-solution`
: exerciseName;
const exerciseSpecContent = `const ${exerciseName} = require('./${trueExerciseName}');
describe('${exerciseName}', () => {
test('First test description', () => {
// Replace this comment with any other necessary code, and update the expect line as necessary
expect(${exerciseName}()).toBe('');
});
test${isSolutionFile ? "" : ".skip"}('Second test description', () => {
// Replace this comment with any other necessary code, and update the expect line as necessary
expect(${exerciseName}()).toBe('');
});
});
`;
await writeFile(
join(exercisePath, `${trueExerciseName}.spec.js`),
exerciseSpecContent
);
}
module.exports = { writeExerciseSpec };