packages,plugins: migrate to using TestApiProvider and Registry

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
Patrik Oldsberg
2021-11-17 18:56:22 +01:00
parent 7ff56c2330
commit 29ef695410
118 changed files with 991 additions and 1112 deletions
@@ -15,8 +15,8 @@
*/
import { Entity, GroupEntity } from '@backstage/catalog-model';
import { ApiProvider, ApiRegistry } from '@backstage/core-app-api';
import { catalogApiRef, EntityProvider } from '@backstage/plugin-catalog-react';
import { TestApiProvider } from '@backstage/test-utils';
import { Grid } from '@material-ui/core';
import React from 'react';
import { MemoryRouter } from 'react-router';
@@ -99,12 +99,9 @@ const catalogApi = (items: Entity[]) => ({
getEntities: () => Promise.resolve({ items }),
});
const apiRegistry = (items: Entity[]) =>
ApiRegistry.from([[catalogApiRef, catalogApi(items)]]);
export const Default = () => (
<MemoryRouter>
<ApiProvider apis={apiRegistry([alice, bob])}>
<TestApiProvider apis={[[catalogApiRef, catalogApi([alice, bob])]]}>
<EntityProvider entity={defaultEntity}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
@@ -112,13 +109,13 @@ export const Default = () => (
</Grid>
</Grid>
</EntityProvider>
</ApiProvider>
</TestApiProvider>
</MemoryRouter>
);
export const Empty = () => (
<MemoryRouter>
<ApiProvider apis={apiRegistry([])}>
<TestApiProvider apis={[[catalogApiRef, catalogApi([])]]}>
<EntityProvider entity={defaultEntity}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
@@ -126,6 +123,6 @@ export const Empty = () => (
</Grid>
</Grid>
</EntityProvider>
</ApiProvider>
</TestApiProvider>
</MemoryRouter>
);
@@ -20,10 +20,13 @@ import {
catalogApiRef,
EntityProvider,
} from '@backstage/plugin-catalog-react';
import { renderWithEffects, wrapInTestApp } from '@backstage/test-utils';
import {
renderWithEffects,
TestApiProvider,
wrapInTestApp,
} from '@backstage/test-utils';
import React from 'react';
import { MembersListCard } from './MembersListCard';
import { ApiProvider, ApiRegistry } from '@backstage/core-app-api';
describe('MemberTab Test', () => {
const groupEntity: GroupEntity = {
@@ -103,17 +106,15 @@ describe('MemberTab Test', () => {
}),
};
const apis = ApiRegistry.from([[catalogApiRef, catalogApi]]);
it('Display Profile Card', async () => {
const rendered = await renderWithEffects(
wrapInTestApp(
<ApiProvider apis={apis}>
<TestApiProvider apis={[[catalogApiRef, catalogApi]]}>
<EntityProvider entity={groupEntity}>
<MembersListCard />
</EntityProvider>
,
</ApiProvider>,
</TestApiProvider>,
),
);
@@ -15,14 +15,14 @@
*/
import { GroupEntity } from '@backstage/catalog-model';
import { ApiProvider, ApiRegistry } from '@backstage/core-app-api';
import { ApiProvider } from '@backstage/core-app-api';
import {
CatalogApi,
catalogApiRef,
catalogRouteRef,
EntityProvider,
} from '@backstage/plugin-catalog-react';
import { wrapInTestApp } from '@backstage/test-utils';
import { TestApiRegistry, wrapInTestApp } from '@backstage/test-utils';
import {
BackstageTheme,
createTheme,
@@ -86,11 +86,11 @@ const catalogApi: Partial<CatalogApi> = {
getEntities: () => Promise.resolve({ items: [serviceA, serviceB, websiteA] }),
};
const apiRegistry = ApiRegistry.from([[catalogApiRef, catalogApi]]);
const apis = TestApiRegistry.from([catalogApiRef, catalogApi]);
export const Default = () =>
wrapInTestApp(
<ApiProvider apis={apiRegistry}>
<ApiProvider apis={apis}>
<EntityProvider entity={defaultEntity}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
@@ -123,7 +123,7 @@ const monochromeTheme = (outer: BackstageTheme) =>
export const Themed = () =>
wrapInTestApp(
<ThemeProvider theme={monochromeTheme}>
<ApiProvider apis={apiRegistry}>
<ApiProvider apis={apis}>
<EntityProvider entity={defaultEntity}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
@@ -21,11 +21,10 @@ import {
EntityProvider,
catalogRouteRef,
} from '@backstage/plugin-catalog-react';
import { renderInTestApp } from '@backstage/test-utils';
import { renderInTestApp, TestApiProvider } from '@backstage/test-utils';
import { queryByText } from '@testing-library/react';
import React from 'react';
import { OwnershipCard } from './OwnershipCard';
import { ApiProvider, ApiRegistry } from '@backstage/core-app-api';
describe('OwnershipCard', () => {
const groupEntity: GroupEntity = {
@@ -121,11 +120,11 @@ describe('OwnershipCard', () => {
});
const { getByText } = await renderInTestApp(
<ApiProvider apis={ApiRegistry.with(catalogApiRef, catalogApi)}>
<TestApiProvider apis={[[catalogApiRef, catalogApi]]}>
<EntityProvider entity={groupEntity}>
<OwnershipCard />
</EntityProvider>
</ApiProvider>,
</TestApiProvider>,
{
mountedRoutes: {
'/create': catalogRouteRef,
@@ -157,11 +156,11 @@ describe('OwnershipCard', () => {
});
const { getByText } = await renderInTestApp(
<ApiProvider apis={ApiRegistry.with(catalogApiRef, catalogApi)}>
<TestApiProvider apis={[[catalogApiRef, catalogApi]]}>
<EntityProvider entity={groupEntity}>
<OwnershipCard />
</EntityProvider>
</ApiProvider>,
</TestApiProvider>,
{
mountedRoutes: {
'/create': catalogRouteRef,
@@ -205,11 +204,11 @@ describe('OwnershipCard', () => {
});
const { getByText } = await renderInTestApp(
<ApiProvider apis={ApiRegistry.with(catalogApiRef, catalogApi)}>
<TestApiProvider apis={[[catalogApiRef, catalogApi]]}>
<EntityProvider entity={userEntity}>
<OwnershipCard />
</EntityProvider>
</ApiProvider>,
</TestApiProvider>,
{
mountedRoutes: {
'/create': catalogRouteRef,