diff options
| author | Greg Roach <fisharebest@webtrees.net> | 2019-03-14 23:12:58 +0000 |
|---|---|---|
| committer | Greg Roach <fisharebest@webtrees.net> | 2019-03-15 12:35:14 +0000 |
| commit | 9a3accd78795046143d5b995599032fcff82a467 (patch) | |
| tree | d15b2760a2afb94a37b292a677a3770fc5c7563c /tests/app/Module/DescendancyReportModuleTest.php | |
| parent | af14d23858d0cfa8a319c6c50a5f28fbc7754829 (diff) | |
| download | webtrees-9a3accd78795046143d5b995599032fcff82a467.tar.gz webtrees-9a3accd78795046143d5b995599032fcff82a467.tar.bz2 webtrees-9a3accd78795046143d5b995599032fcff82a467.zip | |
Tests
Diffstat (limited to 'tests/app/Module/DescendancyReportModuleTest.php')
| -rw-r--r-- | tests/app/Module/DescendancyReportModuleTest.php | 37 |
1 files changed, 33 insertions, 4 deletions
diff --git a/tests/app/Module/DescendancyReportModuleTest.php b/tests/app/Module/DescendancyReportModuleTest.php index cec2a53849..d333ed66a4 100644 --- a/tests/app/Module/DescendancyReportModuleTest.php +++ b/tests/app/Module/DescendancyReportModuleTest.php @@ -17,18 +17,47 @@ declare(strict_types=1); namespace Fisharebest\Webtrees\Module; +use Fisharebest\Webtrees\Report\ReportHtml; +use Fisharebest\Webtrees\Report\ReportParserGenerate; +use Fisharebest\Webtrees\Report\ReportPdf; +use Fisharebest\Webtrees\Tree; + /** * Test harness for the class DescendancyReportModule + * + * @covers \Fisharebest\Webtrees\Report\ReportHtml + * @covers \Fisharebest\Webtrees\Report\ReportParserGenerate; + * @covers \Fisharebest\Webtrees\Report\ReportPdf; */ class DescendancyReportModuleTest extends \Fisharebest\Webtrees\TestCase { + protected static $uses_database = true; + /** - * Test that the class exists - * * @return void */ - public function testClassExists(): void + public function testReportRunsWithoutError(): void { - $this->assertTrue(class_exists('\Fisharebest\Webtrees\Module\DescendancyReportModule')); + $tree = $this->importTree('demo.ged'); + app()->instance(Tree::class, $tree); + $xml = WT_ROOT . 'resources/xml/reports/descendancy_report.xml'; + $vars = [ + 'pid' => ['id' => 'i1'], + 'maxgen' => ['id' => '3'], + 'sources' => ['id' => 'on'], + 'pageSize' => ['id' => 'A4'], + ]; + + ob_start(); + new ReportParserGenerate($xml, new ReportHtml(), $vars, $tree); + $html = ob_get_clean(); + $this->assertStringStartsWith('<', $html); + $this->assertStringEndsWith('>', $html); + + ob_start(); + new ReportParserGenerate($xml, new ReportPdf(), $vars, $tree); + $pdf = ob_get_clean(); + $this->assertStringStartsWith('%PDF', $pdf); + $this->assertStringEndsWith("%%EOF\n", $pdf); } } |
