How to setup Miniflare + Typescript + Vitest (Dura...
# workers-help
r
I've been trying to setup my project for tests, but I keep getting this error whenever I run my tests: > Class "Test" for Durable Object "TEST" not found Does anyone have an example project that I can refer to? Many thanks. Packages:
Copy code
"typescript": "^5.0.4" 
"esbuild": "^0.17.19"
"miniflare": "^3.0.1"
"vitest": "^0.31.1"
"vitest-environment-miniflare": "^2.14.0"
"wrangler": "^2.20.0"
Scripts:
Copy code
"test": "npm run build && NODE_OPTIONS=--experimental-vm-modules vitest"
"build": "esbuild --bundle --sourcemap --outdir=dist ./src/index.js"
In package.json:
"main": "./dist/index.js"
vitest.config.ts:
Copy code
import { defineConfig } from "vitest/config";
export default defineConfig({
  test: {
    environment: "miniflare",
    environmentOptions: {
      modules: true,
      scriptPath: "./dist/index.js",
      durableObjects: {
        TEST: "Test",
      },
      bindings: { TEST: "Test" },
    },
  },
});
Error:
Copy code
Error: Class "Test" for Durable Object "TEST" not found
❯ DurableObjectsPlugin.reload node_modules/@miniflare/shared-test-environment/node_modules/@miniflare/durable-objects/src/plugin.ts:352:15
 ❯ MiniflareCore.#runAllReloads node_modules/@miniflare/shared-test-environment/node_modules/@miniflare/core/src/index.ts:705:24
 ❯ MiniflareCore.#reload node_modules/@miniflare/shared-test-environment/node_modules/@miniflare/core/src/index.ts:861:13
 ❯ MiniflareCore.getGlobalScope node_modules/@miniflare/shared-test-environment/node_modules/@miniflare/core/src/index.ts:1041:5
 ❯ Proxy.createMiniflareEnvironment node_modules/@miniflare/shared-test-environment/src/index.ts:79:25
 ❯ Object.setup node_modules/vitest-environment-miniflare/src/index.ts:79:33
 ❯ withEnv node_modules/vitest/dist/entry.js:182:15
 ❯ run node_modules/vitest/dist/entry.js:268:3
 ❯ run node_modules/vitest/dist/worker.js:69:5
 ❯ node_modules/tinypool/dist/esm/worker.js:109:20