mirror of
https://github.com/PyCQA/flake8.git
synced 2026-03-31 03:06:53 +00:00
Merge branch 'mr/120' into 'master'
Use the lazy parameter when finding changed files with git Closes !120 See merge request !126
This commit is contained in:
commit
a90c94ab22
2 changed files with 36 additions and 4 deletions
|
|
@ -140,11 +140,14 @@ def make_temporary_directory_from(destination, directory):
|
|||
|
||||
|
||||
def find_modified_files(lazy):
|
||||
diff_index = piped_process(
|
||||
['git', 'diff-index', '--cached', '--name-only',
|
||||
'--diff-filter=ACMRTUXB', 'HEAD'],
|
||||
)
|
||||
diff_index_cmd = [
|
||||
'git', 'diff-index', '--cached', '--name-only',
|
||||
'--diff-filter=ACMRTUXB', 'HEAD'
|
||||
]
|
||||
if lazy:
|
||||
diff_index_cmd.remove('--cached')
|
||||
|
||||
diff_index = piped_process(diff_index_cmd)
|
||||
(stdout, _) = diff_index.communicate()
|
||||
stdout = to_text(stdout)
|
||||
return stdout.splitlines()
|
||||
|
|
|
|||
29
tests/unit/test_git.py
Normal file
29
tests/unit/test_git.py
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
"""Tests around functionality in the git integration."""
|
||||
import mock
|
||||
import pytest
|
||||
|
||||
from flake8.main import git
|
||||
|
||||
|
||||
@pytest.mark.parametrize('lazy', [True, False])
|
||||
def test_find_modified_files(lazy):
|
||||
"""Confirm our logic for listing modified files."""
|
||||
if lazy:
|
||||
# Here --cached is missing
|
||||
call = [
|
||||
'git', 'diff-index', '--name-only', '--diff-filter=ACMRTUXB',
|
||||
'HEAD'
|
||||
]
|
||||
else:
|
||||
call = [
|
||||
'git', 'diff-index', '--cached', '--name-only',
|
||||
'--diff-filter=ACMRTUXB', 'HEAD'
|
||||
]
|
||||
mocked_popen = mock.Mock()
|
||||
mocked_popen.communicate.return_value = ('', '')
|
||||
|
||||
with mock.patch('flake8.main.git.piped_process') as piped_process:
|
||||
piped_process.return_value = mocked_popen
|
||||
git.find_modified_files(lazy)
|
||||
|
||||
piped_process.assert_called_once_with(call)
|
||||
Loading…
Add table
Add a link
Reference in a new issue