Add some tests for tests_should_end_in_test hook
This commit is contained in:
parent
d2e45f3400
commit
12794c1c19
|
@ -1,4 +1,6 @@
|
|||
|
||||
from __future__ import print_function
|
||||
|
||||
import sys
|
||||
|
||||
|
||||
|
@ -11,14 +13,14 @@ def validate_files(argv):
|
|||
not filename.endswith('/conftest.py')
|
||||
):
|
||||
retcode = 1
|
||||
print '{0} does not end in _test.py'.format(filename)
|
||||
print('{0} does not end in _test.py'.format(filename))
|
||||
|
||||
return retcode
|
||||
|
||||
|
||||
def entry():
|
||||
validate_files(sys.argv[1:])
|
||||
return validate_files(sys.argv[1:])
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(entry())
|
||||
sys.exit(entry())
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
|
||||
import __builtin__
|
||||
|
||||
import mock
|
||||
import pytest
|
||||
|
||||
|
||||
@pytest.yield_fixture
|
||||
def print_mock():
|
||||
with mock.patch.object(__builtin__, 'print', autospec=True) as mock_print:
|
||||
yield mock_print
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
from pre_commit_hooks.tests_should_end_in_test import validate_files
|
||||
|
||||
|
||||
def test_validate_files_all_pass(print_mock):
|
||||
ret = validate_files(['foo_test.py', 'bar_test.py'])
|
||||
assert ret == 0
|
||||
assert print_mock.call_count == 0
|
||||
|
||||
|
||||
def test_validate_files_one_fails(print_mock):
|
||||
ret = validate_files(['not_test_ending.py', 'foo_test.py'])
|
||||
assert ret == 1
|
||||
assert print_mock.call_count == 1
|
Loading…
Reference in New Issue