Я пытаюсь протестировать класс, который по умолчанию импортирован из файла. Когда я пытаюсь проверить, не сбрасывает ли конструктор класса.
Класс в файле a.ts
class A{
private Property1: string | null = null;
public Initialize = (property1: string) => {
this.Property1= property1;
}
public GetProperty1 = () => this.Property1;
}
export default new A();
И я тестирую его вот так
let A:any;
jest.isolateModules(async () => {
A = (await import("../source/a")).default;
});
describe('Testing', () => {
describe('Initialize', () => {
beforeAll(() => {
A.Initialize('Test1');
});
afterAll(() => {
jest.clearAllMocks();
jest.resetAllMocks();
jest.resetModuleRegistry();
jest.resetModules();
});
it('Should set Property1', () => {
expect(A.GetProperty1()).toEqual('Test1');
});
});
describe('Initialize2', () => {
beforeAll(() => {
//A.Initialize('Test1');
});
afterAll(() => {
jest.clearAllMocks();
jest.resetAllMocks();
jest.resetModuleRegistry();
jest.resetModules();
});
it('Should not set Property1', () => {
expect(A.GetProperty1()).not.toEqual('Test1');
});
});
Я прокомментировал метод A.Initialize , но все равно он показывает значение как Test1 . Я хочу установить этот класс несколько раз для инициализации значения. Есть ли способ очистить предыдущий импорт и повторно импортировать его снова.