Thin MongoDB ODM built for Standard Schema
mongodb zod deno
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(); 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 32 const newUser: UserInsert = { 33 name: "Default Test User", 34 email: "default@example.com", 35 // No createdAt provided - should use default 36 }; 37 38 const insertResult = await UserModel.insertOne(newUser); 39 assertExists(insertResult.insertedId); 40 41 const foundUser = await UserModel.findOne({ 42 _id: new ObjectId(insertResult.insertedId), 43 }); 44 45 assertExists(foundUser); 46 assertExists(foundUser.createdAt); 47 assert(foundUser.createdAt instanceof Date); 48 }, 49 sanitizeResources: false, 50 sanitizeOps: false, 51}); 52 53