sub.ready() should be true inside its onReady

Fixes #4614.
This commit is contained in:
David Glasser
2015-06-30 13:57:48 -07:00
parent 350bf75112
commit 447d236a9b
3 changed files with 11 additions and 2 deletions

View File

@@ -9,10 +9,18 @@
* Parse `application/javascript` and `application/x-javascript` HTTP replies as
JSON too. #4595
### Meteor Accounts
* `loginWithPassword` now matches username or email in a case insensitive manner. If there are multiple users with a username or email only differing in case, a case sensitive match is required. #550
### DDP
* `sub.ready()` should return true inside that subscription's `onReady`
callback. #4614
## in progress: v.1.1.1
### Blaze

View File

@@ -1382,8 +1382,8 @@ _.extend(Connection.prototype, {
// Did we already receive a ready message? (Oops!)
if (subRecord.ready)
return;
subRecord.readyCallback && subRecord.readyCallback();
subRecord.ready = true;
subRecord.readyCallback && subRecord.readyCallback();
subRecord.readyDeps.changed();
});
});

View File

@@ -715,8 +715,9 @@ if (Meteor.isClient) {
testAsyncMulti("livedata - publish multiple cursors", [
function (test, expect) {
Meteor.subscribe("multiPublish", {normal: 1}, {
var sub = Meteor.subscribe("multiPublish", {normal: 1}, {
onReady: expect(function () {
test.isTrue(sub.ready());
test.equal(One.find().count(), 2);
test.equal(Two.find().count(), 3);
}),