无法让 jest 在组件测试中加载模块 (pdf.js)

bee*_*ees 6 node.js pdf.js jestjs

我正在使用 jest 构建测试,该测试利用了 pdf.js 节点库,但由于 jest 未正确获取库而不断出现以下错误

TypeError: Cannot set property 'workerSrc' of undefined
Run Code Online (Sandbox Code Playgroud)

这是pdfParser.js

import * as pdfJs from 'pdfjs-dist/legacy/build/pdf'

import pdfjsWorker from 'pdfjs-dist/build/pdf.worker.entry'

pdfJs.GlobalWorkerOptions.workerSrc = pdfjsWorker

export const readPdf = async theFile => {
 ... (*it doesn't even get this far)
}
Run Code Online (Sandbox Code Playgroud)

这是我的测试(pdfParser.test.js):

import { readPdf } from '../../../../src/utils/pdfParser.js'

describe('PDF Parser', () => {
  it('returns error when no file submitted', () => {
    expect(1).toEqual(1)
  })
})

Run Code Online (Sandbox Code Playgroud)

我尝试过设置以下内容package.json

  "jest": {
    "moduleNameMapper": {
      "pdfjs-dist": "<rootDir>/node_modules/pdfjs-dist/legacy/build/pdf.js"
    },
    "moduleDirectories": [
      ".",
      "src",
      "src/util",
      "node_modules"      
    ]
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?