public virtual void testAtEOF()
        {
            EmptyTreeIterator etp = new EmptyTreeIterator();

            Assert.IsTrue(etp.first());
            Assert.IsTrue(etp.eof());
        }
        public void testCreateEmptyTreeIterator()
        {
            FakeTreeIterator  i = new FakeTreeIterator("a/b/cd", FileMode.Tree);
            EmptyTreeIterator e = i.createEmptyTreeIterator();

            Assert.IsNotNull(e);
            Assert.AreEqual(i.EntryPathString + "/", e.EntryPathString);
        }
        public virtual void testEntryObjectId()
        {
            EmptyTreeIterator etp = new EmptyTreeIterator();

            Assert.AreSame(ObjectId.ZeroId, etp.getEntryObjectId());
            Assert.IsNotNull(etp.idBuffer());
            Assert.AreEqual(0, etp.idOffset());
            Assert.AreEqual(ObjectId.ZeroId, ObjectId.FromRaw(etp.idBuffer()));
        }
        public virtual void testCreateSubtreeIterator()
        {
            EmptyTreeIterator    etp = new EmptyTreeIterator();
            AbstractTreeIterator sub = etp.createSubtreeIterator(db);

            Assert.IsNotNull(sub);
            Assert.IsTrue(sub.first());
            Assert.IsTrue(sub.eof());
            Assert.IsTrue(sub is EmptyTreeIterator);
        }
        public virtual void testBackDoesNothing()
        {
            EmptyTreeIterator etp = new EmptyTreeIterator();

            etp.back(1);
            Assert.IsTrue(etp.first());
            Assert.IsTrue(etp.eof());
            Assert.AreEqual(ObjectId.ZeroId, ObjectId.FromRaw(etp.idBuffer()));

            etp.back(1);
            Assert.IsTrue(etp.first());
            Assert.IsTrue(etp.eof());
            Assert.AreEqual(ObjectId.ZeroId, ObjectId.FromRaw(etp.idBuffer()));
        }