summary refs log tree commit diff
path: root/api/src/test/mongo_test.ts
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-12 20:22:16 +0200
committerFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-12 20:22:16 +0200
commitbdc0cc723c7d5974a4c4e3e8b0793917684ec85d (patch)
tree7123410553a6698d90ddaae69b05cde8402ded36 /api/src/test/mongo_test.ts
parent1.3.52 (diff)
parent:sparkles: gateway (diff)
downloadserver-bdc0cc723c7d5974a4c4e3e8b0793917684ec85d.tar.xz
Merge branch 'master' into util
Diffstat (limited to 'api/src/test/mongo_test.ts')
-rw-r--r--api/src/test/mongo_test.ts40
1 files changed, 40 insertions, 0 deletions
diff --git a/api/src/test/mongo_test.ts b/api/src/test/mongo_test.ts
new file mode 100644

index 00000000..44b04c5b --- /dev/null +++ b/api/src/test/mongo_test.ts
@@ -0,0 +1,40 @@ +import mongoose, { Schema, Types } from "mongoose"; +require("mongoose-long")(mongoose); + +const userSchema = new Schema({ + id: String, +}); + +const messageSchema = new Schema({ + id: String, + content: String, +}); +const message = mongoose.model("message", messageSchema, "messages"); +const user = mongoose.model("user", userSchema, "users"); + +messageSchema.virtual("u", { + ref: user, + localField: "id", + foreignField: "id", + justOne: true, +}); + +messageSchema.set("toObject", { virtuals: true }); +messageSchema.set("toJSON", { virtuals: true }); + +async function main() { + const conn = await mongoose.connect("mongodb://localhost:27017/lambert?readPreference=secondaryPreferred", { + useNewUrlParser: true, + useUnifiedTopology: false, + }); + console.log("connected"); + + // const u = await new user({ name: "test" }).save(); + // await new message({ user: u._id, content: "test" }).save(); + + const test = await message.findOne({}).populate("u").exec(); + // @ts-ignore + console.log(test?.toJSON()); +} + +main();