( )⚙ D3060 tests: disallow using simple store repo with bundlerepo

This is an archive of the discontinued Mercurial Phabricator instance.

tests: disallow using simple store repo with bundlerepo
ClosedPublic

Authored by indygreg on Apr 3 2018, 9:56 PM.

Details

Summary

bundlerepo is... going to be difficult to port to an alternate
store because it assumes revlogs for storage and essentially
overlays the contents of a bundle onto a fake revlog-like
primitive. It will be a good test case for our eventual new
storage interface.

Refactoring bundlerepo to make it work with non-revlog storage is
going to be a bit of work. So for now, let's refuse to use the
simple store repo when a bundlerepo is in play.

A new test requirement advertising support for treating bundle
files as repo instances has been added. Some tests have been
made conditional on this feature. Additional tests will be
annotated in subsequent commits.

Having positive opt-in to repo features will be simpler in the
long run because it will allow multiple storage backends to
declare feature support and we won't have to annotate each test
with the set of repo backends that are supported. Again, we'll
probably want better integration between repo features and
tests. But this is the easiest we can do at the moment.

Diff Detail

Repository
rHG Mercurial
Lint
Lint Skipped
Unit
Unit Tests Skipped

Event Timeline

indygreg created this revision.Apr 3 2018, 9:56 PM
durin42 accepted this revision.Apr 4 2018, 2:15 PM
This revision is now accepted and ready to land.Apr 4 2018, 2:15 PM
indygreg edited the summary of this revision. (Show Details)Apr 4 2018, 2:45 PM
indygreg updated this revision to Diff 7635.
This revision was automatically updated to reflect the committed changes.