Skip to content

Commit f9bb68f

Browse files
feat(ui-tests): remove deprecated api
1 parent 4a084d6 commit f9bb68f

14 files changed

Lines changed: 25 additions & 260 deletions

File tree

packages/ui-tests/src/test/dataMocks.tsx

Lines changed: 0 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,7 @@ import type {
55
Action,
66
RouterBindings,
77
AuthProvider,
8-
LegacyAuthProvider,
9-
IRouterContext,
108
} from "@refinedev/core";
11-
import { useParams, useLocation, Link, useNavigate } from "react-router";
12-
13-
/* import {
14-
IDataContext,
15-
IRouterContext,
16-
IAccessControlContext,
17-
ILiveContext,
18-
} from "@refinedev/core"; */
199

2010
export const posts = [
2111
{
@@ -61,29 +51,6 @@ const MockDataProvider = () => {
6151

6252
export const MockJSONServer = MockDataProvider() as any;
6353

64-
export const MockRouterProvider = {
65-
useHistory: () => {
66-
const navigate = useNavigate();
67-
68-
return {
69-
push: navigate,
70-
replace: (path: string) => {
71-
navigate(path, { replace: true });
72-
},
73-
goBack: () => {
74-
navigate(-1);
75-
},
76-
};
77-
},
78-
useLocation,
79-
useParams: () => {
80-
const params = useParams();
81-
82-
return params as any;
83-
},
84-
Link,
85-
Prompt: () => null,
86-
};
8754
export const MockAccessControlProvider: any = {
8855
can: () => Promise.resolve({ can: true }),
8956
};
@@ -94,16 +61,6 @@ export const MockLiveProvider: any = {
9461
publish: () => ({}),
9562
};
9663

97-
export const mockLegacyAuthProvider: LegacyAuthProvider = {
98-
login: () => Promise.resolve(),
99-
logout: () => Promise.resolve(),
100-
checkError: () => Promise.resolve(),
101-
checkAuth: () => Promise.resolve(),
102-
getPermissions: () => Promise.resolve(["admin"]),
103-
getUserIdentity: () =>
104-
Promise.resolve({ name: "John Doe", avatar: "localhost:3000" }),
105-
};
106-
10764
export const mockAuthProvider: AuthProvider = {
10865
login: async () => ({ success: true }),
10966
check: async () => ({ authenticated: true }),
@@ -162,21 +119,3 @@ export const mockRouterBindings = ({
162119

163120
return bindings;
164121
};
165-
166-
export const mockLegacyRouterProvider = () => {
167-
const provider: IRouterContext = {
168-
useHistory: () => {
169-
return {
170-
push: () => undefined,
171-
replace: () => undefined,
172-
goBack: () => undefined,
173-
};
174-
},
175-
useLocation: () => ({}) as any,
176-
useParams: () => ({}) as any,
177-
Link: () => null,
178-
Prompt: () => null,
179-
};
180-
181-
return provider;
182-
};

packages/ui-tests/src/test/index.tsx

Lines changed: 4 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -3,43 +3,25 @@ import { BrowserRouter } from "react-router";
33

44
import { type AuthProvider, Refine } from "@refinedev/core";
55

6-
import { MockRouterProvider, MockJSONServer } from "@test";
6+
import { MockJSONServer } from "@test";
77
import type {
88
I18nProvider,
99
AccessControlProvider,
10-
LegacyAuthProvider,
1110
DataProvider,
1211
NotificationProvider,
1312
IResourceItem,
1413
RouterBindings,
15-
IRouterContext,
1614
IRefineOptions,
1715
} from "@refinedev/core";
16+
import { mockRouterBindings } from "./dataMocks";
1817

19-
/* interface ITestWrapperProps {
20-
authProvider?: IAuthContext;
21-
dataProvider?: IDataContext;
22-
i18nProvider?: I18nProvider;
23-
accessControlProvider?: IAccessControlContext;
24-
liveProvider?: ILiveContext;
25-
resources?: IResourceItem[];
26-
children?: React.ReactNode;
27-
routerInitialEntries?: string[];
28-
refineProvider?: IRefineContextProvider;
29-
} */
30-
31-
const List = () => {
32-
return <div>hede</div>;
33-
};
3418
export interface ITestWrapperProps {
3519
dataProvider?: DataProvider;
36-
legacyAuthProvider?: LegacyAuthProvider;
3720
authProvider?: AuthProvider;
3821
resources?: IResourceItem[];
3922
notificationProvider?: NotificationProvider;
4023
accessControlProvider?: AccessControlProvider;
4124
i18nProvider?: I18nProvider;
42-
legacyRouterProvider?: IRouterContext;
4325
routerProvider?: RouterBindings;
4426
routerInitialEntries?: string[];
4527
DashboardPage?: React.FC;
@@ -48,16 +30,13 @@ export interface ITestWrapperProps {
4830

4931
export const TestWrapper: (props: ITestWrapperProps) => React.FC = ({
5032
dataProvider,
51-
legacyAuthProvider,
5233
authProvider,
5334
resources,
5435
notificationProvider,
5536
accessControlProvider,
5637
routerInitialEntries,
57-
DashboardPage,
5838
i18nProvider,
5939
routerProvider,
60-
legacyRouterProvider,
6140
options,
6241
}) => {
6342
// Previously, MemoryRouter was used in this wrapper. However, the
@@ -82,14 +61,11 @@ export const TestWrapper: (props: ITestWrapperProps) => React.FC = ({
8261
}}
8362
dataProvider={dataProvider ?? MockJSONServer}
8463
i18nProvider={i18nProvider}
85-
routerProvider={routerProvider}
86-
legacyRouterProvider={legacyRouterProvider ?? MockRouterProvider}
87-
legacyAuthProvider={legacyAuthProvider}
64+
routerProvider={routerProvider ?? mockRouterBindings()}
8865
authProvider={authProvider}
8966
notificationProvider={notificationProvider}
90-
resources={resources ?? [{ name: "posts", list: List }]}
67+
resources={resources ?? [{ name: "posts", list: "/list" }]}
9168
accessControlProvider={accessControlProvider}
92-
DashboardPage={DashboardPage ?? undefined}
9369
>
9470
{children}
9571
</Refine>
@@ -99,13 +75,10 @@ export const TestWrapper: (props: ITestWrapperProps) => React.FC = ({
9975
};
10076
export {
10177
MockJSONServer,
102-
MockRouterProvider,
10378
MockAccessControlProvider,
10479
MockLiveProvider,
10580
mockRouterBindings,
10681
mockAuthProvider,
107-
mockLegacyAuthProvider,
108-
mockLegacyRouterProvider,
10982
} from "./dataMocks";
11083

11184
// re-export everything

packages/ui-tests/src/test/jest.setup.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import "@testing-library/jest-dom";
2-
import "@testing-library/jest-dom/extend-expect";
2+
import "@testing-library/react";
33

44
/** Antd mocks */
55
window.matchMedia = jest.fn().mockImplementation((query) => {

packages/ui-tests/src/tests/autoSaveIndicator.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ export const autoSaveIndicatorTests = (
3434

3535
it("should render loading", async () => {
3636
const { findByText, getByText } = render(
37-
<AutoSaveIndicator status="loading" />,
37+
<AutoSaveIndicator status="pending" />,
3838
);
3939

4040
await findByText("saving...");

packages/ui-tests/src/tests/breadcrumb.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@ const renderBreadcrumb = (
1818
);
1919
};
2020

21-
const DummyResourcePage = () => <div>Dummy</div>;
22-
2321
export const breadcrumbTests = (
2422
Breadcrumb: React.ComponentType<RefineBreadcrumbProps<any>>,
2523
): void => {
@@ -51,7 +49,7 @@ export const breadcrumbTests = (
5149

5250
it("should render breadcrumb items with link", async () => {
5351
const { container } = renderBreadcrumb(<Breadcrumb />, {
54-
resources: [{ name: "posts", list: DummyResourcePage }],
52+
resources: [{ name: "posts", list: "/posts" }],
5553
routerInitialEntries: ["/posts/create"],
5654
});
5755

@@ -64,7 +62,9 @@ export const breadcrumbTests = (
6462
resources: [
6563
{
6664
name: "posts",
67-
icon: <div data-testid="resource-icon" />,
65+
meta: {
66+
icon: <div data-testid="resource-icon" />,
67+
},
6868
},
6969
],
7070
routerInitialEntries: ["/posts/create"],
@@ -78,7 +78,9 @@ export const breadcrumbTests = (
7878
resources: [
7979
{
8080
name: "posts",
81-
icon: <div data-testid="resource-icon" />,
81+
meta: {
82+
icon: <div data-testid="resource-icon" />,
83+
},
8284
},
8385
],
8486
routerInitialEntries: ["/posts/create"],

packages/ui-tests/src/tests/buttons/list.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -422,7 +422,7 @@ export const buttonListTests = (
422422
resources: [
423423
{
424424
name: "posts",
425-
options: { route: "custom-route-posts" },
425+
list: "/posts",
426426
},
427427
{ name: "posts" },
428428
],

packages/ui-tests/src/tests/crud/edit.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ export const crudEditTests = (
131131
/>,
132132
undefined,
133133
{
134-
resources: [{ name: "posts", canDelete: true }],
134+
resources: [{ name: "posts", meta: { canDelete: true } }],
135135
routerInitialEntries: ["/posts/edit/1"],
136136
},
137137
);

packages/ui-tests/src/tests/crud/list.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ export const crudListTests = (
102102
resources: [
103103
{
104104
name: "posts",
105-
create: () => null,
105+
create: "/posts/create",
106106
},
107107
],
108108
routerInitialEntries: ["/posts"],
@@ -125,7 +125,7 @@ export const crudListTests = (
125125
resources: [
126126
{
127127
name: "posts",
128-
canCreate: false,
128+
meta: { canCreate: false },
129129
},
130130
],
131131
routerInitialEntries: ["/posts"],
@@ -167,7 +167,7 @@ export const crudListTests = (
167167
resources: [
168168
{
169169
name: "posts",
170-
create: () => null,
170+
create: "/posts/create",
171171
},
172172
],
173173
routerInitialEntries: ["/posts"],

packages/ui-tests/src/tests/layout/header.tsx

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,6 @@ import type { RefineLayoutHeaderProps } from "@refinedev/ui-types";
55

66
import { render, TestWrapper } from "@test";
77

8-
const mockLegacyAuthProvider = {
9-
login: () => Promise.resolve(),
10-
logout: () => Promise.resolve(),
11-
checkError: () => Promise.resolve(),
12-
checkAuth: () => Promise.resolve(),
13-
getPermissions: () => Promise.resolve(["admin"]),
14-
getUserIdentity: () =>
15-
Promise.resolve({ name: "username", avatar: "localhost:3000" }),
16-
};
17-
188
const mockAuthProvider: AuthProvider = {
199
check: () => Promise.resolve({ authenticated: true }),
2010
login: () => Promise.resolve({ success: true }),
@@ -29,26 +19,6 @@ export const layoutHeaderTests = (
2919
HeaderElement: React.ComponentType<RefineLayoutHeaderProps>,
3020
): void => {
3121
describe("[@refinedev/ui-tests] Common Tests / Header Element", () => {
32-
// NOTE : Will be removed in v5
33-
it("should render successfull user name and avatar in header with legacy authProvider", async () => {
34-
const { findByText, queryByRole, queryByAltText } = render(
35-
<HeaderElement />,
36-
{
37-
wrapper: TestWrapper({
38-
legacyAuthProvider: mockLegacyAuthProvider,
39-
}),
40-
},
41-
);
42-
43-
await findByText("username");
44-
const imgByRole = queryByRole("img", { queryFallbacks: true });
45-
const imgByAltText = queryByAltText("username");
46-
expect(imgByRole ?? imgByAltText).toHaveAttribute(
47-
"src",
48-
"localhost:3000",
49-
);
50-
});
51-
5222
it("should render successfull user name and avatar in header with authProvider", async () => {
5323
const { findByText, queryByRole, queryByAltText } = render(
5424
<HeaderElement />,

0 commit comments

Comments
 (0)