Skip to content

Commit 6e3ba0f

Browse files
ref: Migrate useSunburstCoverage to TSQ V5 (#3701)
1 parent c68ec37 commit 6e3ba0f

File tree

8 files changed

+255
-216
lines changed

8 files changed

+255
-216
lines changed

src/pages/RepoPage/CoverageTab/OverviewTab/subroute/Sunburst/Sunburst.test.jsx

+40-35
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
import { QueryClient, QueryClientProvider } from '@tanstack/react-query'
2+
import {
3+
QueryClientProvider as QueryClientProviderV5,
4+
QueryClient as QueryClientV5,
5+
} from '@tanstack/react-queryV5'
26
import { render, screen } from '@testing-library/react'
37
import { graphql, http, HttpResponse } from 'msw'
48
import { setupServer } from 'msw/node'
@@ -9,34 +13,50 @@ import Sunburst, { getPathsToDisplay } from './Sunburst'
913
vi.mock('ui/SunburstChart', () => ({ default: () => 'Chart Mocked' }))
1014

1115
const queryClient = new QueryClient({
12-
defaultOptions: {
13-
queries: {
14-
retry: false,
15-
},
16-
},
16+
defaultOptions: { queries: { retry: false } },
17+
})
18+
const queryClientV5 = new QueryClientV5({
19+
defaultOptions: { queries: { retry: false } },
1720
})
18-
const server = setupServer()
1921

2022
const wrapper = ({ children }) => (
21-
<QueryClientProvider client={queryClient}>
22-
<MemoryRouter initialEntries={['/gh/codecov/cool-repo/tree/main']}>
23-
<Route path="/:provider/:owner/:repo/tree/:branch">{children}</Route>
24-
</MemoryRouter>
25-
</QueryClientProvider>
23+
<QueryClientProviderV5 client={queryClientV5}>
24+
<QueryClientProvider client={queryClient}>
25+
<MemoryRouter initialEntries={['/gh/codecov/cool-repo/tree/main']}>
26+
<Route path="/:provider/:owner/:repo/tree/:branch">{children}</Route>
27+
</MemoryRouter>
28+
</QueryClientProvider>
29+
</QueryClientProviderV5>
2630
)
2731

32+
const server = setupServer()
2833
beforeAll(() => {
2934
server.listen({ onUnhandledRequest: 'warn' })
3035
})
36+
3137
afterEach(() => {
3238
queryClient.clear()
39+
queryClientV5.clear()
3340
server.resetHandlers()
3441
})
42+
3543
afterAll(() => {
3644
server.close()
3745
})
3846

39-
const treeMock = { name: 'repoName', children: [] }
47+
const treeMock = [
48+
{
49+
name: 'repoName',
50+
fullPath: 'repoName',
51+
coverage: 100,
52+
lines: 100,
53+
hits: 100,
54+
partials: 0,
55+
misses: 0,
56+
children: [],
57+
},
58+
]
59+
4060
const overviewMock = {
4161
owner: {
4262
isCurrentUserActivated: true,
@@ -52,6 +72,7 @@ const overviewMock = {
5272
},
5373
},
5474
}
75+
5576
const repoConfigMock = {
5677
owner: {
5778
repository: {
@@ -64,37 +85,25 @@ const repoConfigMock = {
6485
}
6586

6687
describe('Sunburst', () => {
67-
function setup({
68-
repoOverviewData,
69-
coverageTreeRes,
70-
coverageTreeStatus = 200,
71-
}) {
88+
function setup({ coverageTreeStatus = 200 }) {
7289
server.use(
7390
graphql.query('GetRepoOverview', () => {
74-
return HttpResponse.json({ data: repoOverviewData })
91+
return HttpResponse.json({ data: overviewMock })
7592
}),
7693
graphql.query('RepoConfig', () => {
7794
return HttpResponse.json({ data: repoConfigMock })
7895
}),
7996
http.get('/internal/:provider/:owner/:repo/coverage/tree', () => {
80-
return HttpResponse.json(
81-
{ data: coverageTreeRes },
82-
{ status: coverageTreeStatus }
83-
)
97+
return HttpResponse.json(treeMock, {
98+
status: coverageTreeStatus,
99+
})
84100
})
85101
)
86102
}
87103

88104
describe('successful call', () => {
89-
beforeEach(() => {
90-
setup({
91-
repoOverviewData: overviewMock,
92-
coverageTreeRes: treeMock,
93-
coverageTreeStatus: 200,
94-
})
95-
})
96-
97105
it('renders something', async () => {
106+
setup({ coverageTreeStatus: 200 })
98107
render(<Sunburst />, { wrapper })
99108

100109
const chart = await screen.findByText('Chart Mocked')
@@ -107,14 +116,10 @@ describe('Sunburst', () => {
107116
beforeEach(() => {
108117
// disable intentional error in vi log
109118
vi.spyOn(console, 'error').mockImplementation(() => {})
110-
111-
setup({
112-
repoOverviewData: overviewMock,
113-
coverageTreeStatus: 500,
114-
})
115119
})
116120

117121
it('renders something', async () => {
122+
setup({ repoOverviewData: overviewMock, coverageTreeStatus: 500 })
118123
render(<Sunburst />, { wrapper })
119124

120125
const chart = await screen.findByText(

src/pages/RepoPage/CoverageTab/OverviewTab/subroute/Sunburst/hooks/useSunburstChart.js

-43
This file was deleted.

0 commit comments

Comments
 (0)