mirror of
https://github.com/pacnpal/Roo-Code.git
synced 2025-12-20 12:21:13 -05:00
Merge pull request #136 from RooVetGit/fix_line_number_stripping
Bugfix to strip line numbers with leading space
This commit is contained in:
@@ -592,6 +592,26 @@ this.init();
|
||||
}
|
||||
})
|
||||
|
||||
it('should strip line numbers with leading spaces', () => {
|
||||
const originalContent = 'function test() {\n return true;\n}\n'
|
||||
const diffContent = `test.ts
|
||||
<<<<<<< SEARCH
|
||||
1 | function test() {
|
||||
2 | return true;
|
||||
3 | }
|
||||
=======
|
||||
1 | function test() {
|
||||
2 | return false;
|
||||
3 | }
|
||||
>>>>>>> REPLACE`
|
||||
|
||||
const result = strategy.applyDiff(originalContent, diffContent)
|
||||
expect(result.success).toBe(true)
|
||||
if (result.success) {
|
||||
expect(result.content).toBe('function test() {\n return false;\n}\n')
|
||||
}
|
||||
})
|
||||
|
||||
it('should not strip when not all lines have numbers in either section', () => {
|
||||
const originalContent = 'function test() {\n return true;\n}\n'
|
||||
const diffContent = `test.ts
|
||||
|
||||
@@ -193,12 +193,12 @@ Result:
|
||||
// Strip line numbers from search and replace content if every line starts with a line number
|
||||
const hasLineNumbers = (content: string) => {
|
||||
const lines = content.split(/\r?\n/);
|
||||
return lines.length > 0 && lines.every(line => /^\d+\s+\|(?!\|)/.test(line));
|
||||
return lines.length > 0 && lines.every(line => /^\s*\d+\s+\|(?!\|)/.test(line));
|
||||
};
|
||||
|
||||
if (hasLineNumbers(searchContent) && hasLineNumbers(replaceContent)) {
|
||||
const stripLineNumbers = (content: string) => {
|
||||
return content.replace(/^\d+\s+\|(?!\|)/gm, '');
|
||||
return content.replace(/^\s*\d+\s+\|(?!\|)/gm, '');
|
||||
};
|
||||
|
||||
searchContent = stripLineNumbers(searchContent);
|
||||
|
||||
Reference in New Issue
Block a user