Ejemplo n.º 1
0
  public void testMultipleStaging() throws Exception {

    final StagingDatabase indexDb = index.getDatabase();

    // insert and commit feature1_1
    final ObjectId oId1_1 = insertAndAdd(points1);

    System.err.println("++++++++++++ stage 1:  ++++++++++++++++++++");
    // staged1.accept(new PrintVisitor(index.getDatabase(), new PrintWriter(System.err)));

    // check feature1_1 is there
    assertEquals(oId1_1, indexDb.findStaged(pointsNs, pointsName, idP1).getNewObjectId());

    // insert and commit feature1_2, feature1_2 and feature2_1
    final ObjectId oId1_2 = insertAndAdd(points2);
    final ObjectId oId1_3 = insertAndAdd(points3);
    final ObjectId oId2_1 = insertAndAdd(lines1);

    System.err.println("++++++++++++ stage 2: ++++++++++++++++++++");
    // staged2.accept(new PrintVisitor(index.getDatabase(), new PrintWriter(System.err)));

    // check feature1_2, feature1_3 and feature2_1
    Ref treeChild;
    assertNotNull(treeChild = indexDb.findStaged(pointsNs, pointsName, idP2).getNewObject());
    assertEquals(oId1_2, treeChild.getObjectId());

    assertNotNull(treeChild = indexDb.findStaged(pointsNs, pointsName, idP3).getNewObject());
    assertEquals(oId1_3, treeChild.getObjectId());

    assertNotNull(treeChild = indexDb.findStaged(linesNs, linesName, idL1).getNewObject());
    assertEquals(oId2_1, treeChild.getObjectId());

    // as well as feature1_1 from the previous commit
    assertNotNull(treeChild = indexDb.findStaged(pointsNs, pointsName, idP1).getNewObject());
    assertEquals(oId1_1, treeChild.getObjectId());

    // delete feature1_1, feature1_3, and feature2_1
    assertTrue(deleteAndAdd(points1));
    assertTrue(deleteAndAdd(points3));
    assertTrue(deleteAndAdd(lines1));
    // and insert feature2_2
    final ObjectId oId2_2 = insertAndAdd(lines2);

    System.err.println("++++++++++++ stage 3: ++++++++++++++++++++");
    // staged3.accept(new PrintVisitor(index.getDatabase(), new PrintWriter(System.err)));

    // and check only points2 and lines2 remain
    assertEquals(oId1_1, indexDb.findStaged(pointsNs, pointsName, idP1).getOldObjectId());
    assertEquals(oId1_3, indexDb.findStaged(pointsNs, pointsName, idP3).getOldObjectId());
    assertEquals(oId2_1, indexDb.findStaged(linesNs, linesName, idL1).getOldObjectId());

    assertEquals(oId1_2, indexDb.findStaged(pointsNs, pointsName, idP2).getNewObjectId());
    assertEquals(oId2_2, indexDb.findStaged(linesNs, linesName, idL2).getNewObjectId());
  }
Ejemplo n.º 2
0
  public void testCreateEmptyTrees() throws Exception {
    String[] path1 = {"root", "to", "path1"};
    String[] path2 = {"root", "to", "path2"};
    String[] path3 = {"root", "to2", "path3"};

    index.created(path1);
    index.created(path2);
    index.created(path3);

    DiffEntry emptyTreeId1 = index.getDatabase().findUnstaged(path1);
    DiffEntry emptyTreeId2 = index.getDatabase().findUnstaged(path2);
    DiffEntry emptyTreeId3 = index.getDatabase().findUnstaged(path3);

    assertNotNull(emptyTreeId1);
    assertNotNull(emptyTreeId2);
    assertNotNull(emptyTreeId3);

    assertEquals(
        emptyTreeId1.getNewObject().getObjectId(), emptyTreeId2.getNewObject().getObjectId());
    assertEquals(
        emptyTreeId1.getNewObject().getObjectId(), emptyTreeId3.getNewObject().getObjectId());
  }