mirror of
https://github.com/wekan/wekan.git
synced 2025-09-22 01:50:48 +02:00
225 lines
No EOL
6.5 KiB
JavaScript
225 lines
No EOL
6.5 KiB
JavaScript
Tinytest.addAsync('Client - Router - subsReady - with no args - all subscriptions ready', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('bar', Meteor.subscribe('bar'));
|
|
this.register('foo', Meteor.subscribe('foo'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('baz', Meteor.subscribe('baz'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
|
|
Tracker.autorun(function(c) {
|
|
if(FlowRouter.subsReady()) {
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
c.stop();
|
|
}
|
|
});
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with no args - all subscriptions does not ready', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('fooNotReady', Meteor.subscribe('fooNotReady'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('bazNotReady', Meteor.subscribe('bazNotReady'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isTrue(!FlowRouter.subsReady());
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
}, 100);
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with no args - global subscriptions does not ready', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('bar', Meteor.subscribe('bar'));
|
|
this.register('foo', Meteor.subscribe('foo'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('bazNotReady', Meteor.subscribe('bazNotReady'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isTrue(!FlowRouter.subsReady());
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
}, 100);
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with no args - current subscriptions does not ready', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('bar', Meteor.subscribe('bar'));
|
|
this.register('fooNotReady', Meteor.subscribe('fooNotReady'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('baz', Meteor.subscribe('baz'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isTrue(!FlowRouter.subsReady());
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
}, 100);
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with args - all subscriptions ready', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('bar', Meteor.subscribe('bar'));
|
|
this.register('foo', Meteor.subscribe('foo'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('baz', Meteor.subscribe('baz'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
Tracker.autorun(function(c) {
|
|
if(FlowRouter.subsReady('foo', 'baz')) {
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
c.stop();
|
|
}
|
|
});
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with args - all subscriptions does not ready', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('fooNotReady', Meteor.subscribe('fooNotReady'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('bazNotReady', Meteor.subscribe('bazNotReady'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isTrue(!FlowRouter.subsReady('fooNotReady', 'bazNotReady'));
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
}, 100);
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with args - global subscriptions does not ready', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('bar', Meteor.subscribe('bar'));
|
|
this.register('foo', Meteor.subscribe('foo'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('bazNotReady', Meteor.subscribe('bazNotReady'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isTrue(!FlowRouter.subsReady('foo', 'bazNotReady'));
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
}, 100);
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with args - current subscriptions does not ready', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('bar', Meteor.subscribe('bar'));
|
|
this.register('fooNotReady', Meteor.subscribe('fooNotReady'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('baz', Meteor.subscribe('baz'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isTrue(!FlowRouter.subsReady('fooNotReady', 'baz'));
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
}, 100);
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with args - subscribe with wrong name', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
this.register('bar', Meteor.subscribe('bar'));
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = function () {
|
|
this.register('baz', Meteor.subscribe('baz'));
|
|
};
|
|
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isTrue(!FlowRouter.subsReady('baz', 'xxx', 'baz'));
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
next();
|
|
}, 100);
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - with args - same route two different subs', function (test, next) {
|
|
var rand = Random.id();
|
|
var count = 0;
|
|
FlowRouter.route('/' + rand, {
|
|
subscriptions: function(params) {
|
|
if(++count == 1) {
|
|
this.register('not-exisitng', Meteor.subscribe('not-exisitng'));
|
|
}
|
|
}
|
|
});
|
|
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isFalse(FlowRouter.subsReady());
|
|
FlowRouter.go('/' + rand, {}, {param: "111"});
|
|
setTimeout(function() {
|
|
test.isTrue(FlowRouter.subsReady());
|
|
next();
|
|
}, 100)
|
|
}, 100);
|
|
});
|
|
|
|
Tinytest.addAsync('Client - Router - subsReady - no subscriptions - simple', function (test, next) {
|
|
var rand = Random.id();
|
|
FlowRouter.route('/' + rand, {});
|
|
FlowRouter.subscriptions = Function.prototype;
|
|
|
|
FlowRouter.go('/' + rand);
|
|
setTimeout(function() {
|
|
test.isTrue(FlowRouter.subsReady());
|
|
next();
|
|
}, 100);
|
|
}); |