silverstripe-framework/tests/testing/CSSContentParserTest.php
Ingo Schommer 60860cc1b9 MINOR Unified @package PHPdoc (added where missing, removed duplicates)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@56212 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-06-15 13:33:53 +00:00

45 lines
1.4 KiB
PHP

<?php
/**
* @package sapphire
* @subpackage tests
*/
class CSSContentParserTest extends SapphireTest {
function testSelector2xpath() {
$parser = new CSSContentParser("<html><head><title>test</title></head><body><p>test</p></body></html>");
$this->assertEquals("//div[@id='UserProfile']//label", $parser->selector2xpath("div#UserProfile label"));
$this->assertEquals("//div", $parser->selector2xpath("div"));
$this->assertEquals("//div[contains(@class,'test')]", $parser->selector2xpath("div.test"));
$this->assertEquals("//*[@id='UserProfile']//div[contains(@class,'test')]//*[contains(@class,'other')]//div[@id='Item']",
$parser->selector2xpath("#UserProfile div.test .other div#Item"));
}
function testGetBySelector() {
$parser = new CSSContentParser(<<<HTML
<html>
<head>
<title>test</title>
</head>
<body>
<div id="A" class="one two three">
<p class="other">result</p>
</div>
<p>test</p>
</body>
</html>"
HTML
);
$result = $parser->getBySelector('div.one');
$this->assertEquals("A", $result[0]['id'].'');
$result = $parser->getBySelector('div.two');
$this->assertEquals("A", $result[0]['id'].'');
$result = $parser->getBySelector('div.three');
$this->assertEquals("A", $result[0]['id'].'');
$result = $parser->getBySelector('div#A p.other');
$this->assertEquals("result", $result[0] . '');
$result = $parser->getBySelector('#A .other');
$this->assertEquals("result", $result[0] . '');
}
}