Как протестировать пользовательский глобальный в шутку

#typescript #jestjs #ts-jest

Вопрос:

Я объявляю новую глобальную переменную в global.d.ts :

 declare const foo: {
  env: Record<string, string>
}
 

Затем я определяю его с помощью webpack.Определи затычку:

 new webpack.DefinePlugin({
      "foo.env": {
        NAME: JSON.stringify("loc"),
        VERSION: JSON.stringify(project.version)
      }
    }),
 

Наконец, у меня есть функция, которая может извлекать эти переменные env, чтобы я мог поместить их в объект конфигурации:

 export function getEnvVar(name: string): string | never {
  const value: unknown = foo.env[name]

  if (value) {
    return String(value)
  } else {
    throw `Could not find env var ${name}`
  }
}
 

Нет, я хочу протестировать getEnvVar с помощью jest, но всякий раз, когда я пытаюсь определить foo объект в своем тесте, он не может его найти.

Любая помощь будет очень признательна