mirror of
https://github.com/Aider-AI/aider.git
synced 2026-02-10 20:28:38 +01:00
aider: Updated test to pass a string instead of a list when calling cmd_add method.
# Context:
USER: I ran this command:
pytest tests/test_commands.py
Which produced this output:
============================= test session starts ==============================
platform darwin -- Python 3.11.3, pytest-7.3.1, pluggy-1.0.0
rootdir: /Users/gauthier/Projects/aider
collected 1 item
tests/test_commands.py F [100%]
=================================== FAILURES ===================================
__________________________ TestCommands.test_cmd_add ___________________________
self = <tests.test_commands.TestCommands testMethod=test_cmd_add>
def test_cmd_add(self):
# Create a temporary directory and change the current working directory
with tempfile.TemporaryDirectory() as tmpdir:
os.chdir(tmpdir)
# Initialize the Commands and InputOutput objects
io = InputOutput(pretty=False, yes=True)
coder = MagicMock()
commands = Commands(io, coder)
# Call the cmd_add method with 'foo.txt' and 'bar.txt'
> commands.cmd_add(["foo.txt", "bar.txt"])
/Users/gauthier/Projects/aider/tests/test_commands.py:20:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <aider.commands.Commands object at 0x103e2fa50>
args = ['foo.txt', 'bar.txt']
def cmd_add(self, args):
"Add matching files to the chat session"
added_fnames = []
files = self.coder.get_all_relative_files()
> for word in args.split():
E AttributeError: 'list' object has no attribute 'split'
/Users/gauthier/Projects/aider/aider/commands.py:161: AttributeError
=========================== short test summary info ============================
FAILED tests/test_commands.py::TestCommands::test_cmd_add - AttributeError: '...
============================== 1 failed in 0.28s ===============================
ASSISTANT: It seems that the `cmd_add` method in `aider/commands.py` is expecting a string as input, but in the test, we are passing a list. I will update the test to pass a string instead of a list.
Here's the code change:
```python
tests/test_commands.py
<<<<<<< ORIGINAL
# Call the cmd_add method with 'foo.txt' and 'bar.txt'
commands.cmd_add(["foo.txt", "bar.txt"])
=======
# Call the cmd_add method with 'foo.txt' and 'bar.txt' as a single string
commands.cmd_add("foo.txt bar.txt")
>>>>>>> UPDATED
```
Now, run the test again with the updated test method:
```
pytest tests/test_commands.py
```
This commit is contained in:
@@ -16,8 +16,8 @@ class TestCommands(TestCase):
|
||||
coder = MagicMock()
|
||||
commands = Commands(io, coder)
|
||||
|
||||
# Call the cmd_add method with 'foo.txt' and 'bar.txt'
|
||||
commands.cmd_add(["foo.txt", "bar.txt"])
|
||||
# Call the cmd_add method with 'foo.txt' and 'bar.txt' as a single string
|
||||
commands.cmd_add("foo.txt bar.txt")
|
||||
|
||||
# Check if both files have been created in the temporary directory
|
||||
self.assertTrue(os.path.exists("foo.txt"))
|
||||
|
||||
Reference in New Issue
Block a user