Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 // uneval works on objects with no callable .toSource method.
3 var obj = Object.create(null);
4 assertEq(uneval(obj), "({})");
5 assertEq(Function.prototype.toSource.call(obj), "({})");
6 obj.x = 1;
7 obj.y = 2;
8 assertEq(uneval(obj), "({x:1, y:2})");
10 var d = new Date();
11 delete Date.prototype.toSource;
12 assertEq(uneval(d), "({})");
14 delete Object.prototype.toSource;
15 assertEq(uneval({p: 2+2}), "({p:4})");
17 assertEq(uneval({toSource: [0]}), "({toSource:[0]})");