function test_multiplePages() { $report = new Thinreports\Report(__DIR__ . '/layouts/normal_page.tlf'); $report->addPage(); $report->addPage(); $report->addBlankPage(); $analyzer = $this->analyzePDF($report->generate()); $this->assertEquals(3, $analyzer->getPageCount()); $this->assertContains('Normal Page', $analyzer->getTextsInPage(1)); $this->assertContains('Normal Page', $analyzer->getTextsInPage(2)); $this->assertTrue($analyzer->isEmptyPage(3)); }
function test_multipleLayouts() { $report = new Thinreports\Report(__DIR__ . '/layouts/A4_landscape.tlf'); foreach (array_keys($this->layout_geometries) as $filename) { $report->addPage(__DIR__ . "/layouts/{$filename}.tlf"); # Insert a blank page $report->addBlankPage(); } # Finally, insert a page without specifing layout $report->addPage(); $analyzer = $this->analyzePDF($report->generate()); $expected_page_formats = array(array('size' => $this->layout_geometries['A3_portrait'], 'is_blank' => false), array('size' => $this->layout_geometries['A3_portrait'], 'is_blank' => true), array('size' => $this->layout_geometries['A4_portrait'], 'is_blank' => false), array('size' => $this->layout_geometries['A4_portrait'], 'is_blank' => true), array('size' => $this->layout_geometries['A4_landscape'], 'is_blank' => false), array('size' => $this->layout_geometries['A4_landscape'], 'is_blank' => true), array('size' => $this->layout_geometries['user_400x400'], 'is_blank' => false), array('size' => $this->layout_geometries['user_400x400'], 'is_blank' => true), array('size' => $this->layout_geometries['A4_landscape'], 'is_blank' => false)); foreach ($expected_page_formats as $index => $expected_page_format) { $page_no = $index + 1; $expected_page_size = $expected_page_format['size']; $expected_page_is_blank = $expected_page_format['is_blank']; $actual_page_size = $analyzer->getSizeOfPage($page_no); $actual_page_is_blank = $analyzer->isEmptyPage($page_no); $subject = "At page {$page_no}"; $this->assertEquals($expected_page_size['width'], $actual_page_size['width'], $subject); $this->assertEquals($expected_page_size['height'], $actual_page_size['height'], $subject); $this->assertEquals($expected_page_is_blank, $actual_page_is_blank, $subject); } }