mirror of
https://github.com/PyCQA/flake8.git
synced 2026-04-12 15:44:17 +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):
|
def find_modified_files(lazy):
|
||||||
diff_index = piped_process(
|
diff_index_cmd = [
|
||||||
['git', 'diff-index', '--cached', '--name-only',
|
'git', 'diff-index', '--cached', '--name-only',
|
||||||
'--diff-filter=ACMRTUXB', 'HEAD'],
|
'--diff-filter=ACMRTUXB', 'HEAD'
|
||||||
)
|
]
|
||||||
|
if lazy:
|
||||||
|
diff_index_cmd.remove('--cached')
|
||||||
|
|
||||||
|
diff_index = piped_process(diff_index_cmd)
|
||||||
(stdout, _) = diff_index.communicate()
|
(stdout, _) = diff_index.communicate()
|
||||||
stdout = to_text(stdout)
|
stdout = to_text(stdout)
|
||||||
return stdout.splitlines()
|
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