* Fixes issue #25011, removed MemoryRouter and added decorator with WrapInTestApp for proper routing context

Signed-off-by: Arup Chauhan <arupchauhan26@gmail.com>

* Fixes issue #25011, removed comment lines

Signed-off-by: Arup Chauhan <arupchauhan26@gmail.com>

* Fixes issue #25011: Updated package.json

Signed-off-by: Arup Chauhan <arupchauhan26@gmail.com>

---------

Signed-off-by: Arup Chauhan <arupchauhan26@gmail.com>
This commit is contained in:
Arup Chauhan
2024-08-13 07:59:31 -05:00
committed by GitHub
parent b10c109d29
commit 8c60eb7a46
4 changed files with 92 additions and 54 deletions
@@ -15,11 +15,14 @@
*/
import { Entity, GroupEntity } from '@backstage/catalog-model';
import { catalogApiRef, EntityProvider } from '@backstage/plugin-catalog-react';
import { TestApiProvider } from '@backstage/test-utils';
import {
catalogApiRef,
EntityProvider,
entityRouteRef,
} from '@backstage/plugin-catalog-react';
import { TestApiProvider, wrapInTestApp } from '@backstage/test-utils';
import Grid from '@material-ui/core/Grid';
import React from 'react';
import { MemoryRouter } from 'react-router-dom';
import React, { ComponentType, PropsWithChildren } from 'react';
import {
groupA,
mockedCatalogApiSupportingGroups,
@@ -29,6 +32,15 @@ import { MembersListCard } from './MembersListCard';
export default {
title: 'Plugins/Org/Group Members List Card',
component: MembersListCard,
decorators: [
(Story: ComponentType<PropsWithChildren<{}>>) =>
wrapInTestApp(
<div>
<Story />
</div>,
{ mountedRoutes: { '/': entityRouteRef } },
),
],
};
const makeUser = ({
@@ -108,45 +120,38 @@ const bob = makeUser({
const catalogApi = (items: Entity[]) => ({
getEntities: () => Promise.resolve({ items }),
});
export const Default = () => (
<MemoryRouter>
<TestApiProvider apis={[[catalogApiRef, catalogApi([alice, bob])]]}>
<EntityProvider entity={defaultEntity}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
<MembersListCard />
</Grid>
<TestApiProvider apis={[[catalogApiRef, catalogApi([alice, bob])]]}>
<EntityProvider entity={defaultEntity}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
<MembersListCard />
</Grid>
</EntityProvider>
</TestApiProvider>
</MemoryRouter>
</Grid>
</EntityProvider>
</TestApiProvider>
);
export const Empty = () => (
<MemoryRouter>
<TestApiProvider apis={[[catalogApiRef, catalogApi([])]]}>
<EntityProvider entity={defaultEntity}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
<MembersListCard />
</Grid>
<TestApiProvider apis={[[catalogApiRef, catalogApi([])]]}>
<EntityProvider entity={defaultEntity}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
<MembersListCard />
</Grid>
</EntityProvider>
</TestApiProvider>
</MemoryRouter>
</Grid>
</EntityProvider>
</TestApiProvider>
);
export const AggregateMembersToggle = () => (
<MemoryRouter>
<TestApiProvider apis={[[catalogApiRef, mockedCatalogApiSupportingGroups]]}>
<EntityProvider entity={groupA}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
<MembersListCard showAggregateMembersToggle />
</Grid>
<TestApiProvider apis={[[catalogApiRef, mockedCatalogApiSupportingGroups]]}>
<EntityProvider entity={groupA}>
<Grid container spacing={4}>
<Grid item xs={12} md={6}>
<MembersListCard showAggregateMembersToggle />
</Grid>
</EntityProvider>
</TestApiProvider>
</MemoryRouter>
</Grid>
</EntityProvider>
</TestApiProvider>
);
+6 -5
View File
@@ -4,14 +4,18 @@
"description": "Storybook build for components package",
"private": true,
"scripts": {
"start": "start-storybook -p 6006",
"build-storybook": "build-storybook --output-dir dist"
"build-storybook": "build-storybook --output-dir dist",
"start": "start-storybook -p 6006"
},
"resolutions": {
"webpack": "^5.73.0"
},
"dependencies": {
"@swc/core": "^1.3.46",
"react": "^18.0.2",
"react-dom": "^18.0.2",
"react-hot-loader": "^4.13.0",
"react-router-dom": "^6.25.1",
"swc-loader": "^0.2.3"
},
"devDependencies": {
@@ -29,9 +33,6 @@
"storybook-dark-mode": "^1.1.0",
"typescript": "~4.9.0"
},
"resolutions": {
"webpack": "^5.73.0"
},
"peerDependencies": {
"@backstage/core-app-api": "*",
"@backstage/core-plugin-api": "*",
+32
View File
@@ -1802,6 +1802,13 @@ __metadata:
languageName: node
linkType: hard
"@remix-run/router@npm:1.18.0":
version: 1.18.0
resolution: "@remix-run/router@npm:1.18.0"
checksum: dad8e8cbd3b44503c89de0fc5d8f92954d04c00bf36b42a18ae8b03fe0783742a99d0cae36f2962db38e2bdba3d40259105202c69620943e88f81711ceeb8fe4
languageName: node
linkType: hard
"@storybook/addon-a11y@npm:^6.5.9":
version: 6.5.16
resolution: "@storybook/addon-a11y@npm:6.5.16"
@@ -9684,6 +9691,30 @@ __metadata:
languageName: node
linkType: hard
"react-router-dom@npm:^6.25.1":
version: 6.25.1
resolution: "react-router-dom@npm:6.25.1"
dependencies:
"@remix-run/router": 1.18.0
react-router: 6.25.1
peerDependencies:
react: ">=16.8"
react-dom: ">=16.8"
checksum: fac768bc02cc0f39f5c1f022c8e7323ce9ffcc9b8e80456b51a70ff765854444cb4e6cdbf7d4132064a8fcbeeabeb82b8802614fbe66d8cbe7408e23ee33d789
languageName: node
linkType: hard
"react-router@npm:6.25.1":
version: 6.25.1
resolution: "react-router@npm:6.25.1"
dependencies:
"@remix-run/router": 1.18.0
peerDependencies:
react: ">=16.8"
checksum: 2abbab5ecc5d1210f70980571326fd1956da3898b78bfcce6229e346e658dd42ec75bea1caea6aa45607ef677e442f3241dc3fb839293f276fa4bd466870aadd
languageName: node
linkType: hard
"react-sizeme@npm:^3.0.1":
version: 3.0.2
resolution: "react-sizeme@npm:3.0.2"
@@ -10684,6 +10715,7 @@ __metadata:
react: ^18.0.2
react-dom: ^18.0.2
react-hot-loader: ^4.13.0
react-router-dom: ^6.25.1
storybook-dark-mode: ^1.1.0
swc-loader: ^0.2.3
typescript: ~4.9.0
+14 -14
View File
@@ -14751,10 +14751,10 @@ __metadata:
languageName: node
linkType: hard
"@remix-run/router@npm:1.15.3":
version: 1.15.3
resolution: "@remix-run/router@npm:1.15.3"
checksum: 9e70bd334d99fdf9285f0885c10353d7e25f66369080f551d997e3ce204e1af3a12d6f12b091f94a2dc9a54c80598bbe3c5194b57cbae17b7b40ab815dcd49a0
"@remix-run/router@npm:1.18.0":
version: 1.18.0
resolution: "@remix-run/router@npm:1.18.0"
checksum: dad8e8cbd3b44503c89de0fc5d8f92954d04c00bf36b42a18ae8b03fe0783742a99d0cae36f2962db38e2bdba3d40259105202c69620943e88f81711ceeb8fe4
languageName: node
linkType: hard
@@ -39041,15 +39041,15 @@ __metadata:
linkType: hard
"react-router-dom@npm:^6.3.0":
version: 6.22.3
resolution: "react-router-dom@npm:6.22.3"
version: 6.25.1
resolution: "react-router-dom@npm:6.25.1"
dependencies:
"@remix-run/router": 1.15.3
react-router: 6.22.3
"@remix-run/router": 1.18.0
react-router: 6.25.1
peerDependencies:
react: ">=16.8"
react-dom: ">=16.8"
checksum: 5ae3759a70e4123cd4b8efbb82199a69f5d8c4a7a434d186d2ec7b532b6ef3302df2a98e5c27db977d3f0d725c7a279010a16ae77a3bf6257f1fee96123d8b77
checksum: fac768bc02cc0f39f5c1f022c8e7323ce9ffcc9b8e80456b51a70ff765854444cb4e6cdbf7d4132064a8fcbeeabeb82b8802614fbe66d8cbe7408e23ee33d789
languageName: node
linkType: hard
@@ -39064,14 +39064,14 @@ __metadata:
languageName: node
linkType: hard
"react-router@npm:6.22.3, react-router@npm:^6.3.0":
version: 6.22.3
resolution: "react-router@npm:6.22.3"
"react-router@npm:6.25.1, react-router@npm:^6.3.0":
version: 6.25.1
resolution: "react-router@npm:6.25.1"
dependencies:
"@remix-run/router": 1.15.3
"@remix-run/router": 1.18.0
peerDependencies:
react: ">=16.8"
checksum: 1f7d9a5a849761ff69ef8f3d3131b4c1c25d18b76317ba5ad6f0d9421192c0b8b71ab0cc818c57aad7b81ada725559e513307d0ab43296a460262f0358602672
checksum: 2abbab5ecc5d1210f70980571326fd1956da3898b78bfcce6229e346e658dd42ec75bea1caea6aa45607ef677e442f3241dc3fb839293f276fa4bd466870aadd
languageName: node
linkType: hard