public void CanReturnHierarchyAndOmitHiddenReports() { var serviceMock = MakeMockSsrsService(); var item1 = new CatalogItem() { Path = @"/Test1", Name = @"Test1", TypeName = CrcReportFolderFactory.ReportServiceItemTypes.Report, Hidden = true }; var item2 = new CatalogItem() { Path = @"/Test2", Name = @"Test2", TypeName = CrcReportFolderFactory.ReportServiceItemTypes.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.ItemPath == @"/"))).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 CanReturnHierarchyForFolderWithReports() { var serviceMock = MakeMockSsrsService(); var folder1 = new CatalogItem() { Path = "/Foo", Name = "Foo", TypeName = CrcReportFolderFactory.ReportServiceItemTypes.Folder, }; CatalogItem[] onefolder = new CatalogItem[] { folder1 }; var item1 = new CatalogItem() { Path = @"/Foo/Test1", Name = @"Test1", TypeName = CrcReportFolderFactory.ReportServiceItemTypes.Report, }; var item2 = new CatalogItem() { Path = @"/Foo/Test2", Name = @"Test2", TypeName = CrcReportFolderFactory.ReportServiceItemTypes.Report, }; CatalogItem[] twoitems = new CatalogItem[] { item1, item2 }; var returnResponse1 = new ListChildrenResponse(null, onefolder); serviceMock.Expect(s => s.ListChildren(Arg <ListChildrenRequest> .Matches(lcr => lcr.ItemPath == @"/"))).Return(returnResponse1); var expectedRequest2 = new ListChildrenRequest(null, @"/Foo", false); // first param null? var returnResponse2 = new ListChildrenResponse(null, twoitems); serviceMock.Expect(s => s.ListChildren(Arg <ListChildrenRequest> .Matches(lcr => lcr.ItemPath == @"/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 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.ItemPath == @"/"))).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()); }