Skip to content

Commit aac0e59

Browse files
authored
test(ui): Reset api mocks between EventDetails tests (#53497)
1 parent 4ceafc4 commit aac0e59

File tree

1 file changed

+29
-37
lines changed

1 file changed

+29
-37
lines changed

static/app/views/performance/transactionDetails/index.spec.tsx

+29-37
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,46 @@
1-
import {act, cleanup, render, screen} from 'sentry-test/reactTestingLibrary';
1+
import {act, render, screen} from 'sentry-test/reactTestingLibrary';
22

33
import ProjectsStore from 'sentry/stores/projectsStore';
4-
import {OrganizationContext} from 'sentry/views/organizationContext';
54
import EventDetails from 'sentry/views/performance/transactionDetails';
65

76
const alertText =
87
'You are viewing a sample transaction. Configure performance to start viewing real transactions.';
98

109
describe('EventDetails', () => {
11-
afterEach(cleanup);
10+
const project = TestStubs.Project();
11+
const organization = TestStubs.Organization({
12+
features: ['performance-view'],
13+
projects: [project],
14+
});
1215

13-
it('renders alert for sample transaction', async () => {
14-
const project = TestStubs.Project();
16+
beforeEach(() => {
1517
ProjectsStore.loadInitialData([project]);
16-
const organization = TestStubs.Organization({
17-
features: ['performance-view'],
18-
projects: [project],
19-
});
20-
const event = TestStubs.Event();
21-
event.tags.push({key: 'sample_event', value: 'yes'});
22-
const routerContext = TestStubs.routerContext([]);
23-
2418
MockApiClient.addMockResponse({
25-
url: `/projects/${organization.slug}/latest/events/1/grouping-info/`,
19+
url: `/organizations/${organization.slug}/projects/`,
2620
statusCode: 200,
27-
body: {},
21+
body: [],
2822
});
2923
MockApiClient.addMockResponse({
30-
url: `/organizations/${organization.slug}/projects/`,
24+
url: `/projects/${organization.slug}/latest/events/1/grouping-info/`,
3125
statusCode: 200,
32-
body: [],
26+
body: {},
3327
});
3428
MockApiClient.addMockResponse({
3529
url: `/projects/${organization.slug}/latest/events/1/committers/`,
3630
statusCode: 200,
3731
body: [],
3832
});
33+
});
34+
35+
afterEach(() => {
36+
ProjectsStore.reset();
37+
MockApiClient.clearMockResponses();
38+
});
39+
40+
it('renders alert for sample transaction', async () => {
41+
const event = TestStubs.Event();
42+
event.tags.push({key: 'sample_event', value: 'yes'});
43+
3944
MockApiClient.addMockResponse({
4045
url: `/organizations/${organization.slug}/events/latest/`,
4146
statusCode: 200,
@@ -45,14 +50,10 @@ describe('EventDetails', () => {
4550
});
4651

4752
render(
48-
<OrganizationContext.Provider value={organization}>
49-
<EventDetails
50-
{...TestStubs.routeComponentProps()}
51-
organization={organization}
52-
params={{eventSlug: 'latest'}}
53-
location={routerContext.context.location}
54-
/>
55-
</OrganizationContext.Provider>
53+
<EventDetails
54+
{...TestStubs.routeComponentProps({params: {eventSlug: 'latest'}})}
55+
/>,
56+
{organization}
5657
);
5758
expect(screen.getByText(alertText)).toBeInTheDocument();
5859

@@ -61,14 +62,7 @@ describe('EventDetails', () => {
6162
});
6263

6364
it('does not reender alert if already received transaction', async () => {
64-
const project = TestStubs.Project();
65-
ProjectsStore.loadInitialData([project]);
66-
const organization = TestStubs.Organization({
67-
features: ['performance-view'],
68-
projects: [project],
69-
});
7065
const event = TestStubs.Event();
71-
const routerContext = TestStubs.routerContext([]);
7266

7367
MockApiClient.addMockResponse({
7468
url: `/organizations/${organization.slug}/events/latest/`,
@@ -80,11 +74,9 @@ describe('EventDetails', () => {
8074

8175
render(
8276
<EventDetails
83-
{...TestStubs.routeComponentProps()}
84-
organization={organization}
85-
params={{eventSlug: 'latest'}}
86-
location={routerContext.context.location}
87-
/>
77+
{...TestStubs.routeComponentProps({params: {eventSlug: 'latest'}})}
78+
/>,
79+
{organization}
8880
);
8981
expect(screen.queryByText(alertText)).not.toBeInTheDocument();
9082

0 commit comments

Comments
 (0)