1<?php 2 3class TestNoteCall extends UnitTestCase { 4 function runPipeline($html) { 5 $pipeline = PipelineFactory::create_default_pipeline("", ""); 6 $pipeline->configure(array('scalepoints' => false)); 7 8 $pipeline->fetchers = array(new MyFetcherMemory($html, "")); 9 $pipeline->data_filters[] = new DataFilterHTML2XHTML(); 10 $pipeline->destination = new DestinationFile("test.pdf"); 11 12 parse_config_file('../html2ps.config'); 13 $media = Media::predefined("A5"); 14 $pipeline->_prepare($media); 15 return $pipeline->_layout_item("", $media, 0, $context, $positioned_filter); 16 } 17 18 function testNoteCallWidthClean() { 19 $tree = $this->runPipeline(' 20<html><head><style> 21.footnote { 22 position: footnote; 23} 24</style> 25</head><body> 26<p id="p" style="text-align: justify;"> 27TEXT 28TEXT TEXT TEXT TEXT TEXT TEXT 29TEXT TEXT TEXT TEXT TEXT TEXT 30TEXT TEXT TEXT TEXT TEXT TEXT 31TEXT TEXT TEXT TEXT TEXT TEXT 32</p> 33</body></html> 34'); 35 36 $p = $tree->get_element_by_id('p'); 37 $content = $p->content[0]; 38 39 $max_right = $p->get_left(); 40 foreach ($content->content as $text) { 41 $max_right = max($max_right, $text->get_right()); 42 }; 43 44 $this->assertTrue($max_right < $p->get_right(), 45 sprintf('Right edge of paragraph content (%s) is greater than paragraph right edge (%s)', 46 $max_right, 47 $p->get_right())); 48 } 49 50 51 function testNoteCallWidth() { 52 $tree = $this->runPipeline(' 53<html><head><style> 54.footnote { 55 position: footnote; 56} 57</style> 58</head><body> 59<p id="p" style="text-align: justify;"> 60TEXT <span class="footnote">FOOTNOTE</span> 61TEXT TEXT TEXT TEXT TEXT TEXT 62TEXT TEXT TEXT TEXT TEXT TEXT 63TEXT TEXT TEXT TEXT TEXT TEXT 64TEXT TEXT TEXT TEXT TEXT TEXT 65</p> 66</body></html> 67'); 68 69 $p = $tree->get_element_by_id('p'); 70 $content = $p->content[2]; 71 72 $max_right = $p->get_left(); 73 foreach ($content->content as $text) { 74 $max_right = max($max_right, $text->get_right()); 75 }; 76 77 $this->assertTrue($max_right < $p->get_right(), 78 sprintf('Right edge of paragraph content (%s) is greater than paragraph right edge (%s)', 79 $max_right, 80 $p->get_right())); 81 } 82} 83 84?>