import pytest @pytest.mark.skip_debug() def test_commit_creates_commit(git_sandbox, git_repo, git_author): git_sandbox.set_timeout(20) author_name, author_email = git_author git_sandbox.files.write(f"{git_repo}/README.md", "hello\n") git_sandbox.git.add(git_repo, all=True) git_sandbox.git.commit( git_repo, message="Initial commit", author_name=author_name, author_email=author_email, ) message = git_sandbox.commands.run( f'git -C "{git_repo}" log -1 --pretty=%B' ).stdout.strip() assert message == "Initial commit" @pytest.mark.skip_debug() def test_commit_uses_config_for_missing_author(git_sandbox, git_repo, git_author): _, expected_email = git_author git_sandbox.files.write(f"{git_repo}/README.md", "hello\n") git_sandbox.git.add(git_repo, all=True) override_name = "Override Bot" git_sandbox.git.commit( git_repo, message="Partial author commit", author_name=override_name, ) author_name = git_sandbox.commands.run( f'git -C "{git_repo}" log -1 --pretty=%an' ).stdout.strip() logged_email = git_sandbox.commands.run( f'git -C "{git_repo}" log -1 --pretty=%ae' ).stdout.strip() assert author_name == override_name assert logged_email == expected_email