File size: 2,169 Bytes
5fae594 |
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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
(function(Platform) {
describe("oboe performance (real http)", function(){
var oboe = Platform.isNode
? require('../../dist/oboe-node.js')
: (window.oboe)
;
function url( path ){
if( Platform.isNode ) {
return 'localhost:4567/' + path;
} else {
return '/testServer/' + path;
}
}
it('is benchmarked with a complex jsonpath', function() {
var startTime = now();
var doneFn = jasmine.createSpy('done');
var callCount = 0;
oboe(url('static/json/oneHundredRecords.json'))
.node('!.$result..{age name company}', function(){callCount++})
.done( doneFn );
waitsFor( function(){ return doneFn.calls.length == 1 },
'the computation under test to be performed',
5000 )
runs( function(){
expect(callCount).toBe(100);
console.log('took ' + (now() - startTime) + 'ms to evaluate a complex ' +
'expression many times, finding 100 matches');
});
})
it('is benchmarked with a simple jsonpath', function() {
var startTime = now();
var doneFn = jasmine.createSpy('done');
var callCount = 0;
oboe(url('static/json/oneHundredRecords.json'))
.node('name', function(){callCount++})
.done( doneFn );
waitsFor( function(){ return doneFn.calls.length == 1 },
'the computation under test to be performed',
5000 )
runs( function(){
expect(callCount).toBe(100);
console.log('took ' + (now() - startTime) + 'ms to evaluate a simple ' +
'expression many times, finding 100 matches');
});
})
function now() {
return new Date().valueOf()
}
});
})(typeof Platform == 'undefined'? require('../libs/platform.js') : Platform)
|