ohif-viewer/Packages/router-middleware-stack/tests/tinytests/handler_test.js

55 lines
1.6 KiB
JavaScript

Tinytest.add('MiddlewareStack - handler basics', function (test) {
var handler;
var fn = function myName () {};
var opts = {};
// constructor options
// middleware handler
handler = new Handler(fn);
test.equal(handler.handle, fn);
test.equal(handler.name, 'myName', 'name is "myName"');
test.equal(handler.where, 'client');
test.isTrue(handler.test('/'));
test.isTrue(handler.test('/match/everything'));
opts.name = 'newName';
handler = new Handler('/items/:id', fn, opts);
test.equal(handler.handle, fn);
test.equal(handler.name, 'newName', 'name is "newName"');
test.equal(handler.options, opts);
test.isTrue(handler.test('/items/1'));
test.isTrue(handler.test('/items/2'));
handler = new Handler('/items/:id?', fn, opts);
test.isTrue(handler.test('/items/1'));
test.isTrue(handler.test('/items'));
handler = new Handler(/.*/, fn, opts);
test.isTrue(handler.test('/'));
test.isTrue(handler.test('/foo'));
var called = false;
var thisArg = {
methodName: function () {called = true;}
};
handler = new Handler('/items/:id', 'methodName');
handler.handle.call(thisArg);
test.isTrue(called);
handler = new Handler('/items/:id', fn);
var params = handler.params('/items/5');
test.equal(params.id, "5");
});
Tinytest.add('Handler - test', function (test) {
var handler = new Handler('/testme', function () {}, {
where: 'server',
method: 'GET'
});
test.isTrue(handler.test('/testme', {where: 'server', method: 'GET'}));
test.isFalse(handler.test('/testme', {where: 'client', method: 'GET'}));
test.isFalse(handler.test('/testme', {where: 'server', method: 'POST'}));
});