public function testConvertAssertRange() { $selector = '#foo'; $content = array('greater_than' => 5, 'less_than' => 10); $converted = PHPUnit_Util_XML::convertSelectToTag($selector, $content); $tag = array('id' => 'foo'); $this->assertEquals($tag, $converted); }
/** * @param string $selector * @param DOMDocument $actual * @param string $message * @param mixed $content * @param boolean $exists * @since Method available since Release 3.3.0 * @author Mike Naberezny <*****@*****.**> * @author Derek DeVries <*****@*****.**> */ protected static function doXmlSelect($selector, DOMDocument $actual, $message, $content, $exists) { $options = PHPUnit_Util_XML::convertSelectToTag($selector, $content); $tags = PHPUnit_Util_XML::findNodes($actual, $options); // check if any elements exist with given content if (is_bool($content) || is_string($content)) { if ($content === TRUE) { self::assertFalse($tags, $message); } else { if ($exists === TRUE) { self::assertTrue(count($tags) > 0 && $tags[0] instanceof DOMNode, $message); } else { if ($exists === FALSE) { self::assertFalse(count($tags) > 0 && $tags[0] instanceof DOMNode, $message); } } } } else { if (is_numeric($content)) { $tagCount = $tags ? count($tags) : 0; self::assertEquals($content, $tagCount); } else { if (is_array($content) && (isset($content['>']) || isset($content['<']) || isset($content['>=']) || isset($content['<=']))) { $tagCount = $tags ? count($tags) : 0; if (isset($content['>'])) { self::assertTrue($tagCount > $content['>'], $message); } if (isset($content['>='])) { self::assertTrue($tagCount >= $content['>='], $message); } if (isset($content['<'])) { self::assertTrue($tagCount < $content['<'], $message); } if (isset($content['<='])) { self::assertTrue($tagCount <= $content['<='], $message); } } else { throw new InvalidArgumentException(); } } } }