diff --git a/.changeset/funny-readers-breathe.md b/.changeset/funny-readers-breathe.md
new file mode 100644
index 0000000000..8897b24cf6
--- /dev/null
+++ b/.changeset/funny-readers-breathe.md
@@ -0,0 +1,5 @@
+---
+'@backstage/core': patch
+---
+
+fix the warning of all the core components test cases
diff --git a/packages/core/src/components/CodeSnippet/CodeSnippet.test.tsx b/packages/core/src/components/CodeSnippet/CodeSnippet.test.tsx
index 466abe6012..7d5d4de087 100644
--- a/packages/core/src/components/CodeSnippet/CodeSnippet.test.tsx
+++ b/packages/core/src/components/CodeSnippet/CodeSnippet.test.tsx
@@ -15,8 +15,9 @@
*/
import React from 'react';
-import { render, fireEvent } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { fireEvent } from '@testing-library/react';
+import { act } from 'react-dom/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { CodeSnippet } from './CodeSnippet';
@@ -32,24 +33,24 @@ const minProps = {
};
describe('', () => {
- it('renders text without exploding', () => {
- const { getByText } = render(wrapInTestApp());
+ it('renders text without exploding', async () => {
+ const { getByText } = await renderInTestApp();
expect(getByText(/"Hello"/)).toBeInTheDocument();
expect(getByText(/"World"/)).toBeInTheDocument();
});
- it('renders without line numbers', () => {
- const { queryByText } = render(
- wrapInTestApp(),
+ it('renders without line numbers', async () => {
+ const { queryByText } = await renderInTestApp(
+ ,
);
expect(queryByText('1')).not.toBeInTheDocument();
expect(queryByText('2')).not.toBeInTheDocument();
expect(queryByText('3')).not.toBeInTheDocument();
});
- it('renders with line numbers', () => {
- const { getByText } = render(
- wrapInTestApp(),
+ it('renders with line numbers', async () => {
+ const { getByText } = await renderInTestApp(
+ ,
);
expect(getByText('1')).toBeInTheDocument();
expect(getByText('2')).toBeInTheDocument();
@@ -57,12 +58,17 @@ describe('', () => {
});
it('copy code using button', async () => {
+ jest.useFakeTimers();
document.execCommand = jest.fn();
- const { getByTitle } = render(
- wrapInTestApp(),
+ const { getByTitle } = await renderInTestApp(
+ ,
);
const button = getByTitle('Text copied to clipboard');
fireEvent.click(button);
+ act(() => {
+ jest.runAllTimers();
+ });
expect(document.execCommand).toHaveBeenCalled();
+ jest.useRealTimers();
});
});
diff --git a/packages/core/src/components/CopyTextButton/CopyTextButton.test.tsx b/packages/core/src/components/CopyTextButton/CopyTextButton.test.tsx
index cab992e11a..07bce97d74 100644
--- a/packages/core/src/components/CopyTextButton/CopyTextButton.test.tsx
+++ b/packages/core/src/components/CopyTextButton/CopyTextButton.test.tsx
@@ -15,8 +15,9 @@
*/
import React from 'react';
-import { render, fireEvent } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { fireEvent } from '@testing-library/react';
+import { act } from 'react-dom/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { CopyTextButton } from './CopyTextButton';
import {
ApiRegistry,
@@ -55,29 +56,30 @@ const apiRegistry = ApiRegistry.from([
]);
describe('', () => {
- it('renders without exploding', () => {
- const { getByDisplayValue } = render(
- wrapInTestApp(
-
-
- ,
- ),
+ it('renders without exploding', async () => {
+ const { getByDisplayValue } = await renderInTestApp(
+
+
+ ,
);
getByDisplayValue('mockText');
});
it('displays tooltip on click', async () => {
+ jest.useFakeTimers();
document.execCommand = jest.fn();
- const rendered = render(
- wrapInTestApp(
-
-
- ,
- ),
+ const rendered = await renderInTestApp(
+
+
+ ,
);
const button = rendered.getByTitle('mockTooltip');
fireEvent.click(button);
+ act(() => {
+ jest.runAllTimers();
+ });
expect(document.execCommand).toHaveBeenCalled();
rendered.getByText('mockTooltip');
+ jest.useRealTimers();
});
});
diff --git a/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.test.tsx b/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.test.tsx
index 1dbdbcc3b9..0d07d8ec84 100644
--- a/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.test.tsx
+++ b/packages/core/src/components/HorizontalScrollGrid/HorizontalScrollGrid.test.tsx
@@ -15,8 +15,8 @@
*/
import React from 'react';
-import { render, fireEvent } from '@testing-library/react';
-import { renderWithEffects, wrapInTestApp } from '@backstage/test-utils';
+import { fireEvent } from '@testing-library/react';
+import { renderInTestApp } from '@backstage/test-utils';
import { HorizontalScrollGrid } from './HorizontalScrollGrid';
import { Grid } from '@material-ui/core';
@@ -33,14 +33,12 @@ describe('', () => {
jest.restoreAllMocks();
});
- it('renders without exploding', () => {
- const rendered = render(
- wrapInTestApp(
-
- item1
- item2
- ,
- ),
+ it('renders without exploding', async () => {
+ const rendered = await renderInTestApp(
+
+ item1
+ item2
+ ,
);
rendered.getByText('item1');
rendered.getByText('item2');
@@ -65,17 +63,15 @@ describe('', () => {
lastScroll = left || 0;
}) as any;
- const rendered = await renderWithEffects(
- wrapInTestApp(
-
-
- item1
-
-
- item2
-
- ,
- ),
+ const rendered = await renderInTestApp(
+
+
+ item1
+
+
+ item2
+
+ ,
);
rendered.getByTitle('Scroll Left');
diff --git a/packages/core/src/components/Lifecycle/Lifecycle.test.tsx b/packages/core/src/components/Lifecycle/Lifecycle.test.tsx
index ac3823d85c..b5567b2b5a 100644
--- a/packages/core/src/components/Lifecycle/Lifecycle.test.tsx
+++ b/packages/core/src/components/Lifecycle/Lifecycle.test.tsx
@@ -15,28 +15,27 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { Lifecycle } from './Lifecycle';
describe('', () => {
it('renders Alpha with shorthand', async () => {
- const { getByText } = render(wrapInTestApp());
+ const { getByText } = await renderInTestApp();
expect(getByText('α')).toBeInTheDocument();
});
it('renders Alpha without shorthand', async () => {
- const { getByText } = render(wrapInTestApp());
+ const { getByText } = await renderInTestApp();
expect(getByText('Alpha')).toBeInTheDocument();
});
it('renders Beta with shorthand', async () => {
- const { getByText } = render(wrapInTestApp());
+ const { getByText } = await renderInTestApp();
expect(getByText('β')).toBeInTheDocument();
});
it('renders Beta without shorthand', async () => {
- const { getByText } = render(wrapInTestApp());
+ const { getByText } = await renderInTestApp();
expect(getByText('Beta')).toBeInTheDocument();
});
});
diff --git a/packages/core/src/components/ProgressBars/Gauge.test.tsx b/packages/core/src/components/ProgressBars/Gauge.test.tsx
index 3d2ac17506..00cf0fd009 100644
--- a/packages/core/src/components/ProgressBars/Gauge.test.tsx
+++ b/packages/core/src/components/ProgressBars/Gauge.test.tsx
@@ -15,36 +15,34 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { Gauge, getProgressColor } from './Gauge';
import * as theme from '@backstage/theme';
describe('', () => {
- it('renders without exploding', () => {
- const { getByText } = render(
- wrapInTestApp(),
+ it('renders without exploding', async () => {
+ const { getByText } = await renderInTestApp(
+ ,
+ );
+ getByText('10%');
+ });
+ it('handles fractional prop', async () => {
+ const { getByText } = await renderInTestApp(
+ ,
);
getByText('10%');
});
- it('handles fractional prop', () => {
- const { getByText } = render(
- wrapInTestApp(),
- );
- getByText('10%');
- });
-
- it('handles max prop', () => {
- const { getByText } = render(
- wrapInTestApp(),
+ it('handles max prop', async () => {
+ const { getByText } = await renderInTestApp(
+ ,
);
getByText('1%');
});
- it('handles unit prop', () => {
- const { getByText } = render(
- wrapInTestApp(),
+ it('handles unit prop', async () => {
+ const { getByText } = await renderInTestApp(
+ ,
);
getByText('10m');
});
diff --git a/packages/core/src/components/ProgressBars/GaugeCard.test.tsx b/packages/core/src/components/ProgressBars/GaugeCard.test.tsx
index 496a620170..db112fa2ab 100644
--- a/packages/core/src/components/ProgressBars/GaugeCard.test.tsx
+++ b/packages/core/src/components/ProgressBars/GaugeCard.test.tsx
@@ -15,33 +15,32 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { GaugeCard } from './GaugeCard';
const minProps = { title: 'Tingle upgrade', progress: 0.12 };
describe('', () => {
- it('renders without exploding', () => {
- const { getByText } = render(wrapInTestApp());
+ it('renders without exploding', async () => {
+ const { getByText } = await renderInTestApp();
expect(getByText(/Tingle.*/)).toBeInTheDocument();
});
- it('renders progress and title', () => {
- const { getByText } = render(wrapInTestApp());
+ it('renders progress and title', async () => {
+ const { getByText } = await renderInTestApp();
expect(getByText(/Tingle.*/)).toBeInTheDocument();
expect(getByText(/12%.*/)).toBeInTheDocument();
});
- it('does not render deepLink', () => {
- const { queryByText } = render(wrapInTestApp());
+ it('does not render deepLink', async () => {
+ const { queryByText } = await renderInTestApp();
expect(queryByText('View more')).not.toBeInTheDocument();
});
- it('handles invalid numbers', () => {
+ it('handles invalid numbers', async () => {
const badProps = { title: 'Tingle upgrade', progress: 'hejjo' } as any;
- const { getByText } = render(wrapInTestApp());
+ const { getByText } = await renderInTestApp();
expect(getByText(/N\/A.*/)).toBeInTheDocument();
});
});
diff --git a/packages/core/src/components/SimpleStepper/SimpleStepper.test.tsx b/packages/core/src/components/SimpleStepper/SimpleStepper.test.tsx
index 043084e4fb..527160c4ff 100644
--- a/packages/core/src/components/SimpleStepper/SimpleStepper.test.tsx
+++ b/packages/core/src/components/SimpleStepper/SimpleStepper.test.tsx
@@ -14,8 +14,8 @@
* limitations under the License.
*/
import React from 'react';
-import { render, fireEvent, within } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { fireEvent, within } from '@testing-library/react';
+import { renderInTestApp } from '@backstage/test-utils';
import { SimpleStepper as Stepper } from './SimpleStepper';
import { SimpleStepperStep as Step } from './SimpleStepperStep';
@@ -24,20 +24,18 @@ const getTextInSlide = (rendered: any, index: number) =>
describe('Stepper', () => {
it('Maintains state history', async () => {
- const rendered = render(
- wrapInTestApp(
-
-
- step0
-
-
- step1
-
-
- step2
-
- ,
- ),
+ const rendered = await renderInTestApp(
+
+
+ step0
+
+
+ step1
+
+
+ step2
+
+ ,
);
fireEvent.click(getTextInSlide(rendered, 0)('Next') as Node);
@@ -51,27 +49,25 @@ describe('Stepper', () => {
});
it('Handles nextStep property', async () => {
- const rendered = render(
- wrapInTestApp(
-
-
- step0
-
- 3 }}
- data-testid="step1"
- >
- step1
-
-
- step2
-
-
- step3
-
- ,
- ),
+ const rendered = await renderInTestApp(
+
+
+ step0
+
+ 3 }}
+ data-testid="step1"
+ >
+ step1
+
+
+ step2
+
+
+ step3
+
+ ,
);
fireEvent.click(getTextInSlide(rendered, 0)('Next') as Node);
@@ -84,28 +80,26 @@ describe('Stepper', () => {
expect(rendered.getByText('step1')).toBeInTheDocument();
});
- it('Shows controls and content when going back to first step', () => {
- const rendered = render(
- wrapInTestApp(
-
-
- step0
-
- 3 }}
- data-testid="step1"
- >
- step1
-
-
- step2
-
-
- step3
-
- ,
- ),
+ it('Shows controls and content when going back to first step', async () => {
+ const rendered = await renderInTestApp(
+
+
+ step0
+
+ 3 }}
+ data-testid="step1"
+ >
+ step1
+
+
+ step2
+
+
+ step3
+
+ ,
);
fireEvent.click(getTextInSlide(rendered, 0)('Next') as Node);
@@ -123,30 +117,28 @@ describe('Stepper', () => {
expect(getTextInSlide(rendered, 0)('Next')).toBeInTheDocument();
});
- it('uses nextText if specified in all steps', () => {
- const rendered = render(
- wrapInTestApp(
+ it('uses nextText if specified in all steps', async () => {
+ const rendered = await renderInTestApp(
+
-
-
- step0
-
-
- final step
-
-
- ,
- ),
+
+ step0
+
+
+ final step
+
+
+ ,
);
expect(rendered.getByText('Step0Next')).toBeInTheDocument();
fireEvent.click(rendered.getByText('Step0Next'));
diff --git a/packages/core/src/components/Table/Table.test.tsx b/packages/core/src/components/Table/Table.test.tsx
index 24d68fe0d1..48b90be419 100644
--- a/packages/core/src/components/Table/Table.test.tsx
+++ b/packages/core/src/components/Table/Table.test.tsx
@@ -15,8 +15,7 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { Table } from './Table';
const minProps = {
@@ -43,14 +42,14 @@ const minProps = {
};
describe('
', () => {
- it('renders without exploding', () => {
- const rendered = render(wrapInTestApp());
+ it('renders without exploding', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('second value, second row')).toBeInTheDocument();
});
- it('renders with subtitle', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('renders with subtitle', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
expect(rendered.getByText('subtitle')).toBeInTheDocument();
});
diff --git a/packages/core/src/components/Tabs/Tab.test.tsx b/packages/core/src/components/Tabs/Tab.test.tsx
index 5b155ef536..df8540ff14 100644
--- a/packages/core/src/components/Tabs/Tab.test.tsx
+++ b/packages/core/src/components/Tabs/Tab.test.tsx
@@ -15,13 +15,12 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { StyledTab } from './Tab';
describe('', () => {
- it('renders without exploding', () => {
- const rendered = render(wrapInTestApp());
+ it('renders without exploding', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('test')).toBeInTheDocument();
});
});
diff --git a/packages/core/src/components/TrendLine/TrendLine.test.tsx b/packages/core/src/components/TrendLine/TrendLine.test.tsx
index dbd8adfccf..f3d658265b 100644
--- a/packages/core/src/components/TrendLine/TrendLine.test.tsx
+++ b/packages/core/src/components/TrendLine/TrendLine.test.tsx
@@ -17,24 +17,24 @@
/* eslint-disable jest/no-disabled-tests */
import React from 'react';
import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp, wrapInTestApp } from '@backstage/test-utils';
import { TrendLine } from './TrendLine';
describe('TrendLine', () => {
describe('when no data is present', () => {
- it('renders null without throwing', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('renders null without throwing', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
expect(rendered.queryByTitle('sparkline')).not.toBeInTheDocument();
});
});
describe('when one datapoint is present', () => {
- it('renders as a straight line', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('renders as a straight line', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
expect(rendered.getByTitle('sparkline')).toBeInTheDocument();
});
diff --git a/packages/core/src/components/WarningPanel/WarningPanel.test.tsx b/packages/core/src/components/WarningPanel/WarningPanel.test.tsx
index 493b143bbf..07a25d34c8 100644
--- a/packages/core/src/components/WarningPanel/WarningPanel.test.tsx
+++ b/packages/core/src/components/WarningPanel/WarningPanel.test.tsx
@@ -15,22 +15,21 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { WarningPanel } from './WarningPanel';
const minProps = { title: 'Mock title', message: 'Some more info' };
describe('', () => {
- it('renders without exploding', () => {
- const { getByText } = render(wrapInTestApp());
+ it('renders without exploding', async () => {
+ const { getByText } = await renderInTestApp();
expect(getByText('Mock title')).toBeInTheDocument();
});
- it('renders message and children', () => {
- const { getByText } = render(
- wrapInTestApp(children),
+ it('renders message and children', async () => {
+ const { getByText } = await renderInTestApp(
+ children,
);
expect(getByText('Some more info')).toBeInTheDocument();
expect(getByText('children')).toBeInTheDocument();
diff --git a/packages/core/src/layout/BottomLink/BottomLink.test.tsx b/packages/core/src/layout/BottomLink/BottomLink.test.tsx
index 9871e18ebb..92ae2ecb3b 100644
--- a/packages/core/src/layout/BottomLink/BottomLink.test.tsx
+++ b/packages/core/src/layout/BottomLink/BottomLink.test.tsx
@@ -15,8 +15,7 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { BottomLink } from './BottomLink';
const minProps = {
@@ -25,8 +24,8 @@ const minProps = {
};
describe('', () => {
- it('renders without exploding', () => {
- const rendered = render(wrapInTestApp());
+ it('renders without exploding', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('A deepLink title')).toBeInTheDocument();
});
});
diff --git a/packages/core/src/layout/ContentHeader/ContentHeader.test.tsx b/packages/core/src/layout/ContentHeader/ContentHeader.test.tsx
index 5db676dcc5..b28ad614bf 100644
--- a/packages/core/src/layout/ContentHeader/ContentHeader.test.tsx
+++ b/packages/core/src/layout/ContentHeader/ContentHeader.test.tsx
@@ -15,9 +15,8 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
import { ContentHeader } from './ContentHeader';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
jest.mock('react-helmet', () => {
return {
@@ -26,23 +25,23 @@ jest.mock('react-helmet', () => {
});
describe('', () => {
- it('should render with title', () => {
- const rendered = render(wrapInTestApp());
+ it('should render with title', async () => {
+ const rendered = await renderInTestApp();
rendered.getByText('Title');
});
- it('should render with titleComponent', () => {
+ it('should render with titleComponent', async () => {
const title = 'Custom title';
const titleComponent = () => {title}
;
- const rendered = render(
- wrapInTestApp(),
+ const rendered = await renderInTestApp(
+ ,
);
rendered.getByText(title);
});
- it('should render with description', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should render with description', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
rendered.getByText('description');
});
diff --git a/packages/core/src/layout/ErrorPage/ErrorPage.test.tsx b/packages/core/src/layout/ErrorPage/ErrorPage.test.tsx
index c47ff8d49e..91322ee2a5 100644
--- a/packages/core/src/layout/ErrorPage/ErrorPage.test.tsx
+++ b/packages/core/src/layout/ErrorPage/ErrorPage.test.tsx
@@ -15,14 +15,13 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
import { ErrorPage } from './ErrorPage';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
describe('', () => {
- it('should render with status code, status message and go back link', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should render with status code, status message and go back link', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
rendered.getByText(/page not found/i);
rendered.getByText(/404/i);
diff --git a/packages/core/src/layout/Header/Header.test.tsx b/packages/core/src/layout/Header/Header.test.tsx
index 320592c218..51468f6ab5 100644
--- a/packages/core/src/layout/Header/Header.test.tsx
+++ b/packages/core/src/layout/Header/Header.test.tsx
@@ -15,8 +15,7 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { Header } from './Header';
jest.mock('react-helmet', () => {
@@ -26,42 +25,42 @@ jest.mock('react-helmet', () => {
});
describe('', () => {
- it('should render with title', () => {
- const rendered = render(wrapInTestApp());
+ it('should render with title', async () => {
+ const rendered = await renderInTestApp();
rendered.getByText('Title');
});
- it('should set document title', () => {
- const rendered = render(wrapInTestApp());
+ it('should set document title', async () => {
+ const rendered = await renderInTestApp();
rendered.getByText('Title1');
rendered.getByText('defaultTitle: Title1 | Backstage');
});
- it('should override document title', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should override document title', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
rendered.getByText('Title1');
rendered.getByText('defaultTitle: Title2 | Backstage');
});
- it('should have subtitle', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should have subtitle', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
rendered.getByText('Subtitle');
});
- it('should have type rendered', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should have type rendered', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
rendered.getByText('tool');
});
- it('should have breadcrumb rendered', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should have breadcrumb rendered', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
rendered.getAllByText('Title');
});
diff --git a/packages/core/src/layout/HeaderActionMenu/HeaderActionMenu.test.tsx b/packages/core/src/layout/HeaderActionMenu/HeaderActionMenu.test.tsx
index 00fa4d27ac..76ede5398d 100644
--- a/packages/core/src/layout/HeaderActionMenu/HeaderActionMenu.test.tsx
+++ b/packages/core/src/layout/HeaderActionMenu/HeaderActionMenu.test.tsx
@@ -16,22 +16,24 @@
import React from 'react';
import { render, fireEvent } from '@testing-library/react';
-import { wrapInTestApp, Keyboard } from '@backstage/test-utils';
+import {
+ wrapInTestApp,
+ Keyboard,
+ renderInTestApp,
+} from '@backstage/test-utils';
import { HeaderActionMenu } from './HeaderActionMenu';
describe('', () => {
- it('renders without any items and without exploding', () => {
- render(wrapInTestApp());
+ it('renders without any items and without exploding', async () => {
+ await renderInTestApp();
});
- it('can open the menu and click menu items', () => {
+ it('can open the menu and click menu items', async () => {
const onClickFunction = jest.fn();
- const rendered = render(
- wrapInTestApp(
- ,
- ),
+ const rendered = await renderInTestApp(
+ ,
);
expect(rendered.queryByText('Some label')).not.toBeInTheDocument();
expect(onClickFunction).not.toHaveBeenCalled();
@@ -48,12 +50,10 @@ describe('', () => {
});
it('Disabled', async () => {
- const rendered = render(
- wrapInTestApp(
- ,
- ),
+ const rendered = await renderInTestApp(
+ ,
);
fireEvent.click(rendered.getByTestId('header-action-menu'));
@@ -63,22 +63,20 @@ describe('', () => {
);
});
- it('Test wrapper, and secondary label', () => {
+ it('Test wrapper, and secondary label', async () => {
const onClickFunction = jest.fn();
- const rendered = render(
- wrapInTestApp(
- (
-
- ),
- },
- ]}
- />,
- ),
+ const rendered = await renderInTestApp(
+ (
+
+ ),
+ },
+ ]}
+ />,
);
expect(onClickFunction).not.toHaveBeenCalled();
diff --git a/packages/core/src/layout/HeaderLabel/HeaderLabel.test.tsx b/packages/core/src/layout/HeaderLabel/HeaderLabel.test.tsx
index fdc6ef8c6e..acadb22525 100644
--- a/packages/core/src/layout/HeaderLabel/HeaderLabel.test.tsx
+++ b/packages/core/src/layout/HeaderLabel/HeaderLabel.test.tsx
@@ -15,38 +15,37 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { HeaderLabel } from './HeaderLabel';
describe('', () => {
- it('should have a label', () => {
- const rendered = render(wrapInTestApp());
+ it('should have a label', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('Label')).toBeInTheDocument();
});
- it('should say unknown', () => {
- const rendered = render(wrapInTestApp());
+ it('should say unknown', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('')).toBeInTheDocument();
});
- it('should say unknown when passing null as value prop', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should say unknown when passing null as value prop', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
expect(rendered.getByText('')).toBeInTheDocument();
});
- it('should have value', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should have value', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
expect(rendered.getByText('Value')).toBeInTheDocument();
});
- it('should have a link', () => {
- const rendered = render(
- wrapInTestApp(),
+ it('should have a link', async () => {
+ const rendered = await renderInTestApp(
+ ,
);
const anchor = rendered.container.querySelector('a') as HTMLAnchorElement;
expect(rendered.getByText('Value')).toBeInTheDocument();
diff --git a/packages/core/src/layout/HeaderTabs/HeaderTabs.test.tsx b/packages/core/src/layout/HeaderTabs/HeaderTabs.test.tsx
index a007bf9113..81d2123049 100644
--- a/packages/core/src/layout/HeaderTabs/HeaderTabs.test.tsx
+++ b/packages/core/src/layout/HeaderTabs/HeaderTabs.test.tsx
@@ -15,8 +15,7 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { HeaderTabs } from './';
const mockTabs = [
@@ -25,15 +24,15 @@ const mockTabs = [
];
describe('', () => {
- it('should render tabs', () => {
- const rendered = render(wrapInTestApp());
+ it('should render tabs', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('Overview')).toBeInTheDocument();
expect(rendered.getByText('Docs')).toBeInTheDocument();
});
- it('should render correct selected tab', () => {
- const rendered = render(wrapInTestApp());
+ it('should render correct selected tab', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('Docs').parentElement).toHaveAttribute(
'aria-selected',
diff --git a/packages/core/src/layout/InfoCard/InfoCard.test.tsx b/packages/core/src/layout/InfoCard/InfoCard.test.tsx
index d58fdb2ccb..f82d51fe06 100644
--- a/packages/core/src/layout/InfoCard/InfoCard.test.tsx
+++ b/packages/core/src/layout/InfoCard/InfoCard.test.tsx
@@ -15,8 +15,7 @@
*/
import React from 'react';
-import { render } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp } from '@backstage/test-utils';
import { InfoCard } from './InfoCard';
const minProps = {
@@ -28,13 +27,13 @@ const minProps = {
};
describe('', () => {
- it('renders without exploding', () => {
- const rendered = render(wrapInTestApp());
+ it('renders without exploding', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('Some title')).toBeInTheDocument();
});
- it('renders a deepLink when prop is set', () => {
- const rendered = render(wrapInTestApp());
+ it('renders a deepLink when prop is set', async () => {
+ const rendered = await renderInTestApp();
expect(rendered.getByText('A deepLink title')).toBeInTheDocument();
});
});
diff --git a/packages/core/src/layout/TabbedCard/TabbedCard.test.tsx b/packages/core/src/layout/TabbedCard/TabbedCard.test.tsx
index ceeae8d49d..89abdfdd53 100644
--- a/packages/core/src/layout/TabbedCard/TabbedCard.test.tsx
+++ b/packages/core/src/layout/TabbedCard/TabbedCard.test.tsx
@@ -16,7 +16,7 @@
import React from 'react';
import { render, fireEvent } from '@testing-library/react';
-import { wrapInTestApp } from '@backstage/test-utils';
+import { renderInTestApp, wrapInTestApp } from '@backstage/test-utils';
import { TabbedCard, CardTab } from '.';
const minProps = {
@@ -28,38 +28,32 @@ const minProps = {
};
describe('', () => {
- it('renders without exploding', () => {
- const rendered = render(
- wrapInTestApp(
-
- Test Content
- Test Content
- ,
- ),
+ it('renders without exploding', async () => {
+ const rendered = await renderInTestApp(
+
+ Test Content
+ Test Content
+ ,
);
expect(rendered.getByText('Some title')).toBeInTheDocument();
});
- it('renders a deepLink when prop is set', () => {
- const rendered = render(
- wrapInTestApp(
-
- Test Content
- Test Content
- ,
- ),
+ it('renders a deepLink when prop is set', async () => {
+ const rendered = await renderInTestApp(
+
+ Test Content
+ Test Content
+ ,
);
expect(rendered.getByText('A deepLink title')).toBeInTheDocument();
});
- it('switches tabs when clicking', () => {
- const rendered = render(
- wrapInTestApp(
-
- Test Content 1
- Test Content 2
- ,
- ),
+ it('switches tabs when clicking', async () => {
+ const rendered = await renderInTestApp(
+
+ Test Content 1
+ Test Content 2
+ ,
);
expect(rendered.getByText('Test Content 1')).toBeInTheDocument();