0

我有两个文件

// A.js
class A {}
// B.js
class B extends A {}

两者都没有export,它们是全局类

我想jest用于测试rewire

我正在尝试这样做

// app.test.js
const rewire = require('rewire');
const A = rewire('../src/A.js').__get__('A');

const app = rewire('../src/B.js');
app.__set__('A', A);
const B = app.__get__('B');

describe('test', () => {
  test('B', () => {
    const b = new B();
    // ...
  });
});

但我收到一个错误

ReferenceError: A is not defined

测试具有嵌套依赖项的全局类和函数的正确方法是什么。

注意 我有一个很大的应用程序,不能export在全局函数、变量和类前面添加。

我不想更改目录.js中的文件src

4

0 回答 0