|
|
|
@ -126,24 +126,26 @@ public class BundleWriterTest extends SampleDataRepositoryTestCase {
|
|
|
|
|
assertNull(newRepo.resolve("refs/heads/a")); |
|
|
|
|
|
|
|
|
|
// Next an incremental bundle
|
|
|
|
|
bundle = makeBundle("refs/heads/cc", db.resolve("c").name(), |
|
|
|
|
new RevWalk(db).parseCommit(db.resolve("a").toObjectId())); |
|
|
|
|
fetchResult = fetchFromBundle(newRepo, bundle); |
|
|
|
|
advertisedRef = fetchResult.getAdvertisedRef("refs/heads/cc"); |
|
|
|
|
assertEquals(db.resolve("c").name(), advertisedRef.getObjectId().name()); |
|
|
|
|
assertEquals(db.resolve("c").name(), newRepo.resolve("refs/heads/cc") |
|
|
|
|
.name()); |
|
|
|
|
assertNull(newRepo.resolve("refs/heads/c")); |
|
|
|
|
assertNull(newRepo.resolve("refs/heads/a")); // still unknown
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
// Check that we actually needed the first bundle
|
|
|
|
|
Repository newRepo2 = createBareRepository(); |
|
|
|
|
fetchResult = fetchFromBundle(newRepo2, bundle); |
|
|
|
|
fail("We should not be able to fetch from bundle with prerequisites that are not fulfilled"); |
|
|
|
|
} catch (MissingBundlePrerequisiteException e) { |
|
|
|
|
assertTrue(e.getMessage() |
|
|
|
|
.indexOf(db.resolve("refs/heads/a").name()) >= 0); |
|
|
|
|
try (RevWalk rw = new RevWalk(db)) { |
|
|
|
|
bundle = makeBundle("refs/heads/cc", db.resolve("c").name(), |
|
|
|
|
rw.parseCommit(db.resolve("a").toObjectId())); |
|
|
|
|
fetchResult = fetchFromBundle(newRepo, bundle); |
|
|
|
|
advertisedRef = fetchResult.getAdvertisedRef("refs/heads/cc"); |
|
|
|
|
assertEquals(db.resolve("c").name(), advertisedRef.getObjectId().name()); |
|
|
|
|
assertEquals(db.resolve("c").name(), newRepo.resolve("refs/heads/cc") |
|
|
|
|
.name()); |
|
|
|
|
assertNull(newRepo.resolve("refs/heads/c")); |
|
|
|
|
assertNull(newRepo.resolve("refs/heads/a")); // still unknown
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
// Check that we actually needed the first bundle
|
|
|
|
|
Repository newRepo2 = createBareRepository(); |
|
|
|
|
fetchResult = fetchFromBundle(newRepo2, bundle); |
|
|
|
|
fail("We should not be able to fetch from bundle with prerequisites that are not fulfilled"); |
|
|
|
|
} catch (MissingBundlePrerequisiteException e) { |
|
|
|
|
assertTrue(e.getMessage() |
|
|
|
|
.indexOf(db.resolve("refs/heads/a").name()) >= 0); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|