Minor fixups

This commit is contained in:
Anthony Sottile
2017-02-23 13:11:40 -08:00
parent 478b0c70d8
commit dbd131f646
4 changed files with 22 additions and 18 deletions

View File

@@ -39,7 +39,7 @@ def is_previous_pre_commit(filename):
def install(
runner, overwrite=False, hooks=False, hook_type='pre-commit',
skip_on_missing_conf=False
skip_on_missing_conf=False,
):
"""Install the pre-commit hooks."""
hook_path = runner.get_hook_path(hook_type)
@@ -78,7 +78,7 @@ def install(
sys_executable=sys.executable,
hook_type=hook_type,
pre_push=pre_push_contents,
skip_on_missing_conf=skip_on_missing_conf
skip_on_missing_conf=skip_on_missing_conf,
)
pre_commit_file_obj.write(contents)
make_executable(hook_path)

View File

@@ -189,7 +189,7 @@ def main(argv=None):
return install(
runner, overwrite=args.overwrite, hooks=args.install_hooks,
hook_type=args.hook_type,
skip_on_missing_conf=args.allow_missing_config
skip_on_missing_conf=args.allow_missing_config,
)
elif args.command == 'install-hooks':
return install_hooks(runner)

View File

@@ -41,13 +41,13 @@ fi
CONF_FILE=$(git rev-parse --show-toplevel)"/.pre-commit-config.yaml"
if [ ! -f $CONF_FILE ]; then
if [ $SKIP_ON_MISSING_CONF = true ] || [ ! -z $PRE_COMMIT_ALLOW_NO_CONFIG ]; then
echo '`.pre-commit-config.yaml` config file not found. Skipping `pre-commit`.'
exit $retv
echo '`.pre-commit-config.yaml` config file not found. Skipping `pre-commit`.'
exit $retv
else
echo 'No .pre-commit-config.yaml file was found\n'\
'- To temporarily silence this, run `PRE_COMMIT_ALLOW_NO_CONFIG=1 git ...`\n'\
'- To permanently silence this, install pre-commit with the `--allow-missing-config` option\n'\
'- To uninstall pre-commit run `pre-commit uninstall`'
echo 'No .pre-commit-config.yaml file was found'
echo '- To temporarily silence this, run `PRE_COMMIT_ALLOW_NO_CONFIG=1 git ...`'
echo '- To permanently silence this, install pre-commit with the `--allow-missing-config` option'
echo '- To uninstall pre-commit run `pre-commit uninstall`'
exit 1
fi
fi

View File

@@ -66,7 +66,7 @@ def test_install_pre_commit(tempdir_factory):
sys_executable=sys.executable,
hook_type='pre-commit',
pre_push='',
skip_on_missing_conf='false'
skip_on_missing_conf='false',
)
assert pre_commit_contents == expected_contents
assert os.access(runner.pre_commit_path, os.X_OK)
@@ -81,7 +81,7 @@ def test_install_pre_commit(tempdir_factory):
sys_executable=sys.executable,
hook_type='pre-push',
pre_push=pre_push_template_contents,
skip_on_missing_conf='false'
skip_on_missing_conf='false',
)
assert pre_push_contents == expected_contents
@@ -579,8 +579,11 @@ def test_install_allow_mising_config(tempdir_factory):
ret, output = _get_commit_output(tempdir_factory)
assert ret == 0
assert '`.pre-commit-config.yaml` config file not found. '\
'Skipping `pre-commit`.' in output
expected = (
'`.pre-commit-config.yaml` config file not found. '
'Skipping `pre-commit`.'
)
assert expected in output
def test_install_temporarily_allow_mising_config(tempdir_factory):
@@ -591,10 +594,11 @@ def test_install_temporarily_allow_mising_config(tempdir_factory):
remove_config_from_repo(path)
assert install(runner, overwrite=True, skip_on_missing_conf=False) == 0
extra_env = {'PRE_COMMIT_ALLOW_NO_CONFIG': '1'}
env = os.environ.copy()
env.update(extra_env)
env = dict(os.environ, PRE_COMMIT_ALLOW_NO_CONFIG='1')
ret, output = _get_commit_output(tempdir_factory, env=env)
assert ret == 0
assert '`.pre-commit-config.yaml` config file not found. '\
'Skipping `pre-commit`.' in output
expected = (
'`.pre-commit-config.yaml` config file not found. '
'Skipping `pre-commit`.'
)
assert expected in output