Add name-tests-test hook
diff --git a/manifest.yaml b/manifest.yaml index 9202184..78fc797 100644 --- a/manifest.yaml +++ b/manifest.yaml
@@ -17,3 +17,9 @@ description: This hook trims trailing whitespace. entry: trailing-whitespace-fixer language: python +- + id: name-tests-test + name: Tests should end in _test.py + description: This verifies that test files are named correctly + entry: name-tests-test + language: python \ No newline at end of file
diff --git a/pre_commit_hooks/tests_should_end_in_test.py b/pre_commit_hooks/tests_should_end_in_test.py new file mode 100644 index 0000000..86991f0 --- /dev/null +++ b/pre_commit_hooks/tests_should_end_in_test.py
@@ -0,0 +1,24 @@ + +import sys + + +def validate_files(argv): + retcode = 0 + for filename in argv: + if ( + not filename.endswith('_test.py') and + not filename.endswith('__init__.py') and + not filename.endswith('/conftest.py') + ): + retcode = 1 + print '{0} does not end in _test.py'.format(filename) + + return retcode + + +def entry(): + validate_files(sys.argv[1:]) + + +if __name__ == '__main__': + sys.exit(entry()) \ No newline at end of file
diff --git a/setup.py b/setup.py index 715f0c9..ed41748 100644 --- a/setup.py +++ b/setup.py
@@ -15,6 +15,7 @@ 'console_scripts': [ 'debug-statement-hook = pre_commit_hooks.debug_statement_hook:entry', 'trailing-whitespace-fixer = pre_commit_hooks.trailing_whitespace_fixer:entry', + 'name-tests-test = pre_commit_hooks.tests_should_end_in_test:entry', ], }, )