Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?php
2
 
3
class TestCSSParseAtRules extends GenericTest {
4
  function testCSSParseAtRulesSimple() {
5
    $pipeline =& PipelineFactory::create_default_pipeline('utf-8', 'test.pdf');
6
    $new_css_content =& parse_css_atpage_rules('body { background-color: green; } @page { background-color: red; } #test { border: none; }', $pipeline);
7
 
8
    $this->assertEqual($new_css_content, 'body { background-color: green; } #test { border: none; }');
9
 
10
    $color =& $pipeline->_page_at_rules[CSS_PAGE_SELECTOR_ALL][0]->css->getPropertyValue(CSS_BACKGROUND_COLOR);
11
    $this->assertNotNull($color);
12
    $this->assertEqual($color->r, 1);
13
    $this->assertEqual($color->g, 0);
14
    $this->assertEqual($color->b, 0);
15
  }
16
 
17
  function testCSSParseAtRulesNested() {
18
    $pipeline =& PipelineFactory::create_default_pipeline('utf-8', 'test.pdf');
19
    $new_css_content =& parse_css_atpage_rules('body { background-color: green; } @page { @top-left { background-color: lime; } } #test { border: none; }', $pipeline);
20
 
21
    $this->assertEqual($new_css_content, 'body { background-color: green; } #test { border: none; }');
22
 
23
    $color =& $pipeline->_page_at_rules[CSS_PAGE_SELECTOR_ALL][0]->margin_boxes[CSS_MARGIN_BOX_SELECTOR_TOP_LEFT]->css->body->getPropertyValue(CSS_BACKGROUND_COLOR);
24
    $this->assertNotNull($color);
25
    $this->assertEqual($color->r, 0);
26
    $this->assertEqual($color->g, 1);
27
    $this->assertEqual($color->b, 0);
28
  }
29
 
30
  function testCSSParseAtRulesNestedContent() {
31
    $pipeline =& PipelineFactory::create_default_pipeline('utf-8', 'test.pdf');
32
    $new_css_content =& parse_css_atpage_rules('body { background-color: green; } @page { @top-left { content: "TEXT"; } } #test { border: none; }', $pipeline);
33
 
34
    $this->assertEqual($new_css_content, 'body { background-color: green; } #test { border: none; }');
35
 
36
    $content =& $pipeline->_page_at_rules[CSS_PAGE_SELECTOR_ALL][0]->margin_boxes[CSS_MARGIN_BOX_SELECTOR_TOP_LEFT]->css->body->getPropertyValue(CSS_CONTENT);
37
    $this->assertNotNull($content);
38
    $this->assertEqual($content->render(new CSSCounterCollection()), "TEXT");
39
  }
40
}
41
 
42
?>