loqatevars
Version:
Locate JavaScript files with 'const' or 'process.env' usage in LLM-generated codebases
26 lines (21 loc) • 827 B
JavaScript
const fs = require('fs-extra');
const path = require('path');
const os = require('os');
const { validateDirectory } = require('../lib/utils');
describe('validateDirectory', () => {
let tempFile;
afterEach(() => {
if (tempFile && fs.existsSync(tempFile)) {
fs.removeSync(tempFile); // cleanup created test file
}
tempFile = null;
});
test('rejects for non-string directory argument', async () => {
await expect(validateDirectory(123)).rejects.toMatchObject({ code: 'INVALID_DIRECTORY' });
});
test('rejects when path is an existing file', async () => {
tempFile = path.join(os.tmpdir(), `temp-file-${Date.now()}`);
fs.writeFileSync(tempFile, 'test'); // create real file
await expect(validateDirectory(tempFile)).rejects.toMatchObject({ code: 'PATH_NOT_DIRECTORY' });
});
});