feat: implement fuzzy search and replace functionality with Levenshtein distance
- Added `applySearchReplace` function to handle search and replace operations with fuzzy matching capabilities. - Introduced tests for various scenarios including fuzzy matching with typos, exact matches, and handling whitespace differences. - Created a parser for search/replace blocks to facilitate the new functionality. - Updated prompts for search-replace operations to clarify usage and examples. - Added utility functions for text normalization and language detection based on file extensions. - Implemented a minimal stdio MCP server for local testing with tools for adding numbers and printing environment variables.
This commit is contained in:
15
e2e-tests/turbo_edits_options.spec.ts
Normal file
15
e2e-tests/turbo_edits_options.spec.ts
Normal file
@@ -0,0 +1,15 @@
|
||||
import { test } from "./helpers/test_helper";
|
||||
|
||||
test("switching turbo edits saves the right setting", async ({ po }) => {
|
||||
await po.setUpDyadPro();
|
||||
const proModesDialog = await po.openProModesDialog({
|
||||
location: "home-chat-input-container",
|
||||
});
|
||||
await po.snapshotSettings();
|
||||
await proModesDialog.setTurboEditsMode("classic");
|
||||
await po.snapshotSettings();
|
||||
await proModesDialog.setTurboEditsMode("search-replace");
|
||||
await po.snapshotSettings();
|
||||
await proModesDialog.setTurboEditsMode("off");
|
||||
await po.snapshotSettings();
|
||||
});
|
||||
Reference in New Issue
Block a user