Han-Wen Nienhuys <hanwen@xxxxxxxxxx> writes: > I think it would be really great if there were separate unittests for > the ref backend API. Some of the reftable work was needlessly > difficult because the contract of the API was underspecified. The API > is well compartmentalized in refs-internal.h, and a lot of the API > behavior can be tested as a black box, eg. > > * setup symref HEAD pointing to R1 > * setup transaction updating ref R1 from C1 to C2 > * commit transaction, check that it succeeds > * read ref R1, check if it is C2 > * read reflog for R1, see that it has a C1 => C2 update > * read reflog for HEAD, see that it has a C1 => C2 update > > Tests for the loose/packed backend could directly mess with the > on-disk files to test failure scenarios. > > With unittests like that, the tests can zoom in on the functionality > of the ref backend, and provide more convenient coverage for > dynamic/static analysis. Yeah, I agree that something like that would really be great.