Skip to content

Commit a2a9e1a

Browse files
committed
Added some simple stress tests
1 parent 4c4521a commit a2a9e1a

File tree

1 file changed

+132
-0
lines changed

1 file changed

+132
-0
lines changed

test/integration/datastore/async_methods/findAll.test.js

Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,20 @@ describe('DS.findAll(resourceName, params[, options]): ', function () {
33
return 'DS.findAll(' + resourceName + ', params[, options]): ';
44
}
55

6+
function createComments(iterations) {
7+
var comments = [];
8+
for (var i = 1; i < iterations; i++) {
9+
var comment = {
10+
id: i
11+
};
12+
for (var j = 1; j < 40; j++) {
13+
comment['thing_' + j] = 'test_content_' + j;
14+
}
15+
comments.push(comment);
16+
}
17+
return comments;
18+
}
19+
620
beforeEach(startInjector);
721

822
it('should throw an error when method pre-conditions are not met', function () {
@@ -303,6 +317,124 @@ describe('DS.findAll(resourceName, params[, options]): ', function () {
303317
fail('Should not have failed!');
304318
});
305319

320+
$httpBackend.flush();
321+
});
322+
it('stress test repeated injection', function () {
323+
$httpBackend.expectGET('http://test.angular-cache.com/comment').respond(200, createComments(100));
324+
325+
var start = new Date().getTime();
326+
327+
DS.findAll('comment', {}, {
328+
bypassCache: true
329+
}).then(function () {
330+
console.log('100 - time taken: ' + (new Date().getTime() - start) + 'ms');
331+
}, function () {
332+
fail('Should not have failed!');
333+
});
334+
335+
$httpBackend.flush();
336+
337+
$httpBackend.expectGET('http://test.angular-cache.com/comment').respond(200, createComments(100));
338+
339+
start = new Date().getTime();
340+
341+
DS.findAll('comment', {}, {
342+
bypassCache: true
343+
}).then(function () {
344+
console.log('100 - time taken: ' + (new Date().getTime() - start) + 'ms');
345+
}, function () {
346+
fail('Should not have failed!');
347+
});
348+
349+
$httpBackend.flush();
350+
351+
$httpBackend.expectGET('http://test.angular-cache.com/comment').respond(200, createComments(100));
352+
353+
start = new Date().getTime();
354+
355+
DS.findAll('comment', {}, {
356+
bypassCache: true
357+
}).then(function () {
358+
console.log('100 - time taken: ' + (new Date().getTime() - start) + 'ms');
359+
}, function () {
360+
fail('Should not have failed!');
361+
});
362+
363+
$httpBackend.flush();
364+
});
365+
it('stress test 1000', function () {
366+
$httpBackend.expectGET('http://test.angular-cache.com/comment').respond(200, createComments(1000));
367+
368+
var start = new Date().getTime();
369+
370+
DS.findAll('comment', {}, {
371+
bypassCache: true
372+
}).then(function () {
373+
console.log('1000 - time taken: ' + (new Date().getTime() - start) + 'ms');
374+
}, function () {
375+
fail('Should not have failed!');
376+
});
377+
378+
$httpBackend.flush();
379+
});
380+
it('stress test 2000', function () {
381+
$httpBackend.expectGET('http://test.angular-cache.com/comment').respond(200, createComments(2000));
382+
383+
var start = new Date().getTime();
384+
385+
DS.findAll('comment', {}, {
386+
bypassCache: true
387+
}).then(function () {
388+
console.log('2000 - time taken: ' + (new Date().getTime() - start) + 'ms');
389+
}, function () {
390+
fail('Should not have failed!');
391+
});
392+
393+
$httpBackend.flush();
394+
});
395+
it('stress test 3000', function () {
396+
this.timeout(10000);
397+
$httpBackend.expectGET('http://test.angular-cache.com/comment').respond(200, createComments(3000));
398+
var start = new Date().getTime();
399+
400+
DS.findAll('comment', {}, {
401+
bypassCache: true
402+
}).then(function () {
403+
console.log('3000 - time taken: ' + (new Date().getTime() - start) + 'ms');
404+
}, function () {
405+
fail('Should not have failed!');
406+
});
407+
408+
$httpBackend.flush();
409+
});
410+
it('stress test 4000', function () {
411+
this.timeout(10000);
412+
$httpBackend.expectGET('http://test.angular-cache.com/comment').respond(200, createComments(4000));
413+
var start = new Date().getTime();
414+
415+
DS.findAll('comment', {}, {
416+
bypassCache: true
417+
}).then(function () {
418+
console.log('4000 - time taken: ' + (new Date().getTime() - start) + 'ms');
419+
}, function () {
420+
fail('Should not have failed!');
421+
});
422+
423+
$httpBackend.flush();
424+
});
425+
it('stress test 5000', function () {
426+
this.timeout(15000);
427+
$httpBackend.expectGET('http://test.angular-cache.com/comment').respond(200, createComments(5000));
428+
var start = new Date().getTime();
429+
430+
DS.findAll('comment', {}, {
431+
bypassCache: true
432+
}).then(function () {
433+
console.log('5000 - time taken: ' + (new Date().getTime() - start) + 'ms');
434+
}, function () {
435+
fail('Should not have failed!');
436+
});
437+
306438
$httpBackend.flush();
307439
});
308440
});

0 commit comments

Comments
 (0)