Skip to content
This repository was archived by the owner on Sep 3, 2022. It is now read-only.

Commit 1374cf8

Browse files
author
Matthew Ault
committed
test: add add/apply middleware stress test
1 parent cce24aa commit 1374cf8

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

test/middleware.test.js

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -345,4 +345,49 @@ describe('SourceMiddlewareChain', function() {
345345
assert(payload instanceof Facade, 'Payload should still be a facade.');
346346
});
347347
});
348+
349+
it('should be able to add and apply middleware interchangably', function() {
350+
chain.add(function(chain) {
351+
chain.payload.obj.test.push(1);
352+
chain.next(chain.payload);
353+
});
354+
chain.applyMiddlewares({ test: [] }, 'Test', function(payload) {
355+
assert.deepEqual(payload.obj.test, [1]);
356+
});
357+
chain.add(function(chain) {
358+
chain.payload.obj.test.push(2);
359+
chain.next(chain.payload);
360+
});
361+
chain.applyMiddlewares({ test: [] }, 'Test', function(payload) {
362+
assert.deepEqual(payload.obj.test, [1, 2]);
363+
});
364+
chain.add(function(chain) {
365+
chain.payload.obj.test.push(3);
366+
chain.next(chain.payload);
367+
});
368+
chain.applyMiddlewares({ test: [] }, 'Test', function(payload) {
369+
assert.deepEqual(payload.obj.test, [1, 2, 3]);
370+
});
371+
chain.add(function(chain) {
372+
chain.payload.obj.test.push(4);
373+
chain.next(chain.payload);
374+
});
375+
chain.applyMiddlewares({ test: [] }, 'Test', function(payload) {
376+
assert.deepEqual(payload.obj.test, [1, 2, 3, 4]);
377+
});
378+
chain.add(function(chain) {
379+
chain.payload.obj.test.push(5);
380+
chain.next(chain.payload);
381+
});
382+
chain.applyMiddlewares({ test: [] }, 'Test', function(payload) {
383+
assert.deepEqual(payload.obj.test, [1, 2, 3, 4, 5]);
384+
});
385+
chain.add(function(chain) {
386+
chain.payload.obj.test.push(6);
387+
chain.next(chain.payload);
388+
});
389+
chain.applyMiddlewares({ test: [] }, 'Test', function(payload) {
390+
assert.deepEqual(payload.obj.test, [1, 2, 3, 4, 5, 6]);
391+
});
392+
});
348393
});

0 commit comments

Comments
 (0)