From 5383f19f6d442182b9fbf6ffbe5b0fdf8358dfb8 Mon Sep 17 00:00:00 2001 From: Thomas Watson Date: Tue, 8 Jun 2021 13:06:55 +0200 Subject: [PATCH] [test] fix tests related to timings --- .../public/visualize/components/visualization_chart.test.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/ui/public/visualize/components/visualization_chart.test.js b/src/ui/public/visualize/components/visualization_chart.test.js index 280370cdfe9956e..37933dc5d1d5feb 100644 --- a/src/ui/public/visualize/components/visualization_chart.test.js +++ b/src/ui/public/visualize/components/visualization_chart.test.js @@ -19,12 +19,15 @@ jest.useFakeTimers(); +import { promisify } from 'util'; import React from 'react'; import { render, mount } from 'enzyme'; import { VisualizationChart } from './visualization_chart'; let renderPromise; +const nextTick = promisify(process.nextTick); + class VisualizationStub { constructor(el, vis) { this.el = el; @@ -70,6 +73,7 @@ describe('', () => { jest.runAllTimers(); await renderPromise; + await nextTick(); expect(renderStart).toHaveBeenCalledTimes(1); expect(renderComplete).toHaveBeenCalledTimes(1); @@ -89,12 +93,14 @@ describe('', () => { domNode.addEventListener('renderComplete', renderComplete); jest.runAllTimers(); await renderPromise; + await nextTick(); expect(renderComplete).toHaveBeenCalledTimes(1); vis.params.markdown = 'new text'; wrapper.setProps({ vis }); jest.runAllTimers(); await renderPromise; + await nextTick(); expect(wrapper.find('.visChart').text()).toBe('new text'); expect(renderComplete).toHaveBeenCalledTimes(2);