public void ParseFoldersWhenMultipleFolderNodeAndCreateThem() { var mockFolderService = new Mock <FolderService>(); mockFolderService.Setup(s => s.Create(It.IsAny <string>(), It.IsAny <string>())).Verifiable(); var folderService = mockFolderService.Object; var stubReportService = new Mock <ReportService>(); stubReportService.Setup(s => s.Create(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <Dictionary <string, string> >(), It.IsAny <Dictionary <string, string> >())).Verifiable(); var reportService = stubReportService.Object; var stubReportParser = new Mock <ReportParser>(reportService); stubReportParser.Setup(s => s.Execute(It.IsAny <XmlNode>())).Verifiable(); var childParser = (IParser)stubReportParser.Object; var folderParser = new FolderParser(folderService, Enumerable.Repeat(childParser, 1)); var xmlDoc = new XmlDocument(); using (Stream stream = Assembly.GetExecutingAssembly() .GetManifestResourceStream("RsPackage.Testing.Resources.MultiLevelSample.xml")) using (StreamReader reader = new StreamReader(stream)) xmlDoc.Load(reader); var root = xmlDoc.FirstChild.NextSibling; folderParser.Execute(root); Mock.Get(folderService).Verify(s => s.Create("Analysis", null)); Mock.Get(folderService).Verify(s => s.Create("Low-level", null)); Mock.Get(folderService).Verify(s => s.Create("Realtime", "/Analysis")); Mock.Get(folderService).Verify(s => s.Create("Confidential", "/Analysis/Realtime")); }
public void ParseFolderWithPolicy() { var stubFolderService = new Mock <FolderService>(); stubFolderService.Setup(s => s.Create(It.IsAny <string>(), It.IsAny <string>())); var folderService = stubFolderService.Object; var mockPolicyParser = new Mock <PolicyParser>(); mockPolicyParser.Setup(p => p.Execute(It.IsAny <XmlNode>())).Verifiable(); var policyParser = mockPolicyParser.Object; var parser = new FolderParser(folderService, new[] { policyParser }); var xmlDoc = new XmlDocument(); using (Stream stream = Assembly.GetExecutingAssembly() .GetManifestResourceStream("RsPackage.Testing.Resources.MultiLevelSample.xml")) using (StreamReader reader = new StreamReader(stream)) xmlDoc.Load(reader); var root = xmlDoc.FirstChild.NextSibling.SelectSingleNode("./Folder[@Name='Analysis']"); parser.Execute(root); Mock.Get(policyParser).Verify(p => p.Execute(It.IsAny <XmlNode>()), Times.Exactly(2)); }
public void ParseReportsMultipleFolderNode() { var stubFolderService = new Mock <FolderService>(); stubFolderService.Setup(s => s.Create(It.IsAny <string>(), It.IsAny <string>())).Verifiable(); var folderService = stubFolderService.Object; var stubReportService = new Mock <ReportService>(); stubReportService.Setup(s => s.Create(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <IDictionary <string, string> >(), It.IsAny <IDictionary <string, string> >())).Verifiable(); var reportService = stubReportService.Object; var mockReportParser = new Mock <ReportParser>(reportService); mockReportParser.Setup(s => s.Execute(It.IsAny <XmlNode>())).Verifiable(); var childParser = (IParser)mockReportParser.Object; var folderParser = new FolderParser(folderService, Enumerable.Repeat(childParser, 1)); var xmlDoc = new XmlDocument(); using (Stream stream = Assembly.GetExecutingAssembly() .GetManifestResourceStream("RsPackage.Testing.Resources.MultiLevelSample.xml")) using (StreamReader reader = new StreamReader(stream)) xmlDoc.Load(reader); var root = xmlDoc.FirstChild.NextSibling; folderParser.Execute(root); Mock.Get(childParser).Verify(s => s.Execute(It.IsAny <XmlNode>()), Times.Exactly(4)); }
public void ParseMultipleFolderNode() { var mock = new Mock <FolderService>(); mock.Setup(s => s.Create(It.IsAny <string>(), It.IsAny <string>())).Verifiable(); var service = mock.Object; var parser = new FolderParser(service); var xmlDoc = new XmlDocument(); using (Stream stream = Assembly.GetExecutingAssembly() .GetManifestResourceStream("RsPackage.Testing.Resources.MultiLevelSample.xml")) using (StreamReader reader = new StreamReader(stream)) xmlDoc.Load(reader); var root = xmlDoc.FirstChild.NextSibling; parser.Execute(root); Mock.Get(service).Verify(s => s.Create(It.IsAny <string>(), It.IsAny <string>()), Times.Exactly(4)); }