1<?php 2 3class TestWidthAbsolutePositioned extends GenericTest { 4 function testWidthAbsolutePositioned1() { 5 $media = null; 6 $pipeline = null; 7 $tree = $this->runPipeline(file_get_contents('test.width.absolute.positioned.1.html'), 8 $media, 9 $pipeline); 10 11 $font_size = $tree->getCSSProperty(CSS_FONT_SIZE); 12 $base = $font_size->getPoints(); 13 14 $element =& $tree->get_element_by_id('div1'); 15 $this->assertWithinMargin($element->get_width(), 16 $pipeline->output_driver->stringwidth('No positioning data at all', 'Times-Roman', 'iso-8859-1', $base), 17 0); 18 19 $element =& $tree->get_element_by_id('div2'); 20 $this->assertWithinMargin($element->get_width(), 21 $pipeline->output_driver->stringwidth('Left', 'Times-Roman', 'iso-8859-1', $base), 22 0); 23 24 $element =& $tree->get_element_by_id('div3'); 25 $this->assertEqual($element->get_width(), 26 mm2pt($media->real_width()) - px2pt(200)); 27 28 $element =& $tree->get_element_by_id('div4'); 29 $this->assertEqual($element->get_width(), 30 px2pt(100)); 31 32 $element =& $tree->get_element_by_id('div5'); 33 $this->assertEqual($element->get_width(), 34 px2pt(100)); 35 36 $element =& $tree->get_element_by_id('div6'); 37 $this->assertEqual($element->get_width(), 38 px2pt(100)); 39 40 $element =& $tree->get_element_by_id('div7'); 41 $this->assertEqual($element->get_width(), 42 px2pt(100)); 43 44 $element =& $tree->get_element_by_id('div8'); 45 $this->assertWithinMargin($element->get_width(), 46 $pipeline->output_driver->stringwidth('Right', 'Times-Roman', 'iso-8859-1', $base), 47 0); 48 49 $element =& $tree->get_element_by_id('div9'); 50 $this->assertEqual($element->get_width(), 51 mm2pt($media->real_width()) - px2pt(100), 52 'DIV with long text and "left" property has incorrect width [%s]'); 53 54 $element =& $tree->get_element_by_id('div10'); 55 $this->assertEqual($element->get_width(), 56 mm2pt($media->real_width()) - px2pt(100), 57 'DIV with long text and "right" property has incorrect width [%s]'); 58 59 $element =& $tree->get_element_by_id('div11'); 60 $this->assertEqual($element->get_width(), 61 mm2pt($media->real_width()), 62 'DIV with long text and no positioning properties has incorrect width [%s]'); 63 64 $element =& $tree->get_element_by_id('div12'); 65 $this->assertEqual($element->get_width(), 66 mm2pt($media->real_width()) - px2pt(200), 67 'DIV with long text and both "left" and "right" properties has incorrect width [%s]'); 68 } 69} 70 71?>