Exemple #1
0
        public void StoreObjectStoresEncodedObject()
        {
            // Arrange
            const string knownHash = "44ded774dda9dd8d53dcf37b7c77375180ab45dd";
            Mock<IPersistentDictionary> mockStorage = new Mock<IPersistentDictionary>(MockBehavior.Strict);
            Database db = new Database(new HashGenerator(new SHA1Managed()), new Mock<IReferenceDirectory>().Object, mockStorage.Object, new GitObjectCodec(), new Mock<IPackedObjectDatabase>().Object);
            using (MemoryStream expectedStrm = new MemoryStream())
            {
                DatabaseObject expectedObj = DatabaseObject.Null();
                mockStorage.Setup(s => s.OpenWrite(knownHash, /* create */ true)).Returns(expectedStrm);

                // Act
                db.StoreObject(expectedObj);
                expectedStrm.Flush();

                // Assert
                Assert.Equal("null 0\0", Encoding.ASCII.GetString(expectedStrm.ToArray()));
            }
        }
Exemple #2
0
 public void StoreObjectRequiresNonNullObject()
 {
     Database db = new Database(new HashGenerator(new SHA1Managed()), new Mock<IReferenceDirectory>().Object, new Mock<IPersistentDictionary>().Object, new GitObjectCodec(), new Mock<IPackedObjectDatabase>().Object);
     Assert.Throws<ArgumentNullException>(() => db.StoreObject(null))
           .WithParamName("obj");
 }