Parcourir la source

test: fix unit test failures

Vangie Du il y a 9 mois
Parent
commit
0d41a17ef6
4 fichiers modifiés avec 10 ajouts et 9 suppressions
  1. 2 0
      jest.config.ts
  2. 3 5
      jest.setup.ts
  3. 2 2
      package.json
  4. 3 2
      test/vision-model-checker.test.ts

+ 2 - 0
jest.config.ts

@@ -15,6 +15,8 @@ const config: Config = {
   moduleNameMapper: {
     "^@/(.*)$": "<rootDir>/$1",
   },
+  extensionsToTreatAsEsm: [".ts", ".tsx"],
+  injectGlobals: true,
 };
 
 // createJestConfig is exported this way to ensure that next/jest can load the Next.js config which is async

+ 3 - 5
jest.setup.ts

@@ -1,24 +1,22 @@
 // Learn more: https://github.com/testing-library/jest-dom
 import "@testing-library/jest-dom";
+import { jest } from "@jest/globals";
 
 global.fetch = jest.fn(() =>
   Promise.resolve({
     ok: true,
     status: 200,
-    json: () => Promise.resolve({}),
+    json: () => Promise.resolve([]),
     headers: new Headers(),
     redirected: false,
     statusText: "OK",
     type: "basic",
     url: "",
-    clone: function () {
-      return this;
-    },
     body: null,
     bodyUsed: false,
     arrayBuffer: () => Promise.resolve(new ArrayBuffer(0)),
     blob: () => Promise.resolve(new Blob()),
     formData: () => Promise.resolve(new FormData()),
     text: () => Promise.resolve(""),
-  }),
+  } as Response),
 );

+ 2 - 2
package.json

@@ -17,8 +17,8 @@
     "prompts": "node ./scripts/fetch-prompts.mjs",
     "prepare": "husky install",
     "proxy-dev": "sh ./scripts/init-proxy.sh && proxychains -f ./scripts/proxychains.conf yarn dev",
-    "test": "jest --watch",
-    "test:ci": "jest --ci"
+    "test": "node --no-warnings --experimental-vm-modules $(yarn bin jest) --watch",
+    "test:ci": "node --no-warnings --experimental-vm-modules $(yarn bin jest) --ci"
   },
   "dependencies": {
     "@fortaine/fetch-event-source": "^3.0.6",

+ 3 - 2
test/vision-model-checker.test.ts

@@ -1,3 +1,4 @@
+import { jest } from "@jest/globals";
 import { isVisionModel } from "../app/utils";
 
 describe("isVisionModel", () => {
@@ -50,7 +51,7 @@ describe("isVisionModel", () => {
 
   test("should identify models from VISION_MODELS env var", () => {
     process.env.VISION_MODELS = "custom-vision-model,another-vision-model";
-    
+
     expect(isVisionModel("custom-vision-model")).toBe(true);
     expect(isVisionModel("another-vision-model")).toBe(true);
     expect(isVisionModel("unrelated-model")).toBe(false);
@@ -64,4 +65,4 @@ describe("isVisionModel", () => {
     expect(isVisionModel("unrelated-model")).toBe(false);
     expect(isVisionModel("gpt-4-vision")).toBe(true);
   });
-});
+});