kogosoftwarellc / open-api

A Monorepo of various packages to power OpenAPI in node
MIT License
895 stars 237 forks source link

openapi-framework: Fix dynamic import to work with jest (fixes #909) #908

Open coryasilva opened 2 months ago

coryasilva commented 2 months ago

When using jest this code gets transpiled to require and the file URL syntax of the import is not supported and breaks the testing environment. This change only uses file URL import syntax on windows machines. This fixes our tests and is still supported on linux and mac operating systems.

I think windows is definitely in the minority here and we should not optimize for it. Furthermore, I believe using a UNC path would be a better solution outright but I cannot test because I don't have a window machine at hand.

Why not just use jest's --experimental-vm-modules flag? Glad you asked. Because of this jest bug which is caused by this node bug which is ultimately caused by this v8 bug

Note: This checklist isn't meant to show up on the actual Pull Request (PR). It is added here to make you aware of items our maintainers will look for when reviewing your PR. If your PR is missing any of these items it will be rejected! Please delete this message and the following checklist and replace it with your own message as you see fit.

amp5208 commented 1 month ago

confirmed, this is an issue currently that arises when trying to integrate express-openapi into backstage