Mercurial > projects > dil
view trunk/src/docgen/tests/listing.d @ 452:f658ec4a15dd
Simple docgen ui util, some fixes.
author | Jari-Matti M?kel? <jmjm@iki.fi> |
---|---|
date | Wed, 24 Oct 2007 22:31:38 +0300 |
parents | 3f44c38bf870 |
children | 4e5b35df3060 |
line wrap: on
line source
/** * Author: Jari-Matti Mäkelä * License: GPL3 */ module docgen.tests.listing; import docgen.misc.parser; import docgen.tests.common; import docgen.sourcelisting.writers; import docgen.document.writers; import dil.Module; import tango.io.Stdout; import tango.io.FileConduit; import tango.text.Util; import tango.io.protocol.Writer : Writer; // doc template //@unittest void listing1() { auto gen = new TestDocGenerator; gen.options.docFormat = DocFormat.LaTeX; auto fname = "files.tex"; auto ddf = new DefaultDocumentWriterFactory(gen); auto dlwf = new DefaultListingWriterFactory(gen); auto file = new FileConduit("docgen/teststuff/" ~ fname, FileConduit.WriteCreate); Module[] modules; Parser.loadModules( [ "c" ], [ "docgen/teststuff/" ], null, true, -1, (char[] fqn, char[] path, Module m) {}, (Module imported, Module importer) {}, modules ); foreach(mod; modules) { auto dstFname = replace(mod.moduleFQN.dup, '.', '_'); auto srcFile = new FileConduit(mod.filePath); auto dstFile = new FileConduit("docgen/teststuff/_" ~ dstFname ~ ".d", FileConduit.WriteCreate); auto writer = dlwf.createListingWriter( ddf.createDocumentWriter( [ file ] ) ); writer.generateListing(srcFile, dstFile, mod.moduleFQN); srcFile.close(); dstFile.close(); } file.close(); }