From 7d1bd2eee652726c50b7a0cc49664914bf166748 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Sun, 10 Jan 2021 20:43:50 +0100 Subject: [PATCH] [test] Circle CI has low-performance CPUs --- .mocharc.js | 1 + .../test/integration/MenuList.test.js | 36 ++++++++++++------- 2 files changed, 24 insertions(+), 13 deletions(-) diff --git a/.mocharc.js b/.mocharc.js index 0b915b828c2fc9..2ba1ac4a6aa62b 100644 --- a/.mocharc.js +++ b/.mocharc.js @@ -8,6 +8,7 @@ module.exports = { 'docs/.next/**', ], recursive: true, + timeout: process.env.CIRCLECI === 'true' ? 3000 : 1000, // Circle CI has low-performance CPUs. reporter: 'dot', require: [require.resolve('./test/utils/setupBabel'), require.resolve('./test/utils/setupJSDOM')], 'watch-ignore': [ diff --git a/packages/material-ui/test/integration/MenuList.test.js b/packages/material-ui/test/integration/MenuList.test.js index 3efc5b79b35370..83e0df394281eb 100644 --- a/packages/material-ui/test/integration/MenuList.test.js +++ b/packages/material-ui/test/integration/MenuList.test.js @@ -1,6 +1,6 @@ import * as React from 'react'; import { expect } from 'chai'; -import { spy } from 'sinon'; +import { spy, useFakeTimers } from 'sinon'; import MenuList from '@material-ui/core/MenuList'; import MenuItem from '@material-ui/core/MenuItem'; import Divider from '@material-ui/core/Divider'; @@ -541,21 +541,31 @@ describe(' integration', () => { expect(screen.getByText('Worm')).toHaveFocus(); }); - it('should reset the character buffer after 500ms', (done) => { - render( - - Worm - Ordinary - , - ); + describe('time', () => { + let clock; + beforeEach(() => { + clock = useFakeTimers(); + }); - fireEvent.keyDown(screen.getByRole('menu'), { key: 'W' }); - setTimeout(() => { - fireEvent.keyDown(screen.getByText('Worm'), { key: 'o' }); + afterEach(() => { + act(() => { + clock.restore(); + }); + }); + it('should reset the character buffer after 500ms', () => { + render( + + Worm + Ordinary + , + ); + + fireEvent.keyDown(screen.getByRole('menu'), { key: 'W' }); + clock.tick(501); + fireEvent.keyDown(screen.getByText('Worm'), { key: 'o' }); expect(screen.getByText('Ordinary')).toHaveFocus(); - done(); - }, 500); + }); }); it('should match ignoring hidden text', function testHiddenText() {