12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- /*
- * Copyright (C) 2008, Google Inc. and others
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Distribution License v. 1.0 which is available at
- * https://www.eclipse.org/org/documents/edl-v10.php.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
-
- package org.eclipse.jgit.treewalk;
-
- import static org.junit.Assert.assertEquals;
- import static org.junit.Assert.assertFalse;
- import static org.junit.Assert.assertNotNull;
- import static org.junit.Assert.assertSame;
- import static org.junit.Assert.assertTrue;
-
- import org.eclipse.jgit.junit.RepositoryTestCase;
- import org.eclipse.jgit.lib.ObjectId;
- import org.eclipse.jgit.lib.ObjectReader;
- import org.junit.Test;
-
- public class EmptyTreeIteratorTest extends RepositoryTestCase {
- @Test
- public void testAtEOF() throws Exception {
- final EmptyTreeIterator etp = new EmptyTreeIterator();
- assertTrue(etp.first());
- assertTrue(etp.eof());
- }
-
- @Test
- public void testCreateSubtreeIterator() throws Exception {
- final EmptyTreeIterator etp = new EmptyTreeIterator();
- try (ObjectReader reader = db.newObjectReader()) {
- final AbstractTreeIterator sub = etp.createSubtreeIterator(reader);
- assertNotNull(sub);
- assertTrue(sub.first());
- assertTrue(sub.eof());
- assertTrue(sub instanceof EmptyTreeIterator);
- }
- }
-
- @Test
- public void testEntryObjectId() throws Exception {
- final EmptyTreeIterator etp = new EmptyTreeIterator();
- assertSame(ObjectId.zeroId(), etp.getEntryObjectId());
- assertNotNull(etp.idBuffer());
- assertEquals(0, etp.idOffset());
- assertEquals(ObjectId.zeroId(), ObjectId.fromRaw(etp.idBuffer()));
- }
-
- @Test
- public void testNextDoesNothing() throws Exception {
- final EmptyTreeIterator etp = new EmptyTreeIterator();
- etp.next(1);
- assertTrue(etp.first());
- assertTrue(etp.eof());
- assertEquals(ObjectId.zeroId(), ObjectId.fromRaw(etp.idBuffer()));
-
- etp.next(1);
- assertTrue(etp.first());
- assertTrue(etp.eof());
- assertEquals(ObjectId.zeroId(), ObjectId.fromRaw(etp.idBuffer()));
- }
-
- @Test
- public void testBackDoesNothing() throws Exception {
- final EmptyTreeIterator etp = new EmptyTreeIterator();
- etp.back(1);
- assertTrue(etp.first());
- assertTrue(etp.eof());
- assertEquals(ObjectId.zeroId(), ObjectId.fromRaw(etp.idBuffer()));
-
- etp.back(1);
- assertTrue(etp.first());
- assertTrue(etp.eof());
- assertEquals(ObjectId.zeroId(), ObjectId.fromRaw(etp.idBuffer()));
- }
-
- @Test
- public void testStopWalkCallsParent() throws Exception {
- final boolean called[] = new boolean[1];
- assertFalse(called[0]);
-
- final EmptyTreeIterator parent = new EmptyTreeIterator() {
- @Override
- public void stopWalk() {
- called[0] = true;
- }
- };
- try (ObjectReader reader = db.newObjectReader()) {
- parent.createSubtreeIterator(reader).stopWalk();
- }
- assertTrue(called[0]);
- }
- }
|