Files
jasmine/spec/performance/large_object_test.js
2022-04-16 13:41:44 -07:00

34 lines
762 B
JavaScript

describe('Printing a big object', function() {
function rand(upper) {
return Math.round(upper * Math.random());
}
function generateObject(level) {
const object = {};
for (let i = 0; i < 50; i++) {
const decide = rand(2);
switch (decide) {
case 0:
object['cycle' + i] = object;
break;
case 1:
object['number' + i] = rand(100);
break;
case 2:
if (level < 3) {
object['nesting' + i] = generateObject(level + 1);
}
break;
}
}
return object;
}
it('takes a reasonable amount of time', function() {
const bigObject = generateObject(0);
expect(jasmineUnderTest.pp(bigObject)).toMatch(/cycle/);
});
});