
from __future__ import print_function

import sys

from pre_commit_hooks.util import entry


@entry
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


if __name__ == '__main__':
    sys.exit(entry())
