Package org.eclipse.jgit.junit

Examples of org.eclipse.jgit.junit.TestRepository


        result.getMessages());
  }

  @Test
  public void testPush_HookMessagesToOutputStream() throws Exception {
    final TestRepository src = createTestRepository();
    final RevBlob Q_txt = src.blob("new text");
    final RevCommit Q = src.commit().add("Q", Q_txt).create();
    final Repository db = src.getRepository();
    final String dstName = Constants.R_HEADS + "new.branch";
    Transport t;
    PushResult result;

    t = Transport.open(db, remoteURI);
    OutputStream out = new ByteArrayOutputStream();
    try {
      final String srcExpr = Q.name();
      final boolean forceUpdate = false;
      final String localName = null;
      final ObjectId oldId = null;

      RemoteRefUpdate update = new RemoteRefUpdate(src.getRepository(),
          srcExpr, dstName, forceUpdate, localName, oldId);
      result = t.push(NullProgressMonitor.INSTANCE,
          Collections.singleton(update), out);
    } finally {
      t.close();
View Full Code Here


    cfg.save();
  }

  @Test
  public void testPush_CreateBranch() throws Exception {
    final TestRepository src = createTestRepository();
    final RevBlob Q_txt = src.blob("new text");
    final RevCommit Q = src.commit().add("Q", Q_txt).create();
    final Repository db = src.getRepository();
    final String dstName = Constants.R_HEADS + "new.branch";
    final Transport t = Transport.open(db, remoteURI);
    try {
      final String srcExpr = Q.name();
      final boolean forceUpdate = false;
      final String localName = null;
      final ObjectId oldId = null;

      RemoteRefUpdate update = new RemoteRefUpdate(src.getRepository(),
          srcExpr, dstName, forceUpdate, localName, oldId);
      try {
        t.push(NullProgressMonitor.INSTANCE, Collections
            .singleton(update));
        fail("push completed without throwing exception");
View Full Code Here

    return server.getRequests(path);
  }

  protected static void fsck(Repository db, RevObject... tips)
      throws Exception {
    new TestRepository(db).fsck(tips);
  }
View Full Code Here

  @Test
  public void testFetch_FewLocalCommits() throws Exception {
    // Bootstrap by doing the clone.
    //
    TestRepository dst = createTestRepository();
    Transport t = Transport.open(dst.getRepository(), remoteURI);
    try {
      t.fetch(NullProgressMonitor.INSTANCE, mirror(master));
    } finally {
      t.close();
    }
    assertEquals(B, dst.getRepository().getRef(master).getObjectId());
    List<AccessEvent> cloneRequests = getRequests();

    // Only create a few new commits.
    TestRepository.BranchBuilder b = dst.branch(master);
    for (int i = 0; i < 4; i++)
      b.commit().tick(3600 /* 1 hour */).message("c" + i).create();

    // Create a new commit on the remote.
    //
    b = new TestRepository<Repository>(remoteRepository).branch(master);
    RevCommit Z = b.commit().message("Z").create();

    // Now incrementally update.
    //
    t = Transport.open(dst.getRepository(), remoteURI);
    try {
      t.fetch(NullProgressMonitor.INSTANCE, mirror(master));
    } finally {
      t.close();
    }
    assertEquals(Z, dst.getRepository().getRef(master).getObjectId());

    List<AccessEvent> requests = getRequests();
    requests.removeAll(cloneRequests);
    assertEquals(2, requests.size());

View Full Code Here

  @Test
  public void testFetch_TooManyLocalCommits() throws Exception {
    // Bootstrap by doing the clone.
    //
    TestRepository dst = createTestRepository();
    Transport t = Transport.open(dst.getRepository(), remoteURI);
    try {
      t.fetch(NullProgressMonitor.INSTANCE, mirror(master));
    } finally {
      t.close();
    }
    assertEquals(B, dst.getRepository().getRef(master).getObjectId());
    List<AccessEvent> cloneRequests = getRequests();

    // Force enough into the local client that enumeration will
    // need multiple packets, but not too many to overflow and
    // not pick up the ACK_COMMON message.
    //
    TestRepository.BranchBuilder b = dst.branch(master);
    for (int i = 0; i < 32 - 1; i++)
      b.commit().tick(3600 /* 1 hour */).message("c" + i).create();

    // Create a new commit on the remote.
    //
    b = new TestRepository<Repository>(remoteRepository).branch(master);
    RevCommit Z = b.commit().message("Z").create();

    // Now incrementally update.
    //
    t = Transport.open(dst.getRepository(), remoteURI);
    try {
      t.fetch(NullProgressMonitor.INSTANCE, mirror(master));
    } finally {
      t.close();
    }
    assertEquals(Z, dst.getRepository().getRef(master).getObjectId());

    List<AccessEvent> requests = getRequests();
    requests.removeAll(cloneRequests);
    assertEquals(3, requests.size());

View Full Code Here

        .getResponseHeader(HDR_CONTENT_TYPE));
  }

  @Test
  public void testPush_NotAuthorized() throws Exception {
    final TestRepository src = createTestRepository();
    final RevBlob Q_txt = src.blob("new text");
    final RevCommit Q = src.commit().add("Q", Q_txt).create();
    final Repository db = src.getRepository();
    final String dstName = Constants.R_HEADS + "new.branch";
    Transport t;

    // push anonymous shouldn't be allowed.
    //
    t = Transport.open(db, remoteURI);
    try {
      final String srcExpr = Q.name();
      final boolean forceUpdate = false;
      final String localName = null;
      final ObjectId oldId = null;

      RemoteRefUpdate u = new RemoteRefUpdate(src.getRepository(),
          srcExpr, dstName, forceUpdate, localName, oldId);
      try {
        t.push(NullProgressMonitor.INSTANCE, Collections.singleton(u));
        fail("anonymous push incorrectly accepted without error");
      } catch (TransportException e) {
View Full Code Here

    assertEquals(401, info.getStatus());
  }

  @Test
  public void testPush_CreateBranch() throws Exception {
    final TestRepository src = createTestRepository();
    final RevBlob Q_txt = src.blob("new text");
    final RevCommit Q = src.commit().add("Q", Q_txt).create();
    final Repository db = src.getRepository();
    final String dstName = Constants.R_HEADS + "new.branch";
    Transport t;

    enableReceivePack();

    t = Transport.open(db, remoteURI);
    try {
      final String srcExpr = Q.name();
      final boolean forceUpdate = false;
      final String localName = null;
      final ObjectId oldId = null;

      RemoteRefUpdate u = new RemoteRefUpdate(src.getRepository(),
          srcExpr, dstName, forceUpdate, localName, oldId);
      t.push(NullProgressMonitor.INSTANCE, Collections.singleton(u));
    } finally {
      t.close();
    }
View Full Code Here

    assertEquals(200, event.getStatus());
  }

  @Test
  public void testPushNotSupported() throws Exception {
    final TestRepository src = createTestRepository();
    final RevCommit Q = src.commit().create();
    final Repository db = src.getRepository();

    Transport t = Transport.open(db, remoteURI);
    try {
      try {
        t.push(NullProgressMonitor.INSTANCE, push(src, Q));
View Full Code Here

    cfg.save();
  }

  @Test
  public void testPush_packSize() throws Exception {
    final TestRepository src = createTestRepository();
    final RevBlob Q_txt = src
        .blob("some blob content to measure pack size");
    final RevCommit Q = src.commit().add("Q", Q_txt).create();
    final Repository db = src.getRepository();
    final String dstName = Constants.R_HEADS + "new.branch";
    Transport t;
    PushResult result;

    t = Transport.open(db, remoteURI);
    try {
      final String srcExpr = Q.name();
      final boolean forceUpdate = false;
      final String localName = null;
      final ObjectId oldId = null;

      RemoteRefUpdate update = new RemoteRefUpdate(src.getRepository(),
          srcExpr, dstName, forceUpdate, localName, oldId);
      result = t.push(NullProgressMonitor.INSTANCE,
          Collections.singleton(update));
    } finally {
      t.close();
View Full Code Here

    src = createBareRepository();
    dst = createBareRepository();

    // Fill dst with a some common history.
    //
    TestRepository d = new TestRepository(dst);
    a = d.blob("a");
    A = d.commit(d.tree(d.file("a", a)));
    B = d.commit().parent(A).create();
    d.update(R_MASTER, B);

    // Clone from dst into src
    //
    Transport t = Transport.open(src, uriOf(dst));
    try {
      t.fetch(PM, Collections.singleton(new RefSpec("+refs/*:refs/*")));
      assertEquals(B.copy(), src.resolve(R_MASTER));
    } finally {
      t.close();
    }

    // Now put private stuff into dst.
    //
    b = d.blob("b");
    P = d.commit(d.tree(d.file("b", b)), A);
    d.update(R_PRIVATE, P);
  }
View Full Code Here

TOP

Related Classes of org.eclipse.jgit.junit.TestRepository

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.