public void GetExistingItemsWithSubFolder() { Mock<IRSCommunicator> communicator = new Mock<IRSCommunicator>(); CatalogItem item = new CatalogItem() { Path = "/Folder/report", Type = ItemTypeEnum.Report, Name = "report" }; CatalogItem subfolder = new CatalogItem() { Path = "/Folder/subfolder", Type = ItemTypeEnum.Folder, Name = "subfolder" }; CatalogItem subItem = new CatalogItem() { Path = "/Folder/subfolder/subreport", Type = ItemTypeEnum.Report, Name = "subreport" }; communicator.Setup(c => c.GetExistingReports("Folder")).Returns(new[] { item, subfolder, subItem }); RSRepository repo = new RSRepository(communicator.Object, null); Folder rootFolder = repo.GetExistingItems("Folder"); Assert.AreEqual("Folder", rootFolder.Name); Assert.AreEqual("report", rootFolder.Reports.First().Name); Folder subFolder = rootFolder.SubFolders.First(); Assert.AreEqual("subfolder", subFolder.Name); Assert.AreEqual("subreport", subFolder.Reports.First().Name); }
public Folder(CatalogItem item) : this() { Name = item.Name; Path = item.Path; string[] parts = Path.Split('/'); Depth = parts.Length; }
public Report(CatalogItem item) : this() { Name = item.Name; Path = item.Path; }