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); }
/// <summary> /// Unmarshaller the response from the service to the response class. /// </summary> /// <param name="context"></param> /// <returns></returns> public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context) { ListChildrenResponse response = new ListChildrenResponse(); context.Read(); int targetDepth = context.CurrentDepth; while (context.ReadAtDepth(targetDepth)) { if (context.TestExpression("Children", targetDepth)) { var unmarshaller = new ListUnmarshaller <Child, ChildUnmarshaller>(ChildUnmarshaller.Instance); response.Children = unmarshaller.Unmarshall(context); continue; } if (context.TestExpression("NextToken", targetDepth)) { var unmarshaller = StringUnmarshaller.Instance; response.NextToken = unmarshaller.Unmarshall(context); continue; } } return(response); }
public void SetListChildrenExpectation(ReportingService2010Soap mockService, string path, CatalogItem[] returnItems) { var lcResponse = new ListChildrenResponse(null, returnItems); mockService.Expect(m => m.ListChildren( Arg <ListChildrenRequest> .Matches( lcr => lcr.ItemPath == path) )).Return(lcResponse); }
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()); }
public void SetListChildrenExpectation(ReportingService2005Soap mockService, string path, CatalogItem[] returnItems) { var lcResponse = new ListChildrenResponse(null, returnItems); mockService.Expect(m => m.ListChildren( Arg<ListChildrenRequest>.Matches( lcr => lcr.Item == path) )).Return(lcResponse); }
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 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 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()); }