avm2: Add failing namespace test for flash.xml

This commit is contained in:
Tom Schuster 2023-10-03 16:03:58 +02:00 committed by Adrian Wielgosik
parent 278a6ddf53
commit ed1a2ee27c
4 changed files with 102 additions and 0 deletions

View File

@ -0,0 +1,58 @@
package {
import flash.display.Sprite;
public class Test extends Sprite { }
}
import flash.xml.XMLDocument;
var doc:XMLDocument = new XMLDocument('<xml:a/><foo xml:bar="hello"/><a xmlns:example="http://example.org"><b/><example:c/></a>');
trace("/// doc.childNodes[0].toString()");
trace(doc.childNodes[0].toString());
trace("/// doc.childNodes[0].prefix");
trace(doc.childNodes[0].prefix);
trace("/// doc.childNodes[0].localName");
trace(doc.childNodes[0].localName);
trace("/// doc.childNodes[0].namespaceURI");
trace(doc.childNodes[0].namespaceURI);
trace("/// doc.childNodes[1].toString()");
trace(doc.childNodes[1].toString());
trace("/// doc.childNodes[1].prefix");
trace(doc.childNodes[1].prefix);
trace("/// doc.childNodes[1].localName");
trace(doc.childNodes[1].localName);
trace("/// doc.childNodes[1].namespaceURI");
trace(doc.childNodes[1].namespaceURI);
trace("/// doc.childNodes[2].toString()");
trace(doc.childNodes[2].toString());
trace("/// doc.childNodes[2].prefix");
trace(doc.childNodes[2].prefix);
trace("/// doc.childNodes[2].localName");
trace(doc.childNodes[2].localName);
trace("/// doc.childNodes[2].namespaceURI");
trace(doc.childNodes[2].namespaceURI);
trace("/// doc.childNodes[2].childNodes[0].toString()");
trace(doc.childNodes[2].childNodes[0].toString());
trace("/// doc.childNodes[2].childNodes[0].prefix");
trace(doc.childNodes[2].childNodes[0].prefix);
trace("/// doc.childNodes[2].childNodes[0].localName");
trace(doc.childNodes[2].childNodes[0].localName);
trace("/// doc.childNodes[2].childNodes[0].namespaceURI");
trace(doc.childNodes[2].childNodes[0].namespaceURI);
trace("/// doc.childNodes[2].childNodes[1].toString()");
trace(doc.childNodes[2].childNodes[1].toString());
trace("/// doc.childNodes[2].childNodes[1].prefix");
trace(doc.childNodes[2].childNodes[1].prefix);
trace("/// doc.childNodes[2].childNodes[1].localName");
trace(doc.childNodes[2].childNodes[1].localName);
trace("/// doc.childNodes[2].childNodes[1].namespaceURI");
trace(doc.childNodes[2].childNodes[1].namespaceURI);
for (var name in doc.childNodes[1].attributes) {
trace("/// attribute name");
trace(name);
}

View File

@ -0,0 +1,42 @@
/// doc.childNodes[0].toString()
<xml:a />
/// doc.childNodes[0].prefix
xml
/// doc.childNodes[0].localName
a
/// doc.childNodes[0].namespaceURI
null
/// doc.childNodes[1].toString()
<foo xml:bar="hello" />
/// doc.childNodes[1].prefix
/// doc.childNodes[1].localName
foo
/// doc.childNodes[1].namespaceURI
null
/// doc.childNodes[2].toString()
<a xmlns:example="http://example.org"><b /><example:c /></a>
/// doc.childNodes[2].prefix
/// doc.childNodes[2].localName
a
/// doc.childNodes[2].namespaceURI
null
/// doc.childNodes[2].childNodes[0].toString()
<b />
/// doc.childNodes[2].childNodes[0].prefix
/// doc.childNodes[2].childNodes[0].localName
b
/// doc.childNodes[2].childNodes[0].namespaceURI
null
/// doc.childNodes[2].childNodes[1].toString()
<example:c />
/// doc.childNodes[2].childNodes[1].prefix
example
/// doc.childNodes[2].childNodes[1].localName
c
/// doc.childNodes[2].childNodes[1].namespaceURI
http://example.org
/// attribute name
xml:bar

Binary file not shown.

View File

@ -0,0 +1,2 @@
num_frames = 1
known_failure = true