Skip to content

Commit 09b45d1

Browse files
tests: Add test for setting property not resetting enumerability
1 parent 44ca7c7 commit 09b45d1

File tree

4 files changed

+60
-0
lines changed

4 files changed

+60
-0
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package {
2+
import flash.display.MovieClip;
3+
4+
public class Test extends MovieClip {
5+
public function Test() {
6+
super();
7+
var obj:Object = {};
8+
9+
testObj(obj, "before setting property");
10+
obj.prop = 99;
11+
testObj(obj, "after setting property");
12+
obj.setPropertyIsEnumerable("prop", false);
13+
testObj(obj, "after making property not-enumerable");
14+
obj.prop = 99;
15+
testObj(obj, "after re-setting property");
16+
obj.prop = 89;
17+
testObj(obj, "after re-setting property (2)");
18+
delete obj.prop;
19+
testObj(obj, "after deleting property");
20+
obj.prop = 12;
21+
testObj(obj, "after re-setting property (3)");
22+
}
23+
24+
static function testObj(obj:Object, info:String) {
25+
trace(info);
26+
trace(" value of prop: " + obj.prop);
27+
trace(" is prop enumerable: " + obj.propertyIsEnumerable("prop"));
28+
for (var key in obj) {
29+
if (key === "prop") {
30+
trace(" prop iterated over");
31+
}
32+
}
33+
}
34+
}
35+
}
36+
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
before setting property
2+
value of prop: undefined
3+
is prop enumerable: false
4+
after setting property
5+
value of prop: 99
6+
is prop enumerable: true
7+
prop iterated over
8+
after making property not-enumerable
9+
value of prop: 99
10+
is prop enumerable: false
11+
after re-setting property
12+
value of prop: 99
13+
is prop enumerable: false
14+
after re-setting property (2)
15+
value of prop: 89
16+
is prop enumerable: false
17+
after deleting property
18+
value of prop: undefined
19+
is prop enumerable: false
20+
after re-setting property (3)
21+
value of prop: 12
22+
is prop enumerable: true
23+
prop iterated over
705 Bytes
Binary file not shown.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
num_frames = 1

0 commit comments

Comments
 (0)