Skip to content

Commit 3dc9102

Browse files
author
Jose Soto
committed
add tests for when isScientificServices is true and false
1 parent a766e3c commit 3dc9102

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

src/alerts/service-alerts.test.ts

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { asMockedFn, partial } from '@terra-ui-packages/test-utils';
22
import { FirecloudBucket, FirecloudBucketAjaxContract } from 'src/libs/ajax/firecloud/FirecloudBucket';
3+
import * as brandUtils from 'src/libs/brand-utils';
34

45
import { getServiceAlerts } from './service-alerts';
56

@@ -100,3 +101,55 @@ describe('getServiceAlerts', () => {
100101
expect(serviceAlerts.map((alert) => alert.severity)).toEqual(['error', 'warn', 'warn', 'info']);
101102
});
102103
});
104+
105+
describe('getServiceAlerts with brand variations', () => {
106+
beforeEach(() => {
107+
jest.clearAllMocks();
108+
});
109+
110+
it('calls getTeaspoonsServiceAlerts when isScientificServices is true', async () => {
111+
// Arrange
112+
const mockGetTeaspoonsServiceAlerts = jest.fn().mockReturnValue(Promise.resolve([]));
113+
const mockGetServiceAlerts = jest.fn().mockReturnValue(Promise.resolve([]));
114+
115+
asMockedFn(FirecloudBucket).mockReturnValue(
116+
partial<FirecloudBucketAjaxContract>({
117+
getTeaspoonsServiceAlerts: mockGetTeaspoonsServiceAlerts,
118+
getServiceAlerts: mockGetServiceAlerts,
119+
})
120+
);
121+
122+
// Mock isScientificServices to return true
123+
jest.spyOn(brandUtils, 'isScientificServices').mockReturnValue(true);
124+
125+
// Act
126+
await getServiceAlerts();
127+
128+
// Assert
129+
expect(mockGetTeaspoonsServiceAlerts).toHaveBeenCalled();
130+
expect(mockGetServiceAlerts).not.toHaveBeenCalled();
131+
});
132+
133+
it('calls getServiceAlerts when isScientificServices is false', async () => {
134+
// Arrange
135+
const mockGetTeaspoonsServiceAlerts = jest.fn().mockReturnValue(Promise.resolve([]));
136+
const mockGetServiceAlerts = jest.fn().mockReturnValue(Promise.resolve([]));
137+
138+
asMockedFn(FirecloudBucket).mockReturnValue(
139+
partial<FirecloudBucketAjaxContract>({
140+
getTeaspoonsServiceAlerts: mockGetTeaspoonsServiceAlerts,
141+
getServiceAlerts: mockGetServiceAlerts,
142+
})
143+
);
144+
145+
// Mock isScientificServices to return false
146+
jest.spyOn(brandUtils, 'isScientificServices').mockReturnValue(false);
147+
148+
// Act
149+
await getServiceAlerts();
150+
151+
// Assert
152+
expect(mockGetServiceAlerts).toHaveBeenCalled();
153+
expect(mockGetTeaspoonsServiceAlerts).not.toHaveBeenCalled();
154+
});
155+
});

0 commit comments

Comments
 (0)