C# Class BloomTestsThatAvoidTheSetupFixture.PdfMakerTests

Show file Open project: BloomBooks/BloomDesktop

Public Methods

Method Description
RunMakePdf ( PdfMaker maker, string input, string output, string paperSize, bool landscape, bool saveMemoryMode, bool rightToLeft, PublishModel layout, PublishModel portion ) : void

Runs PdfMaker.MakePdf() with the desired arguments. Note that the implementation (as of March 2015) uses an external program to generate the PDF from the HTML file, so it doesn't need to be run on a background thread. The process includes a (possibly overgenerous) timeout, so we don't try to impose one here.

Running this on a background thread would be okay, except that on Linux, the interaction between Mono and NUnit and the Bloom method result in the BackgroundWorker.RunWorkerCompleted event never being fired if tests other than those in this file are run along with these tests. This is almost certainly an obscure bug in Mono. Running the method directly as we do here sidesteps that problem. (See https://jira.sil.org/browse/BL-831.)

Private Methods

Method Description
MakePdf_BookNameIsChinese_OutputsPdf ( ) : void
MakePdf_BookNameIsNonAscii_OutputsPdf ( ) : void
MakePdf_BookStyleIsBooklet_OutputsPdf ( ) : void
MakePdf_BookStyleIsNone_OutputsPdf ( ) : void

Method Details

RunMakePdf() public method

Runs PdfMaker.MakePdf() with the desired arguments. Note that the implementation (as of March 2015) uses an external program to generate the PDF from the HTML file, so it doesn't need to be run on a background thread. The process includes a (possibly overgenerous) timeout, so we don't try to impose one here.
Running this on a background thread would be okay, except that on Linux, the interaction between Mono and NUnit and the Bloom method result in the BackgroundWorker.RunWorkerCompleted event never being fired if tests other than those in this file are run along with these tests. This is almost certainly an obscure bug in Mono. Running the method directly as we do here sidesteps that problem. (See https://jira.sil.org/browse/BL-831.)
public RunMakePdf ( PdfMaker maker, string input, string output, string paperSize, bool landscape, bool saveMemoryMode, bool rightToLeft, PublishModel layout, PublishModel portion ) : void
maker Bloom.Publish.PdfMaker
input string
output string
paperSize string
landscape bool
saveMemoryMode bool
rightToLeft bool
layout Bloom.Publish.PublishModel
portion Bloom.Publish.PublishModel
return void