avm2: Add test for ApplicationDomain::getQualifiedDefinitionNames
This commit is contained in:
parent
f6c0685992
commit
8d96626026
|
@ -0,0 +1,8 @@
|
|||
getQualifiedDefinitionNames() is Vector.<String>: true
|
||||
getQualifiedDefinitionNames().fixed: false
|
||||
getQualifiedDefinitionNames().length: 5
|
||||
getQualifiedDefinitionNames() contains Test: true
|
||||
getQualifiedDefinitionNames() contains VisibleFunction: true
|
||||
getQualifiedDefinitionNames() contains VisibleNamespace: true
|
||||
getQualifiedDefinitionNames() contains foo.bar::Baz: true
|
||||
getQualifiedDefinitionNames() contains foo.bar::Internal: true
|
|
@ -0,0 +1,36 @@
|
|||
package {
|
||||
public class Test {}
|
||||
}
|
||||
|
||||
import flash.system.ApplicationDomain;
|
||||
import foo.bar.Baz;
|
||||
|
||||
/* This should not show up in the output. */
|
||||
class NonVisible { }
|
||||
|
||||
function check_contains(def_names: Vector.<String>, name: String) : void {
|
||||
trace("getQualifiedDefinitionNames() contains " + name + ":", def_names.indexOf(name) != -1);
|
||||
}
|
||||
|
||||
/* Use these to make sure they're included in the SWF. */
|
||||
Baz;
|
||||
VisibleFunction;
|
||||
VisibleNamespace;
|
||||
|
||||
var def_names: * = ApplicationDomain.currentDomain.getQualifiedDefinitionNames();
|
||||
|
||||
trace("getQualifiedDefinitionNames() is Vector.<String>:", def_names is Vector.<String>);
|
||||
trace("getQualifiedDefinitionNames().fixed:", def_names.fixed);
|
||||
trace("getQualifiedDefinitionNames().length:", def_names.length);
|
||||
|
||||
/* NOTE: The order of the names should not matter, so we don't test it. */
|
||||
check_contains(def_names, "Test");
|
||||
check_contains(def_names, "VisibleFunction");
|
||||
check_contains(def_names, "VisibleNamespace");
|
||||
check_contains(def_names, "foo.bar::Baz");
|
||||
check_contains(def_names, "foo.bar::Internal");
|
||||
|
||||
/*
|
||||
NOTE: 'getQualifiedDefinitionNames' is able to raise a 'SecurityError',
|
||||
however we do not currently test that functionality.
|
||||
*/
|
|
@ -0,0 +1,3 @@
|
|||
package {
|
||||
public function VisibleFunction() : void {}
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
package {
|
||||
public namespace VisibleNamespace;
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
package foo.bar {
|
||||
public class Baz {
|
||||
/* Dummy variable to make sure 'foo.bar::Internal' is included in the SWF. */
|
||||
private static var dummy: Internal;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
package foo.bar {
|
||||
/* NOTE: This will be included in 'getQualifiedDefinitionNames()'. despite not being public. */
|
||||
internal class Internal {
|
||||
}
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
num_frames = 1
|
Loading…
Reference in New Issue