public void AddCount() { var ind = new XmlStorageIndex(_driver); Assert.AreEqual(0, ind.Count()); Assert.Catch <ArgumentNullException>(() => ind.Add(null)); ind.Add(new StorageItem()); Assert.AreEqual(1, ind.Count()); }
public void Deduplication() { _driver.Write(Arg.Any <string>()).Returns(x => new MemoryStream()); var index = new XmlStorageIndex(_driver); _driver.Exists(Arg.Any <string>()).Returns(true); _driver.GetLength(Arg.Is("f1")).Returns(3); _driver.GetLength(Arg.Is("f3")).Returns(3); _driver.GetLength(Arg.Is("f4")).Returns(3); _driver.Read(Arg.Is("f1")).Returns(new MemoryStream(new byte[] { 1, 2, 3 })); _driver.Read(Arg.Is("f3")).Returns(new MemoryStream(new byte[] { 1, 2, 3 })); _driver.Read(Arg.Is("f4")).Returns(new MemoryStream(new byte[] { 1, 2, 3 }) { Position = 1 }); var storage = new XmlStorage(_driver, index); index.Add(new StorageItem { FileName = "f1", Url = "url1" }); index.Add(new StorageItem { FileName = "f2", Url = "url2" }); index.Add(new StorageItem { FileName = "f3", Url = "url3" }); index.Add(new StorageItem { FileName = "f4", Url = "url4" }); storage.Deduplication(); Assert.IsTrue(index.Items.Any(x => x.FileName == "f2")); Assert.IsTrue( index.Items.Count(x => x.FileName == "f1") == 3 || index.Items.Count(x => x.FileName == "f3") == 3 || index.Items.Count(x => x.FileName == "f4") == 3 ); }
public void Exists() { var filename = "testFilename"; var item = new StorageItem() { FileName = filename, Url = "testurl" }; var ind = new XmlStorageIndex(_driver); Assert.Throws <ArgumentNullException>(() => ind.Get(null)); Assert.Throws <ArgumentException>(() => ind.Get(new StorageItem())); Assert.DoesNotThrow(() => ind.Get(item)); Assert.IsFalse(ind.Get(item) != null); ind.Add(new StorageItem { FileName = filename }); Assert.IsTrue(ind.Get(item) != null); ind.Add(new StorageItem { Url = "testurl" }); Assert.IsTrue(ind.Get(item) != null); }
public void Remove() { var testname = "name"; var ind = new XmlStorageIndex(_driver); Assert.Catch <ArgumentNullException>(() => ind.Remove(null)); ind.Add(new StorageItem { FileName = testname }); Assert.AreEqual(1, ind.Count()); ind.Remove(new StorageItem { FileName = testname }); Assert.AreEqual(0, ind.Count()); }
public void GetIndexExist(StorageItem[] items) { _driver.Exists(Arg.Is(XmlStorageIndex.IndexName)).Returns(false); var ind = new XmlStorageIndex(_driver); foreach (var storageItem in items) { ind.Add(storageItem); } ind.Save(); _driver.Exists(Arg.Is(XmlStorageIndex.IndexName)).Returns(true); _driver.Read(Arg.Is(XmlStorageIndex.IndexName)).Returns(ux => File.OpenRead(XmlStorageIndex.IndexName)); var x = new XmlStorageIndex(_driver); Assert.AreEqual(x.Count(), items.Length); Assert.DoesNotThrow(x.Save); }