test-grep: add tests for --follow with/without --diff and/or paths
This tests the behavior of cmdutil.walkchangerevs().
I'm going to rewrite cmdutil.walkchangerevs() to leverage the "log -f"
logic, but the code coverage looked quite small. And the history traversal
of "grep -f" goes wrong in various ways.
[tool.black]
line-length = 80
exclude = '''
build/
| wheelhouse/
| dist/
| packages/
| \.hg/
| \.mypy_cache/
| \.venv/
| mercurial/thirdparty/
'''
skip-string-normalization = true
quiet = true