public void CanReturnHierarchyForFolderWithReports() { var serviceMock = MakeMockSsrsService(); var folder1 = new CatalogItem() { Path = "/Foo", Name = "Foo", Type = ItemTypeEnum.Folder }; CatalogItem[] onefolder = new CatalogItem[] { folder1 }; var item1 = new CatalogItem() { Path = @"/Foo/Test1", Name = @"Test1", Type = ItemTypeEnum.Report }; var item2 = new CatalogItem() { Path = @"/Foo/Test2", Name = @"Test2", Type = ItemTypeEnum.Report }; CatalogItem[] twoitems = new CatalogItem[] { item1, item2 }; var returnResponse1 = new ListChildrenResponse(null, onefolder); serviceMock.Expect(s => s.ListChildren(Arg<ListChildrenRequest>.Matches(lcr => lcr.Item == @"/") )).Return(returnResponse1); var expectedRequest2 = new ListChildrenRequest(@"/Foo", false); var returnResponse2 = new ListChildrenResponse(null, twoitems); serviceMock.Expect(s => s.ListChildren(Arg<ListChildrenRequest>.Matches(lcr => lcr.Item == @"/Foo"))).Return(returnResponse2); var fac = new CrcReportFolderFactory(); var ret = fac.Create(serviceMock); Assert.IsNotNull(ret); Assert.AreEqual(String.Empty, ret.FolderName); Assert.AreEqual(@"/", ret.Path); Assert.AreEqual(1, ret.SubFolders.Count()); Assert.AreEqual(0, ret.Reports.Count()); var subFolder = ret.SubFolders[0]; Assert.AreEqual("/Foo", subFolder.Path); Assert.AreEqual("Foo", subFolder.FolderName); Assert.IsTrue(subFolder.Reports.FirstOrDefault(r => r.DisplayName == @"Test1") != null); Assert.AreEqual(@"/Foo/Test1", subFolder.Reports.FirstOrDefault(r => r.DisplayName == @"Test1").ReportPath); Assert.IsTrue(subFolder.Reports.FirstOrDefault(r => r.DisplayName == @"Test2") != null); Assert.AreEqual(@"/Foo/Test2", subFolder.Reports.FirstOrDefault(r => r.DisplayName == @"Test2").ReportPath); }
public void CanReturnHierarchyAndOmitHiddenReports() { var serviceMock = MakeMockSsrsService(); var item1 = new CatalogItem() { Path = @"/Test1", Name = @"Test1", Type = ItemTypeEnum.Report, Hidden = true }; var item2 = new CatalogItem() { Path = @"/Test2", Name = @"Test2", Type = ItemTypeEnum.Report, Hidden = false }; CatalogItem[] twoitems = new CatalogItem[] { item1, item2 }; var returnResponse = new ListChildrenResponse(null, twoitems); serviceMock.Expect(s => s.ListChildren(Arg<ListChildrenRequest>.Matches(lcr => lcr.Item == @"/"))).Return(returnResponse); var fac = new CrcReportFolderFactory(); var ret = fac.Create(serviceMock); Assert.IsNotNull(ret); Assert.AreEqual(String.Empty, ret.FolderName); Assert.AreEqual(@"/", ret.Path); Assert.AreEqual(0, ret.SubFolders.Count()); Assert.AreEqual(1, ret.Reports.Count()); Assert.IsTrue(ret.Reports.FirstOrDefault(r => r.DisplayName == @"Test2") != null); }
public void CanReturnHierarchyForEmptyList() { var serviceMock = MakeMockSsrsService(); CatalogItem[] empty = new CatalogItem[0]; var returnResponse = new ListChildrenResponse(null, empty); serviceMock.Expect(s => s.ListChildren( Arg<ListChildrenRequest>.Matches(lcr => lcr.Item == @"/"))).Return(returnResponse); var fac = new CrcReportFolderFactory(); var ret = fac.Create(serviceMock); Assert.IsNotNull(ret); Assert.AreEqual(String.Empty, ret.FolderName); Assert.AreEqual(@"/", ret.Path); Assert.AreEqual(0, ret.SubFolders.Count()); Assert.AreEqual(0, ret.Reports.Count()); }