blob: 685577b924795ad079a9bc0fca7f1aec719dca40 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
// |reftest| skip-if(!xulRuntime.shell)
// -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
// Any copyright is dedicated to the Public Domain.
// http://creativecommons.org/licenses/publicdomain/
function test() {
var check = clone_object_check;
// Invoke with the simple parameter to compile the function before doing
// deep clone, on --ion-eager case, to avoid timeout.
check({x: null, y: undefined});
// Try cloning a deep object. Don't fail with "too much recursion".
var b = {};
var current = b;
for (var i = 0; i < 10000; i++) {
var next = {};
current['x' + i] = next;
current = next;
}
check(b, "deepObject"); // takes 2 seconds :-\
}
test();
reportCompare(0, 0, 'ok');
|