Skip to content

Omit warning prefix in "Bad git executable" message #1816

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Feb 6, 2024
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Write Git instead of type(self.git)
Some tests in test_git.TestGit used type(self.git) while others
used Git. This changes them all to use Git. The distinction could
be relevant if self.git were set as a mock, but this is not being
done, and if it were, it is not obvious which would be preferred.
The intention of the existing tests is to test attributes of the
Git class, so this picks that simpler expression.
  • Loading branch information
EliahKagan committed Feb 6, 2024
commit db361743a52455ce064d2fbcb766ec9979960d5a
16 changes: 8 additions & 8 deletions test/test_git.py
Original file line number Diff line number Diff line change
Expand Up @@ -327,7 +327,7 @@ def test_git_exc_name_is_git(self):
def test_cmd_override(self):
"""Directly set bad GIT_PYTHON_GIT_EXECUTABLE causes git operations to raise."""
bad_path = osp.join("some", "path", "which", "doesn't", "exist", "gitbinary")
with mock.patch.object(type(self.git), "GIT_PYTHON_GIT_EXECUTABLE", bad_path):
with mock.patch.object(Git, "GIT_PYTHON_GIT_EXECUTABLE", bad_path):
with self.assertRaises(GitCommandNotFound) as ctx:
self.git.version()
self.assertEqual(ctx.exception.command, [bad_path, "version"])
Expand All @@ -341,7 +341,7 @@ def test_initial_refresh_from_bad_git_path_env_quiet(self, case):
"GIT_PYTHON_REFRESH": mode,
}
with _rollback_refresh():
type(self.git).GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.
Git.GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.

with mock.patch.dict(os.environ, set_vars):
refresh()
Expand All @@ -356,7 +356,7 @@ def test_initial_refresh_from_bad_git_path_env_warn(self, case):
"GIT_PYTHON_REFRESH": mode,
}
with _rollback_refresh():
type(self.git).GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.
Git.GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.

with mock.patch.dict(os.environ, env_vars):
with self.assertLogs(cmd.__name__, logging.CRITICAL) as ctx:
Expand All @@ -375,7 +375,7 @@ def test_initial_refresh_from_bad_git_path_env_error(self, case):
"GIT_PYTHON_REFRESH": mode,
}
with _rollback_refresh():
type(self.git).GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.
Git.GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.

with mock.patch.dict(os.environ, env_vars):
with self.assertRaisesRegex(ImportError, r"\ABad git executable.\n"):
Expand All @@ -386,7 +386,7 @@ def test_initial_refresh_from_good_absolute_git_path_env(self):
absolute_path = shutil.which("git")

with _rollback_refresh():
type(self.git).GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.
Git.GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.

with mock.patch.dict(os.environ, {"GIT_PYTHON_GIT_EXECUTABLE": absolute_path}):
refresh()
Expand All @@ -397,8 +397,8 @@ def test_initial_refresh_from_good_relative_git_path_env(self):
with _rollback_refresh():
# Set the fallback to a string that wouldn't work and isn't "git", so we are
# more likely to detect if "git" is not set from the environment variable.
with mock.patch.object(type(self.git), "git_exec_name", ""):
type(self.git).GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.
with mock.patch.object(Git, "git_exec_name", ""):
Git.GIT_PYTHON_GIT_EXECUTABLE = None # Simulate startup.

# Now observe if setting the environment variable to "git" takes effect.
with mock.patch.dict(os.environ, {"GIT_PYTHON_GIT_EXECUTABLE": "git"}):
Expand Down Expand Up @@ -442,7 +442,7 @@ def test_refresh_from_good_relative_git_path_env(self):
"""Good relative path from environment is kept relative and set."""
with _rollback_refresh():
# Set as the executable name a string that wouldn't work and isn't "git".
type(self.git).GIT_PYTHON_GIT_EXECUTABLE = ""
Git.GIT_PYTHON_GIT_EXECUTABLE = ""

# Now observe if setting the environment variable to "git" takes effect.
with mock.patch.dict(os.environ, {"GIT_PYTHON_GIT_EXECUTABLE": "git"}):
Expand Down