@SuppressWarnings("unused") @Test public void testMultipleDeletes() throws Exception { // two commits on different trees final ObjectId oid11 = insertAndAdd(points1); final ObjectId oid12 = insertAndAdd(points2); final ObjectId oid13 = insertAndAdd(points3); final RevCommit commit1 = geogig.command(CommitOp.class).setAll(true).call(); final ObjectId oid21 = insertAndAdd(lines1); final RevCommit commit2 = geogig.command(CommitOp.class).setAll(true).call(); deleteAndAdd(points1); deleteAndAdd(points3); final RevCommit commit3 = geogig.command(CommitOp.class).setAll(true).call(); List<DiffEntry> diffs; // filter on namespace1, no changes between commit1 and commit2 diffOp.setOldVersion(commit1.getId()).setNewVersion(commit3.getId()); diffOp.setFilter(pointsName); diffs = toList(diffOp.call()); assertEquals(2, diffs.size()); assertEquals(ChangeType.REMOVED, diffs.get(0).changeType()); assertEquals(ChangeType.REMOVED, diffs.get(1).changeType()); Set<ObjectId> ids = Sets.newHashSet(diffs.get(0).oldObjectId(), diffs.get(1).oldObjectId()); assertEquals(Sets.newHashSet(oid11, oid13), ids); }
@SuppressWarnings("unused") @Test public void testMultipleDeletes() throws Exception { // two commits on different trees final ObjectId oid11 = insertAndAdd(points1); final ObjectId oid12 = insertAndAdd(points2); final ObjectId oid13 = insertAndAdd(points3); final RevCommit commit1 = geogig.command(CommitOp.class).setAll(true).call(); final ObjectId oid21 = insertAndAdd(lines1); final RevCommit commit2 = geogig.command(CommitOp.class).setAll(true).call(); deleteAndAdd(points1); deleteAndAdd(points3); final RevCommit commit3 = geogig.command(CommitOp.class).setAll(true).call(); List<DiffEntry> diffs; // filter on namespace1, no changes between commit1 and commit2 diffOp.setOldVersion(commit1.getId()).setNewVersion(commit3.getId()); diffOp.setFilter(pointsName); diffs = toList(diffOp.call()); assertEquals(2, diffs.size()); assertEquals(ChangeType.REMOVED, diffs.get(0).changeType()); assertEquals(ChangeType.REMOVED, diffs.get(1).changeType()); Set<ObjectId> ids = Sets.newHashSet(diffs.get(0).oldObjectId(), diffs.get(1).oldObjectId()); assertEquals(Sets.newHashSet(oid11, oid13), ids); }
@SuppressWarnings("unused") @Test public void testTreeDeletes() throws Exception { // two commits on different trees final ObjectId oid11 = insertAndAdd(points1); final ObjectId oid12 = insertAndAdd(points2); final ObjectId oid13 = insertAndAdd(points3); final RevCommit commit1 = geogig.command(CommitOp.class).setAll(true).call(); final ObjectId oid21 = insertAndAdd(lines1); final ObjectId oid22 = insertAndAdd(lines2); final RevCommit commit2 = geogig.command(CommitOp.class).setAll(true).call(); deleteAndAdd(points1); deleteAndAdd(points2); deleteAndAdd(points3); final RevCommit commit3 = geogig.command(CommitOp.class).setAll(true).call(); List<DiffEntry> diffs; // filter on namespace1, no changes between commit1 and commit2 diffOp.setOldVersion(commit1.getId()); diffOp.setNewVersion(Ref.HEAD); diffOp.setFilter(pointsName); diffs = toList(diffOp.call()); assertEquals(3, diffs.size()); }
@SuppressWarnings("unused") @Test public void testTreeDeletes() throws Exception { // two commits on different trees final ObjectId oid11 = insertAndAdd(points1); final ObjectId oid12 = insertAndAdd(points2); final ObjectId oid13 = insertAndAdd(points3); final RevCommit commit1 = geogig.command(CommitOp.class).setAll(true).call(); final ObjectId oid21 = insertAndAdd(lines1); final ObjectId oid22 = insertAndAdd(lines2); final RevCommit commit2 = geogig.command(CommitOp.class).setAll(true).call(); deleteAndAdd(points1); deleteAndAdd(points2); deleteAndAdd(points3); final RevCommit commit3 = geogig.command(CommitOp.class).setAll(true).call(); List<DiffEntry> diffs; // filter on namespace1, no changes between commit1 and commit2 diffOp.setOldVersion(commit1.getId()); diffOp.setNewVersion(Ref.HEAD); diffOp.setFilter(pointsName); diffs = toList(diffOp.call()); assertEquals(3, diffs.size()); }
@Test public void testSingleDeletion() throws Exception { final ObjectId featureContentId = insertAndAdd(points1); final RevCommit addCommit = geogig.command(CommitOp.class).setAll(true).call(); assertTrue(deleteAndAdd(points1)); final RevCommit deleteCommit = geogig.command(CommitOp.class).setAll(true).call(); List<DiffEntry> difflist = toList( diffOp.setOldVersion(addCommit.getId()).setNewVersion(deleteCommit.getId()).call()); final String path = NodeRef.appendChild(pointsName, points1.getIdentifier().getID()); assertNotNull(difflist); assertEquals(1, difflist.size()); DiffEntry de = difflist.get(0); assertEquals(path, de.oldPath()); assertEquals(DiffEntry.ChangeType.REMOVED, de.changeType()); assertEquals(featureContentId, de.oldObjectId()); assertEquals(ObjectId.NULL, de.newObjectId()); }
@Test public void testSingleDeletion() throws Exception { final ObjectId featureContentId = insertAndAdd(points1); final RevCommit addCommit = geogig.command(CommitOp.class).setAll(true).call(); assertTrue(deleteAndAdd(points1)); final RevCommit deleteCommit = geogig.command(CommitOp.class).setAll(true).call(); List<DiffEntry> difflist = toList( diffOp.setOldVersion(addCommit.getId()).setNewVersion(deleteCommit.getId()).call()); final String path = NodeRef.appendChild(pointsName, points1.getIdentifier().getID()); assertNotNull(difflist); assertEquals(1, difflist.size()); DiffEntry de = difflist.get(0); assertEquals(path, de.oldPath()); assertEquals(DiffEntry.ChangeType.REMOVED, de.changeType()); assertEquals(featureContentId, de.oldObjectId()); assertEquals(ObjectId.NULL, de.newObjectId()); }
@Test public void testSingleDeletionReverseOrder() throws Exception { final ObjectId featureContentId = insertAndAdd(points1); final RevCommit addCommit = geogig.command(CommitOp.class).setAll(true).call(); assertTrue(deleteAndAdd(points1)); final RevCommit deleteCommit = geogig.command(CommitOp.class).setAll(true).call(); // set old/new version in reverse order List<DiffEntry> difflist = toList( diffOp.setOldVersion(deleteCommit.getId()).setNewVersion(addCommit.getId()).call()); final String path = NodeRef.appendChild(pointsName, points1.getIdentifier().getID()); // then the diff should report an ADD instead of a DELETE assertNotNull(difflist); assertEquals(1, difflist.size()); DiffEntry de = difflist.get(0); assertNull(de.oldPath()); assertEquals(path, de.newPath()); assertEquals(DiffEntry.ChangeType.ADDED, de.changeType()); assertEquals(ObjectId.NULL, de.oldObjectId()); assertEquals(featureContentId, de.newObjectId()); }
@Test public void testSingleDeletionReverseOrder() throws Exception { final ObjectId featureContentId = insertAndAdd(points1); final RevCommit addCommit = geogig.command(CommitOp.class).setAll(true).call(); assertTrue(deleteAndAdd(points1)); final RevCommit deleteCommit = geogig.command(CommitOp.class).setAll(true).call(); // set old/new version in reverse order List<DiffEntry> difflist = toList( diffOp.setOldVersion(deleteCommit.getId()).setNewVersion(addCommit.getId()).call()); final String path = NodeRef.appendChild(pointsName, points1.getIdentifier().getID()); // then the diff should report an ADD instead of a DELETE assertNotNull(difflist); assertEquals(1, difflist.size()); DiffEntry de = difflist.get(0); assertNull(de.oldPath()); assertEquals(path, de.newPath()); assertEquals(DiffEntry.ChangeType.ADDED, de.changeType()); assertEquals(ObjectId.NULL, de.oldObjectId()); assertEquals(featureContentId, de.newObjectId()); }
assertEquals(modifiedOid, diff.newObjectId()); assertTrue(deleteAndAdd(points1)); final RevCommit commit4 = geogig.command(CommitOp.class).setAll(true).call(); diffOp.setOldVersion(commit2.getId()).setNewVersion(commit4.getId());
assertEquals(modifiedOid, diff.newObjectId()); assertTrue(deleteAndAdd(points1)); final RevCommit commit4 = geogig.command(CommitOp.class).setAll(true).call(); diffOp.setOldVersion(commit2.getId()).setNewVersion(commit4.getId());