mirror of
https://github.com/meteor/meteor.git
synced 2026-05-02 03:01:46 -04:00
fix data population
This commit is contained in:
@@ -334,38 +334,41 @@ if (Meteor.isServer) {
|
||||
One = new Mongo.Collection('collectionOne');
|
||||
Two = new Mongo.Collection('collectionTwo');
|
||||
|
||||
Meteor.startup(async () => {
|
||||
if (Meteor.isServer) {
|
||||
await One.removeAsync({});
|
||||
await One.insertAsync({ name: 'value1' });
|
||||
await One.insertAsync({ name: 'value2' });
|
||||
async function populateDatabase() {
|
||||
await One.removeAsync({});
|
||||
await One.insertAsync({ name: 'value1' });
|
||||
await One.insertAsync({ name: 'value2' });
|
||||
|
||||
await Two.removeAsync({});
|
||||
await Two.insertAsync({ name: 'value3' });
|
||||
await Two.insertAsync({ name: 'value4' });
|
||||
await Two.insertAsync({ name: 'value5' });
|
||||
await Two.removeAsync({});
|
||||
await Two.insertAsync({ name: 'value3' });
|
||||
await Two.insertAsync({ name: 'value4' });
|
||||
await Two.insertAsync({ name: 'value5' });
|
||||
}
|
||||
|
||||
Meteor.publish('multiPublish', function(options) {
|
||||
// See below to see what options are accepted.
|
||||
check(options, Object);
|
||||
if (options.normal) {
|
||||
return [One.find(), Two.find()];
|
||||
} else if (options.dup) {
|
||||
// Suppress the log of the expected internal error.
|
||||
Meteor._suppress_log(1);
|
||||
return [
|
||||
One.find(),
|
||||
One.find({ name: 'value2' }), // multiple cursors for one collection - error
|
||||
Two.find(),
|
||||
];
|
||||
} else if (options.notCursor) {
|
||||
// Suppress the log of the expected internal error.
|
||||
Meteor._suppress_log(1);
|
||||
return [One.find(), 'not a cursor', Two.find()];
|
||||
} else throw 'unexpected options';
|
||||
});
|
||||
}
|
||||
});
|
||||
if (Meteor.isServer) {
|
||||
Meteor.publish('multiPublish', async function (options) {
|
||||
// See below to see what options are accepted.
|
||||
check(options, Object);
|
||||
|
||||
await populateDatabase();
|
||||
|
||||
if (options.normal) {
|
||||
return [One.find(), Two.find()];
|
||||
} else if (options.dup) {
|
||||
// Suppress the log of the expected internal error.
|
||||
Meteor._suppress_log(1);
|
||||
return [
|
||||
One.find(),
|
||||
One.find({ name: 'value2' }), // multiple cursors for one collection - error
|
||||
Two.find(),
|
||||
];
|
||||
} else if (options.notCursor) {
|
||||
// Suppress the log of the expected internal error.
|
||||
Meteor._suppress_log(1);
|
||||
return [One.find(), 'not a cursor', Two.find()];
|
||||
} else throw 'unexpected options';
|
||||
});
|
||||
}
|
||||
|
||||
/// Helper for "livedata - result by value"
|
||||
const resultByValueArrays = Object.create(null);
|
||||
|
||||
@@ -43,7 +43,7 @@ Meteor.methods({
|
||||
const collections = await MongoInternals.defaultRemoteCollectionDriver().mongo.db.collections();
|
||||
|
||||
for (const collection of collections) {
|
||||
await collection.drop();
|
||||
await collection.deleteMany({});
|
||||
}
|
||||
|
||||
this.unblock();
|
||||
|
||||
Reference in New Issue
Block a user