revert changes to get_ident_filename_matches()

This commit is contained in:
Paul Gauthier 2024-11-26 06:41:08 -08:00
parent 47b013b034
commit 01c7793e90
2 changed files with 0 additions and 69 deletions

View file

@ -582,20 +582,7 @@ class Coder:
def get_ident_filename_matches(self, idents): def get_ident_filename_matches(self, idents):
all_fnames = defaultdict(set) all_fnames = defaultdict(set)
# Get all files that are already in chat or read-only
existing_files = set()
for fname in self.abs_fnames:
existing_files.add(Path(fname).name)
for fname in self.abs_read_only_fnames:
existing_files.add(Path(fname).name)
# Build map of base names to full relative paths
for fname in self.get_all_relative_files(): for fname in self.get_all_relative_files():
# Skip files that share names with existing files
if Path(fname).name in existing_files:
continue
base = Path(fname).with_suffix("").name.lower() base = Path(fname).with_suffix("").name.lower()
if len(base) >= 5: if len(base) >= 5:
all_fnames[base].add(fname) all_fnames[base].add(fname)

View file

@ -168,62 +168,6 @@ class TestCoder(unittest.TestCase):
self.assertEqual(coder.abs_fnames, set([str(fname.resolve())])) self.assertEqual(coder.abs_fnames, set([str(fname.resolve())]))
def test_get_ident_filename_matches_with_existing_files(self):
with GitTemporaryDirectory():
io = InputOutput(pretty=False, yes=True)
coder = Coder.create(self.GPT35, None, io)
# Create files with same name in different directories
fname1 = Path("dir1") / "test.py"
fname2 = Path("dir2") / "test.py"
fname3 = Path("dir3") / "other.py"
# Create the directories and files
for fname in [fname1, fname2, fname3]:
fname.parent.mkdir(parents=True, exist_ok=True)
fname.touch()
# Mock get_all_relative_files to return all files
mock = MagicMock()
mock.return_value = set([str(fname1), str(fname2), str(fname3)])
coder.get_all_relative_files = mock
# Add one of the test.py files to the chat
coder.add_rel_fname(str(fname1))
# Test that get_ident_filename_matches doesn't suggest the other test.py
matches = coder.get_ident_filename_matches(["test"])
self.assertNotIn(str(fname2), matches) # Should not suggest other test.py
self.assertIn(str(fname3), matches) # Should suggest other.py
def test_get_ident_filename_matches_with_read_only_files(self):
with GitTemporaryDirectory():
io = InputOutput(pretty=False, yes=True)
coder = Coder.create(self.GPT35, None, io)
# Create files with same name in different directories
fname1 = Path("dir1") / "test.py"
fname2 = Path("dir2") / "test.py"
fname3 = Path("dir3") / "other.py"
# Create the directories and files
for fname in [fname1, fname2, fname3]:
fname.parent.mkdir(parents=True, exist_ok=True)
fname.touch()
# Mock get_all_relative_files to return all files
mock = MagicMock()
mock.return_value = set([str(fname1), str(fname2), str(fname3)])
coder.get_all_relative_files = mock
# Add one test.py as a read-only file
coder.abs_read_only_fnames.add(str(fname1.resolve()))
# Test that get_ident_filename_matches doesn't suggest the other test.py
matches = coder.get_ident_filename_matches(["test"])
self.assertNotIn(str(fname2), matches) # Should not suggest other test.py
self.assertIn(str(fname3), matches) # Should suggest other.py
def test_check_for_file_mentions_read_only(self): def test_check_for_file_mentions_read_only(self):
with GitTemporaryDirectory(): with GitTemporaryDirectory():
io = InputOutput( io = InputOutput(