developit / developit/jsdom-worker

Cannot import jsdom-worker with --experimental-vm-modules

Ouverte
#22 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
JavaScript
Étoiles
291
Forks
20
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

In order to be allowed to use `import.meta.url` in my jest tests, I turned on the option `--experimental-vm-modules`. But thereby I cannot import jsdom-worker anymore.

I have the following stack trace:
```
FAIL src/anonymized-path/anonymized.test.tsx
● Test suite failed to run

Must use import to load ES Module: C:\anonymized-path\anonymized\node_modules\node-fetch\src\index.js

4 | import { enableFetchMocks } from 'jest-fetch-mock';
5 | import { readFileSync, readdirSync } from 'fs';
> 6 | import 'jsdom-worker';
| ^
7 | import { getPathFromPublic } from 'utils/helpers';
8 |
9 | /* Wasm jest problems - the function locate file returns C:\ instead of localhost when testing with jest

at Runtime.requireModule (node_modules/jest-runtime/build/index.js:972:21)
at Object. (node_modules/jsdom-worker/dist/jsdom-worker.js:1:89)
at Object. (src/setupTests.ts:6:1)
```

Would you have insight how to solve this issue?

```
$ node -v
v17.9.1
$ npm -v
8.11.0
```

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par l’import dans src/setupTests.ts et le point d’entrée défaillant indiqué dans node_modules/jsdom-worker/dist/jsdom-worker.js, puis reproduisez l’échec avec Node v17.9.1 et --experimental-vm-modules. C’est terminé lorsque jsdom-worker peut être importé avec cette configuration sans le node-fetch ES module error et que la suite de tests démarre correctement.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
javascript, node.js
Domaine
testing
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.