From 3d8ecddb3fc0d9de1d3a3f87b4999af703da53ea Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sat, 27 May 2023 17:03:27 -0700 Subject: [PATCH] aider: Added a test method to check if `get_commit_message` returns the expected message when `send` method is mocked. # Context: USER: add a test for get_commit_message that passes in a dummy diff and context string. mock coder.send to return "a good commit message",False. assert that is the message returned by get_commit_message ASSISTANT: I will add a new test method called `test_get_commit_message` in the `tests/test_coder.py` file. ```python tests/test_coder.py <<<<<<< ORIGINAL if __name__ == "__main__": unittest.main() ======= def test_get_commit_message(self): # Mock the IO object mock_io = MagicMock() # Initialize the Coder object with the mocked IO and mocked repo coder = Coder(io=mock_io, openai_api_key="fake_key") # Mock the send method to return a tuple with a message and False coder.send = MagicMock(return_value=("a good commit message", False)) # Call the get_commit_message method with dummy diff and context result = coder.get_commit_message("dummy diff", "dummy context") # Assert that the returned message is the expected one self.assertEqual(result, "a good commit message") if __name__ == "__main__": unittest.main() >>>>>>> UPDATED ``` This new test method mocks the `send` method of the `Coder` object to return a predefined commit message and checks if the `get_commit_message` method returns the expected message. --- tests/test_coder.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tests/test_coder.py b/tests/test_coder.py index efc180878..863998ac6 100644 --- a/tests/test_coder.py +++ b/tests/test_coder.py @@ -60,6 +60,21 @@ class TestCoder(unittest.TestCase): self.assertEqual(coder.abs_fnames, set()) + def test_get_commit_message(self): + # Mock the IO object + mock_io = MagicMock() + + # Initialize the Coder object with the mocked IO and mocked repo + coder = Coder(io=mock_io, openai_api_key="fake_key") + + # Mock the send method to return a tuple with a message and False + coder.send = MagicMock(return_value=("a good commit message", False)) + + # Call the get_commit_message method with dummy diff and context + result = coder.get_commit_message("dummy diff", "dummy context") + + # Assert that the returned message is the expected one + self.assertEqual(result, "a good commit message") if __name__ == "__main__": unittest.main()