Add unit tests for CVS diffs.
Review Request #12571 — Created Aug. 24, 2022 and submitted
The CVS implementation lacked any unit tests around diffs. This change
adds some tests, testing basic diff functionality,
Some of the diff logic was reordered to help be more readable, but no
actual behavior has changed.
Note that CVS has its own
cvs diff, tool, so we don't directly depend
on GNU diff.
The data for the CVS repository in
testdatawill be committed in a
Unit tests pass on Python 3.7-3.11.