add pre-commit hook for testing