fix file extension in "modify flow" temp files (#2478)
This commit is contained in:
parent
601d9ba36d
commit
5d3a64d747
|
@ -326,7 +326,7 @@ describe('modifyWithEditor', () => {
|
|||
consoleErrorSpy.mockRestore();
|
||||
});
|
||||
|
||||
it('should create temp files with correct naming', async () => {
|
||||
it('should create temp files with correct naming with extension', async () => {
|
||||
const testFilePath = path.join(tempDir, 'subfolder', 'test-file.txt');
|
||||
mockModifyContext.getFilePath = vi.fn().mockReturnValue(testFilePath);
|
||||
|
||||
|
@ -343,8 +343,31 @@ describe('modifyWithEditor', () => {
|
|||
const oldFilePath = writeFileCalls[0][0];
|
||||
const newFilePath = writeFileCalls[1][0];
|
||||
|
||||
expect(oldFilePath).toMatch(/gemini-cli-modify-test-file\.txt-old-\d+$/);
|
||||
expect(newFilePath).toMatch(/gemini-cli-modify-test-file\.txt-new-\d+$/);
|
||||
expect(oldFilePath).toMatch(/gemini-cli-modify-test-file-old-\d+\.txt$/);
|
||||
expect(newFilePath).toMatch(/gemini-cli-modify-test-file-new-\d+\.txt$/);
|
||||
expect(oldFilePath).toContain(`${tempDir}/gemini-cli-tool-modify-diffs/`);
|
||||
expect(newFilePath).toContain(`${tempDir}/gemini-cli-tool-modify-diffs/`);
|
||||
});
|
||||
|
||||
it('should create temp files with correct naming without extension', async () => {
|
||||
const testFilePath = path.join(tempDir, 'subfolder', 'test-file');
|
||||
mockModifyContext.getFilePath = vi.fn().mockReturnValue(testFilePath);
|
||||
|
||||
await modifyWithEditor(
|
||||
mockParams,
|
||||
mockModifyContext,
|
||||
'vscode' as EditorType,
|
||||
abortSignal,
|
||||
);
|
||||
|
||||
const writeFileCalls = (fs.writeFileSync as Mock).mock.calls;
|
||||
expect(writeFileCalls).toHaveLength(2);
|
||||
|
||||
const oldFilePath = writeFileCalls[0][0];
|
||||
const newFilePath = writeFileCalls[1][0];
|
||||
|
||||
expect(oldFilePath).toMatch(/gemini-cli-modify-test-file-old-\d+$/);
|
||||
expect(newFilePath).toMatch(/gemini-cli-modify-test-file-new-\d+$/);
|
||||
expect(oldFilePath).toContain(`${tempDir}/gemini-cli-tool-modify-diffs/`);
|
||||
expect(newFilePath).toContain(`${tempDir}/gemini-cli-tool-modify-diffs/`);
|
||||
});
|
||||
|
|
|
@ -58,15 +58,16 @@ function createTempFilesForModify(
|
|||
fs.mkdirSync(diffDir, { recursive: true });
|
||||
}
|
||||
|
||||
const fileName = path.basename(file_path);
|
||||
const ext = path.extname(file_path);
|
||||
const fileName = path.basename(file_path, ext);
|
||||
const timestamp = Date.now();
|
||||
const tempOldPath = path.join(
|
||||
diffDir,
|
||||
`gemini-cli-modify-${fileName}-old-${timestamp}`,
|
||||
`gemini-cli-modify-${fileName}-old-${timestamp}${ext}`,
|
||||
);
|
||||
const tempNewPath = path.join(
|
||||
diffDir,
|
||||
`gemini-cli-modify-${fileName}-new-${timestamp}`,
|
||||
`gemini-cli-modify-${fileName}-new-${timestamp}${ext}`,
|
||||
);
|
||||
|
||||
fs.writeFileSync(tempOldPath, currentContent, 'utf8');
|
||||
|
|
Loading…
Reference in New Issue