Foreign branch testing

Jelmer Vernooij jelmer at canonical.com
Mon Mar 14 13:36:40 UTC 2011


For the last two weeks or so I've been trying to get the standard Bazaar
interface tests to run against the foreign branch plugins bzr-hg,
bzr-svn and bzr-git. This is in addition to the existing tests that
these plugins already ship.

Being able to run the standard testsuite in addition to some
format-specific tests is very useful because it helps discover bugs, and
it significantly increases our test coverage for these plugins.

So far a significant number of minor bugs and a couple of major ones
have been discovered, all of which have either been fixed directly or
for which bugs have been filed. 

A large part of this effort was making features in the Bazaar API
optional - allowing a format to declare that it e.g. doesn't support
metadir-style branches or repositories, or that it doesn't support
working trees at all. Previously a number of tests just blacklisted
specific formats.

Most of the remaining issues are due to:

 * inability to create a workingtree and branch/repository in the same
location (bzr-git, bzr-svn)
 * when testing remote operations some operations need to happen locally
(via file://) because e.g. git doesn't support initializing a format
over the smart server protocol
 * lack of support for roundtripping in bzr-hg and bzr-git. 

A smaller (but still significant number) is failing due to:

 * locking issues (bzr-hg, bzr-git)
 * missing CommitBuilder implementation in bzr-hg
 * broken WorkingTree implementation in bzr-git - mapping the Git index
to the Bazaar working tree API doesn't work properly yet
 * tests that rely on the full versioned files API. Some of these have
already been fixed but there are a few remaining.
 * tests that rely on the ability to create ghosts
 * Branch.set_revision_history() is not supported by bzr-hg and bzr-git.
Since it's a O(lhs-history) call it should probably be deprecated rather
than implemented in bzr-hg/bzr-git.
 ... and more

Cheers,

Jelmer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
URL: <https://lists.ubuntu.com/archives/bazaar/attachments/20110314/e26a9ad4/attachment.pgp>


More information about the bazaar mailing list