From 6f2503dccbff4a51db50d4f5b72058b764bf748d Mon Sep 17 00:00:00 2001 From: Konstantin Dyachenko Date: Mon, 29 May 2023 12:25:25 +0000 Subject: [PATCH] Jest tests now support ES Modules --- integration.test.ts | 6 +++++- jest.config.ts | 4 ---- package.json | 2 +- tests/handlers.ts | 2 -- tests/tree.ts | 2 -- unit.test.ts | 6 +++++- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/integration.test.ts b/integration.test.ts index 1e569a1d..d5c0683e 100644 --- a/integration.test.ts +++ b/integration.test.ts @@ -1,6 +1,10 @@ +import { createRequire } from 'module'; +import { jest } from '@jest/globals'; +const require = createRequire(import.meta.url); + require('dotenv').config(); -jest.setTimeout(1000000); +jest.setTimeout(120000); // Please move slowest tests to bottom to make progress bar more dynamic and get more tests done first. diff --git a/jest.config.ts b/jest.config.ts index 87dbd36a..cdc03b3c 100644 --- a/jest.config.ts +++ b/jest.config.ts @@ -1,8 +1,4 @@ export default { - preset: 'ts-jest', testEnvironment: 'node', - // testEnvironmentOptions: { - // url: "http://localhost/", - // }, verbose: true, }; diff --git a/package.json b/package.json index b36b83e9..e655cf7d 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "package:build": "tsc --project tsconfig.json", "package:unbuild": "rimraf ./*.js && rimraf ./*.js.map && rimraf ./*.d.ts && (cd ./migrations && rimraf ./*.js && rimraf ./*.js.map && rimraf ./*.d.ts && cd ../) && (cd ./imports && rimraf ./*.js && rimraf ./*.js.map && rimraf ./*.d.ts && cd ../) && (cd ./imports/gql && rimraf ./*.js && rimraf ./*.js.map && rimraf ./*.d.ts && cd ../..) && (cd ./benchmarks && rm -f ./*.js; rm -f ./*.js.map; rm -f ./*.d.ts && cd ..) && (cd ./imports/router && rimraf ./*.js && rimraf ./*.js.map && rimraf ./*.d.ts && cd ../..) && (cd ./tests && rimraf ./*.js && rimraf ./*.js.map && rimraf ./*.d.ts && cd ../)", "package:publish": "npm run package:build && npm publish --access public && npm run package:unbuild", - "test": "cross-env DEEPLINKS_HASURA_PATH=localhost:8080 DEEPLINKS_HASURA_SSL=0 DEEPLINKS_HASURA_SECRET=myadminsecretkey DOCKER_DEEPLINKS_URL=http://localhost:3006 jest --testTimeout=50000", + "test": "npm run package:build && cross-env DEEPLINKS_HASURA_PATH=localhost:8080 DEEPLINKS_HASURA_SSL=0 DEEPLINKS_HASURA_SECRET=myadminsecretkey DOCKER_DEEPLINKS_URL=http://localhost:3006 NODE_OPTIONS=--experimental-vm-modules jest --config jest.config.js *.js --testTimeout=50000", "benchmark": "export DEEPLINKS_HASURA_PATH=localhost:8080; export DEEPLINKS_HASURA_SSL=0; export DEEPLINKS_HASURA_SECRET=myadminsecretkey; ts-node benchmarks/index.ts", "migrate": "npm run package:build && cp migrations/*.js migrations-dist/ && npx migrate up --migrations-dir migrations-dist", "unmigrate": "npm run package:build && cp migrations/*.js migrations-dist/ && npx migrate down --migrations-dir migrations-dist", diff --git a/tests/handlers.ts b/tests/handlers.ts index c8eeb0f2..fe435f9d 100644 --- a/tests/handlers.ts +++ b/tests/handlers.ts @@ -21,8 +21,6 @@ Debug.enable(`${namespaces ? `${namespaces},` : ``}${error.namespace}`); import waitOn from 'wait-on'; import getPort from 'get-port'; -jest.setTimeout(120000); - export const api = new HasuraApi({ path: process.env.DEEPLINKS_HASURA_PATH, ssl: !!+process.env.DEEPLINKS_HASURA_SSL, diff --git a/tests/tree.ts b/tests/tree.ts index caee32c4..81fc4103 100644 --- a/tests/tree.ts +++ b/tests/tree.ts @@ -6,8 +6,6 @@ import { insertHandler, deleteHandler } from "../imports/handlers"; import { _ids } from '../imports/client.js'; import { delay } from "../imports/promise"; -jest.setTimeout(120000); - export const api = new HasuraApi({ path: process.env.DEEPLINKS_HASURA_PATH, ssl: !!+process.env.DEEPLINKS_HASURA_SSL, diff --git a/unit.test.ts b/unit.test.ts index 5412b9e8..eb083c4e 100644 --- a/unit.test.ts +++ b/unit.test.ts @@ -1,6 +1,10 @@ +import { createRequire } from 'module'; +import { jest } from '@jest/globals'; +const require = createRequire(import.meta.url); + require('dotenv').config(); -jest.setTimeout(1000000); +jest.setTimeout(120000); import './tests/minilinks'; import './tests/minilinks-query'; \ No newline at end of file