|
|
@ -18,24 +18,30 @@ use MensBeam\HTML\Document; |
|
|
|
*/ |
|
|
|
class TestDOM extends \PHPUnit\Framework\TestCase { |
|
|
|
/** @dataProvider provideNamespacedElements */ |
|
|
|
public function testCreateNamespacedElements(?string $ns, string $name, string $local, string $prefix): void { |
|
|
|
public function testCreateNamespacedElements(?string $nsIn, string $nameIn, ?string $nsOut, string $local, string $prefix): void { |
|
|
|
$d = new Document; |
|
|
|
$e = $d->createElementNS($ns, $name); |
|
|
|
$this->assertSame($ns, $e->namespaceURI); |
|
|
|
$e = $d->createElementNS($nsIn, $nameIn); |
|
|
|
$this->assertSame($nsOut, $e->namespaceURI); |
|
|
|
$this->assertSame($local, $e->localName); |
|
|
|
$this->assertSame($prefix, $e->prefix); |
|
|
|
} |
|
|
|
|
|
|
|
public function provideNamespacedElements(): iterable { |
|
|
|
return [ |
|
|
|
[null, "test", "test", ""], |
|
|
|
[null, "test:test", "testU00003Atest", ""], |
|
|
|
["http://www.w3.org/2000/svg", "svg", "svg", ""], |
|
|
|
["http://www.w3.org/2000/svg", "svg:svg", "svg", "svg"], |
|
|
|
["fake_ns", "test:test", "test", "test"], |
|
|
|
["fake_ns", "test:test:test", "testU00003Atest", "test"], |
|
|
|
["fake_ns", "te st:test", "test", "teU000020st"], |
|
|
|
[null, "9", "U000039", ""], |
|
|
|
[null, "test", null, "test", ""], |
|
|
|
[null, "test:test", null, "testU00003Atest", ""], |
|
|
|
["http://www.w3.org/2000/svg", "svg", "http://www.w3.org/2000/svg", "svg", ""], |
|
|
|
["http://www.w3.org/2000/svg", "svg:svg", "http://www.w3.org/2000/svg", "svg", "svg"], |
|
|
|
["fake_ns", "test:test", "fake_ns", "test", "test"], |
|
|
|
["fake_ns", "test:test:test", "fake_ns", "testU00003Atest", "test"], |
|
|
|
["fake_ns", "te st:test", "fake_ns", "test", "teU000020st"], |
|
|
|
[null, "9", null, "U000039", ""], |
|
|
|
["http://www.w3.org/1999/xhtml", "test", null, "test", ""], |
|
|
|
["http://www.w3.org/1999/xhtml", "TEST", null, "test", ""], |
|
|
|
[null, "TEST", null, "test", ""], |
|
|
|
["fake_ns", "TEST", "fake_ns", "TEST", ""], |
|
|
|
["http://www.w3.org/2000/svg", "TEST", "http://www.w3.org/2000/svg", "TEST", ""], |
|
|
|
["http://www.w3.org/1998/Math/MathML", "TEST", "http://www.w3.org/1998/Math/MathML", "TEST", ""], |
|
|
|
]; |
|
|
|
} |
|
|
|
} |
|
|
|