Я пытаюсь сделать снимок теста реакция- bootstrap -типа с ферментом .
Это очень простой тест, который выглядит следующим образом:
test('asynctypeahead with enzyme', () => {
const comp =
<AsyncTypeahead
id={'abc'}
options={[]}
allowNew={true}
isLoading={true}
maxResults={5}
minLength={0}
autoFocus={false}
/>
const subject = mount(comp);
expect(EnzymeToJson(subject)).toMatchSnapshot();
})
Однако, если я запускаю это (используя узел 12.16), я получаю какую-то ошибку памяти, которая выглядит следующим образом:
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
<--- Last few GCs --->
[68316:000001BCA6149F20] 76893 ms: Mark-sweep 2045.5 (2050.6) -> 2045.0 (2050.9) MB, 2187.1 / 0.0 ms (average mu = 0.060, current mu = 0.003) allocation failure scavenge might not succeed
[68316:000001BCA6149F20] 79062 ms: Mark-sweep 2045.7 (2050.9) -> 2045.2 (2051.1) MB, 2163.1 / 0.0 ms (average mu = 0.032, current mu = 0.003) allocation failure scavenge might not succeed
Я не совсем уверен, что делать. Если вместо использования энзима я использую обычный тестовый рендер, он работает. как это:
const tree = renderer.create(comp).toJSON();
expect(tree).toMatchSnapshot();
Однако я не могу использовать response-test-render, потому что мой компонент (который также имеет AsyncTypeAhead) также использует реагирующий модал, который работает только с Enzyme (не тестовым рендерером).