mirror of
https://github.com/Hopiu/angular.js.git
synced 2026-04-08 00:51:03 +00:00
56 lines
1.7 KiB
JavaScript
56 lines
1.7 KiB
JavaScript
|
|
describe('json', function() {
|
||
|
|
xit('should parse json in a reasonable time', function() {
|
||
|
|
var totalSubstr = 0,
|
||
|
|
totalGetMatch = 0,
|
||
|
|
totalConsume = 0,
|
||
|
|
totalTime = 0,
|
||
|
|
runTimes = [];
|
||
|
|
|
||
|
|
for (var i=0; i<10; i++) {
|
||
|
|
window.substrTime = 0;
|
||
|
|
window.getMatchTime = 0;
|
||
|
|
window.consumeTime = 0;
|
||
|
|
var start = Date.now();
|
||
|
|
expect(angular.fromJson(largeJsonString)).toBeTruthy();
|
||
|
|
var time = Date.now() - start;
|
||
|
|
// dump('parse time', time, 'consume', window.consumeTime,
|
||
|
|
// 'substr', window.substrTime,
|
||
|
|
// 'getMatch', window.getMatchTime);
|
||
|
|
totalTime += time;
|
||
|
|
totalSubstr += window.substrTime;
|
||
|
|
totalGetMatch += window.getMatchTime;
|
||
|
|
totalConsume += window.consumeTime;
|
||
|
|
runTimes.push(time);
|
||
|
|
}
|
||
|
|
|
||
|
|
totalGetMatch = totalGetMatch - totalSubstr;
|
||
|
|
|
||
|
|
dump("totals", totalTime,
|
||
|
|
"| consume", totalConsume, '' + Math.round(totalConsume/(totalTime/100)) + '%',
|
||
|
|
"| substr", totalSubstr, '' + Math.round(totalSubstr/(totalTime/100)) + '%',
|
||
|
|
"| getMatch", totalGetMatch, '' + Math.round(totalGetMatch/(totalTime/100)) + '%');
|
||
|
|
dump("run times", runTimes);
|
||
|
|
delete window.consumeTime;
|
||
|
|
delete window.substrTime;
|
||
|
|
delete window.getMatchTime;
|
||
|
|
});
|
||
|
|
|
||
|
|
|
||
|
|
it('angular parser', function() {
|
||
|
|
var duration = time(function() {
|
||
|
|
expect(angular.fromJson(largeJsonString)).toBeTruthy();
|
||
|
|
}, 1);
|
||
|
|
|
||
|
|
expect(duration).toBeLessThan(4000);
|
||
|
|
});
|
||
|
|
|
||
|
|
|
||
|
|
it('native json', function() {
|
||
|
|
var duration = time(function() {
|
||
|
|
expect(JSON.parse(largeJsonString)).toBeTruthy();
|
||
|
|
}, 1);
|
||
|
|
|
||
|
|
expect(duration).toBeLessThan(200);
|
||
|
|
});
|
||
|
|
});
|