示例#1
0
  /**
   * 1. Make initial version of a file (create, add, commit). 2. Rename file (rename, commit). 3.
   * Update file (modify, commit). 4. Get the file history. 5. Verify revision contents and the
   * current revision.
   */
  @Test
  public void renameShouldPreserveFileHistory() throws Exception {
    int versions = 0;

    fillFile(myProjectDir, new String[] {AFILE}, FILE_CONTENT);
    addAll();
    commitAll("initial content");
    versions++;

    runHgOnProjectRepo("rename", AFILE, BFILE);
    commitAll("file renamed");
    versions++;

    fillFile(myProjectDir, new String[] {BFILE}, FILE_CONTENT_2);
    commitAll("updated content");
    versions++;

    final VcsHistorySession session = getHistorySession(BFILE);
    final List<VcsFileRevision> revisions = session.getRevisionList();
    loadAllRevisions(revisions);

    assertEquals(revisions.size(), versions);
    assertTrue(session.isCurrentRevision(revisions.get(0).getRevisionNumber()));
    assertEquals(revisions.get(0).getContent(), FILE_CONTENT_2.getBytes());
    assertEquals(revisions.get(2).getContent(), FILE_CONTENT.getBytes());
  }
示例#2
0
  /**
   * 1. Make two versions of a file (create, add, commit, modify, commit). 2. Get the revisions
   * history. 3. Verify versions' contents and the current version.
   */
  @Test
  public void testCurrentAndPreviousRevisions() throws Exception {
    int versions = 0;
    fillFile(myProjectDir, new String[] {AFILE}, FILE_CONTENT);
    addAll();
    commitAll("initial content");
    versions++;
    fillFile(myProjectDir, new String[] {AFILE}, FILE_CONTENT_2);
    commitAll("updated content");
    versions++;

    final VcsHistorySession session = getHistorySession(AFILE);
    final List<VcsFileRevision> revisions = session.getRevisionList();
    for (VcsFileRevision rev : revisions) {
      rev.loadContent();
    }

    assertEquals(revisions.size(), versions);
    assertTrue(session.isCurrentRevision(revisions.get(0).getRevisionNumber()));
    assertEquals(revisions.get(0).getContent(), FILE_CONTENT_2.getBytes());
    assertEquals(revisions.get(1).getContent(), FILE_CONTENT.getBytes());
  }