Class Regress


  • public class Regress
    extends Object
    Creates a directory containing output from the renderer as text, given a set of input files (XHTML, XML). These files serve as the reference image for a comparison with later runs of the renderer. For any input file _input_, the zip will contain _input_, _input.layout.txt_, _input.rendered.txt_ and _input.png_. To use, create an instance of Regress with input directory, output directory and width, then call snapshot().
     Regress regress = new Regress(sourceDir, outputDir, width);
     regress.snapshot();
     
    One the regress is done, you can use Zipper to pack it up:
      new Zipper(outputDir, outputZip).zipDirectory();
     
    Regress will try to render all files in the source directory; a failure to render one file (e.g. if an exception is thrown) will not stop the rendering process.

    Files in the source directory with the following extensions are included: htm, html, xht, xhtml, and xml.

    You can also run this from the command line, passing in the source directory as argument 1, and the output file name as argument 2. The output is created in the standard temp directory in a subdirectory called "reference". The path to the output directory will be printed to the console when complete.

     org.xhtmlrenderer.test.Regress ./regress/input-html/ ./regress/output.zip
     
    • Constructor Detail

      • Regress

        public Regress​(File sourceDir,
                       File outputDir,
                       int width)
        Initialize to read from sourceDir and generate files to outputDir, using width points to constrain layout.
        Parameters:
        sourceDir - directory to read from
        outputDir - directory to write to
        width - width to constrain layout to
    • Method Detail

      • snapshot

        public void snapshot()
                      throws IOException
        For all files in the input directory, attempts to render and output a textual box model and a PNG file in the output directory. Does not zip the contents of the output directory. Any single file that fails to render will not halt the process. Low-level IO errors will may, however, interrupt it. Both the file count and the failed count are reset on starting; on finishing those values can be read through their respective accessors in this class.
        Throws:
        IOException - on reading contents or writing output