/// <summary> /// Creates markdown files using the fromdirectory verb /// </summary> /// <param name="opts"></param> internal static void HandleDocumentationFromDirectory(FromDirectoryOptions opts) { Program.VerboseMode = opts.Verbose; var searchOption = opts.RecursiveScan ? SearchOption.AllDirectories : SearchOption.TopDirectoryOnly; var fileInfos = new List <MdFileInfo>(); fileInfos.AddRange(ScanFolderForAssemblies(opts.InputFolderPath, opts.Filter, opts.ReferencePaths, searchOption)); if (opts.IncludeCustomNodes) { fileInfos.AddRange(ScanFolderForCustomNodes(opts.InputFolderPath, searchOption)); } MarkdownHandler.CreateMdFilesFromFileNames(fileInfos, opts.OutputFolderPath, opts.Overwrite, opts.CompressImages, opts.CompressGifs, opts.DictionaryDirectory, opts.LayoutSpecPath); }
public void MarkdownHttpHandler_Renders_H1() { var responseStream = new MemoryStream(); var mockHttpResponse = new Mock <IHttpResponse>(); mockHttpResponse .SetupGet(x => x.OutputStream) .Returns(responseStream); var mockHttpRequest = new Mock <IHttpRequest>(); mockHttpRequest .SetupGet(x => x.FilePath) .Returns(string.Empty); var mockHttpContext = new Mock <IHttpContext>(); mockHttpContext .SetupGet(x => x.Request) .Returns(() => mockHttpRequest.Object); mockHttpContext .SetupGet(x => x.Response) .Returns(() => mockHttpResponse.Object); var mockFileSystem = new Mock <IFileSystem>(); mockFileSystem .Setup(x => x.OpenRead(It.IsAny <string>())) .Returns <string>(s => { string markdown = "#This is an H1"; return(new MemoryStream(Encoding.ASCII.GetBytes(markdown))); }); MarkdownHandler markdownHandler = new MarkdownHandler(mockFileSystem.Object, new MarkdownTextTransform(new Markdown())); markdownHandler.ProcessRequest(mockHttpContext.Object); responseStream.Seek(0, SeekOrigin.Begin); using (var streamReader = new StreamReader(responseStream)) { var textResponse = streamReader.ReadToEnd(); Assert.AreEqual("<h1>This is an H1</h1>\n", textResponse); } }
public void Does_process_Markdown_pages() { var markdownHandler = new MarkdownHandler("/AppData/NoTemplate/Static") { MarkdownFormat = markdownFormat, }; var httpReq = new MockHttpRequest { QueryString = new NameValueCollection() }; var httpRes = new MockHttpResponse(); markdownHandler.ProcessRequest(httpReq, httpRes, "Static"); var expectedHtml = markdownFormat.Transform( File.ReadAllText("~/AppData/NoTemplate/Static.md".MapProjectPath())); httpRes.Close(); Assert.That(httpRes.Contents, Is.EqualTo(expectedHtml)); }
internal static void HandlePackageDocumentation(FromPackageOptions opts) { Program.VerboseMode = opts.Verbose; var package = PackageFromRoot(opts.InputFolderPath); var nodeLibraryFileInfos = ScanNodeLibraries(package, opts.ReferencePaths); var customNodeFileInfos = ScanCustomNodes(package); var fileInfos = nodeLibraryFileInfos .Union(customNodeFileInfos); var outdir = package.NodeDocumentaionDirectory; if (!Directory.Exists(outdir)) { Directory.CreateDirectory(outdir); } MarkdownHandler.CreateMdFilesFromFileNames(fileInfos, outdir, opts.Overwrite); }