Exemplo n.º 1
0
        public void testNoCacheObjectIdSubclass()
        {
            string    newRef = "refs/heads/abc";
            RefUpdate ru     = updateRef(newRef);
            RevCommit newid  = new RevCommit(ru.getNewObjectId())
            {
                // empty
            };

            ru.setNewObjectId(newid);
            RefUpdate.RefUpdateResult update = ru.update();
            Assert.AreEqual(RefUpdate.RefUpdateResult.NEW, update);
            Core.Ref r = db.getAllRefs()[newRef];
            Assert.IsNotNull(r);
            Assert.AreEqual(newRef, r.Name);
            Assert.IsNotNull(r.ObjectId);
            Assert.AreNotSame(newid, r.ObjectId);
            Assert.AreSame(typeof(ObjectId), r.ObjectId.GetType());
            Assert.AreEqual(newid.Copy(), r.ObjectId);
            IList <ReflogReader.Entry> reverseEntries1 = db.ReflogReader("refs/heads/abc").getReverseEntries();

            ReflogReader.Entry entry1 = reverseEntries1[0];
            Assert.AreEqual(1, reverseEntries1.Count);
            Assert.AreEqual(ObjectId.ZeroId, entry1.getOldId());
            Assert.AreEqual(r.ObjectId, entry1.getNewId());
            Assert.AreEqual(new PersonIdent(db).ToString(), entry1.getWho().ToString());
            Assert.AreEqual("", entry1.getComment());
            IList <ReflogReader.Entry> reverseEntries2 = db.ReflogReader("HEAD").getReverseEntries();

            Assert.AreEqual(0, reverseEntries2.Count);
        }
Exemplo n.º 2
0
        public void testNewNamespaceConflictWithLoosePrefixNameExists()
        {
            string    newRef = "refs/heads/z";
            RefUpdate ru     = updateRef(newRef);
            RevCommit newid  = new RevCommit(ru.getNewObjectId())
            {
                // empty
            };

            ru.setNewObjectId(newid);
            RefUpdate.RefUpdateResult update = ru.update();
            Assert.AreEqual(RefUpdate.RefUpdateResult.NEW, update);
            // end setup
            string    newRef2 = "refs/heads/z/a";
            RefUpdate ru2     = updateRef(newRef2);
            RevCommit newid2  = new RevCommit(ru2.getNewObjectId())
            {
                // empty
            };

            ru.setNewObjectId(newid2);
            RefUpdate.RefUpdateResult update2 = ru2.update();
            Assert.AreEqual(RefUpdate.RefUpdateResult.LOCK_FAILURE, update2);
            Assert.AreEqual(1, db.ReflogReader("refs/heads/z").getReverseEntries().Count);
            Assert.AreEqual(0, db.ReflogReader("HEAD").getReverseEntries().Count);
        }
Exemplo n.º 3
0
        public void testNewNamespaceConflictWithPackedPrefixNameExists()
        {
            string    newRef = "refs/heads/master/x";
            RefUpdate ru     = updateRef(newRef);
            RevCommit newid  = new RevCommit(ru.getNewObjectId())
            {
                // empty
            };

            ru.NewObjectId = newid;
            RefUpdate.RefUpdateResult update = ru.update();
            Assert.AreEqual(RefUpdate.RefUpdateResult.LOCK_FAILURE, update);
            Assert.IsNull(db.ReflogReader("refs/heads/master/x"));
            Assert.AreEqual(0, db.ReflogReader("HEAD").getReverseEntries().Count);
        }