Thin MongoDB ODM built for Standard Schema
mongodb zod deno
at main 1.2 kB view raw
1import { assert, assertExists } from "@std/assert"; 2import { ObjectId } from "mongodb"; 3import { 4 cleanupCollection, 5 createUserModel, 6 setupTestDb, 7 teardownTestDb, 8 type UserInsert, 9 type userSchema, 10} from "./utils.ts"; 11import type { Model } from "../mod.ts"; 12 13let UserModel: Model<typeof userSchema>; 14 15Deno.test.beforeAll(async () => { 16 await setupTestDb(); 17 UserModel = createUserModel("users_features"); 18}); 19 20Deno.test.beforeEach(async () => { 21 await cleanupCollection(UserModel); 22}); 23 24Deno.test.afterAll(async () => { 25 await teardownTestDb(); 26}); 27 28Deno.test({ 29 name: "Features: Default Values - should handle default createdAt", 30 async fn() { 31 const newUser: UserInsert = { 32 name: "Default Test User", 33 email: "default@example.com", 34 // No createdAt provided - should use default 35 }; 36 37 const insertResult = await UserModel.insertOne(newUser); 38 assertExists(insertResult.insertedId); 39 40 const foundUser = await UserModel.findOne({ 41 _id: new ObjectId(insertResult.insertedId), 42 }); 43 44 assertExists(foundUser); 45 assertExists(foundUser.createdAt); 46 assert(foundUser.createdAt instanceof Date); 47 }, 48 sanitizeResources: false, 49 sanitizeOps: false, 50});