diff --git a/aider/main.py b/aider/main.py index 9e614ecee..d1ccb232f 100644 --- a/aider/main.py +++ b/aider/main.py @@ -270,7 +270,9 @@ def main(args=None, input=None, output=None): "No OpenAI API key provided. Use --openai-api-key or setx OPENAI_API_KEY." ) else: - io.tool_error("No OpenAI API key provided. Use --openai-api-key or env OPENAI_API_KEY.") + io.tool_error( + "No OpenAI API key provided. Use --openai-api-key or export OPENAI_API_KEY." + ) return 1 main_model = models.Model(args.model) diff --git a/tests/test_main.py b/tests/test_main.py index 5fd752ca7..126d6827f 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -9,6 +9,7 @@ from unittest.mock import patch from prompt_toolkit.input import DummyInput from prompt_toolkit.output import DummyOutput +from aider.dump import dump # noqa: F401 from aider.main import main @@ -41,6 +42,23 @@ class TestMain(TestCase): main(["--yes", "foo.txt"], input=DummyInput(), output=DummyOutput()) self.assertTrue(os.path.exists("foo.txt")) + def test_main_with_git_config_yml(self): + subprocess.run(["git", "init"]) + subprocess.run(["git", "config", "user.email", "dummy@example.com"]) + subprocess.run(["git", "config", "user.name", "Dummy User"]) + + Path(".aider.conf.yml").write_text("no-auto-commits: true\n") + with patch("aider.main.Coder.create") as MockCoder: + main([], input=DummyInput(), output=DummyOutput()) + _, kwargs = MockCoder.call_args + assert kwargs["auto_commits"] is False + + Path(".aider.conf.yml").write_text("auto-commits: true\n") + with patch("aider.main.Coder.create") as MockCoder: + main([], input=DummyInput(), output=DummyOutput()) + _, kwargs = MockCoder.call_args + assert kwargs["auto_commits"] is True + def test_main_with_empty_git_dir_new_subdir_file(self): subprocess.run(["git", "init"]) subprocess.run(["git", "config", "user.email", "dummy@example.com"])