Skip to content

Commit 26b277c

Browse files
committed
Merge branch 'main' into feat/count-unread-only
Signed-off-by: Adam Setch <[email protected]>
1 parent bedd6dc commit 26b277c

File tree

1 file changed

+54
-135
lines changed

1 file changed

+54
-135
lines changed
Lines changed: 54 additions & 135 deletions
Original file line numberDiff line numberDiff line change
@@ -1,135 +1,54 @@
1-
// import { waitFor } from '@testing-library/react';
2-
3-
// import {
4-
// mockAccountNotifications,
5-
// mockSingleAccountNotifications,
6-
// } from '../../__mocks__/notifications-mocks';
7-
// import { mockAuth } from '../../__mocks__/state-mocks';
8-
// import { defaultSettings } from '../../context/defaults';
9-
// import type { SettingsState } from '../../types';
10-
// import * as native from './native';
11-
12-
// const raiseSoundNotificationMock = jest.spyOn(native, 'raiseSoundNotification');
13-
14-
// describe('renderer/utils/notifications/native.ts', () => {
15-
// afterEach(() => {
16-
// jest.clearAllMocks();
17-
// });
18-
19-
// describe('triggerNativeNotifications', () => {
20-
// it('should raise a native notification and play sound for a single new notification', async () => {
21-
// const settings: SettingsState = {
22-
// ...defaultSettings,
23-
// playSound: true,
24-
// showNotifications: true,
25-
// };
26-
27-
// native.triggerNativeNotifications([], mockSingleAccountNotifications, {
28-
// auth: mockAuth,
29-
// settings,
30-
// });
31-
32-
// // wait for async native handling (generateGitHubWebUrl) to complete
33-
// await waitFor(() =>
34-
// expect(window.gitify.raiseNativeNotification).toHaveBeenCalledTimes(1),
35-
// );
36-
37-
// expect(window.gitify.raiseNativeNotification).toHaveBeenCalledWith(
38-
// expect.stringContaining(
39-
// mockSingleAccountNotifications[0].notifications[0].repository
40-
// .full_name,
41-
// ),
42-
// expect.stringContaining(
43-
// mockSingleAccountNotifications[0].notifications[0].subject.title,
44-
// ),
45-
// expect.stringContaining(
46-
// mockSingleAccountNotifications[0].notifications[0].repository
47-
// .html_url,
48-
// ),
49-
// );
50-
51-
// await waitFor(() =>
52-
// expect(raiseSoundNotificationMock).toHaveBeenCalledTimes(1),
53-
// );
54-
// expect(raiseSoundNotificationMock).toHaveBeenCalledWith(0.2);
55-
// });
56-
57-
// it('should raise a native notification and play sound for multiple new notifications', async () => {
58-
// const settings: SettingsState = {
59-
// ...defaultSettings,
60-
// playSound: true,
61-
// showNotifications: true,
62-
// };
63-
64-
// native.triggerNativeNotifications([], mockAccountNotifications, {
65-
// auth: mockAuth,
66-
// settings,
67-
// });
68-
69-
// await waitFor(() =>
70-
// expect(window.gitify.raiseNativeNotification).toHaveBeenCalledTimes(1),
71-
// );
72-
73-
// expect(window.gitify.raiseNativeNotification).toHaveBeenCalledWith(
74-
// 'Gitify',
75-
// 'You have 4 notifications',
76-
// null,
77-
// );
78-
79-
// await waitFor(() =>
80-
// expect(raiseSoundNotificationMock).toHaveBeenCalledTimes(1),
81-
// );
82-
// expect(raiseSoundNotificationMock).toHaveBeenCalledWith(0.2);
83-
// });
84-
85-
// it('should not raise a native notification or play a sound when there are no new notifications', () => {
86-
// const settings: SettingsState = {
87-
// ...defaultSettings,
88-
// playSound: true,
89-
// showNotifications: true,
90-
// };
91-
92-
// native.triggerNativeNotifications(
93-
// mockSingleAccountNotifications,
94-
// mockSingleAccountNotifications,
95-
// {
96-
// auth: mockAuth,
97-
// settings,
98-
// },
99-
// );
100-
101-
// expect(window.gitify.raiseNativeNotification).not.toHaveBeenCalled();
102-
// expect(raiseSoundNotificationMock).not.toHaveBeenCalled();
103-
// });
104-
105-
// it('should not raise a native notification or play a sound when there are zero notifications', () => {
106-
// const settings: SettingsState = {
107-
// ...defaultSettings,
108-
// playSound: true,
109-
// showNotifications: true,
110-
// };
111-
112-
// native.triggerNativeNotifications([], [], {
113-
// auth: mockAuth,
114-
// settings,
115-
// });
116-
117-
// expect(window.gitify.raiseNativeNotification).not.toHaveBeenCalled();
118-
// expect(raiseSoundNotificationMock).not.toHaveBeenCalled();
119-
// });
120-
121-
// it('should not raise a native notification when setting disabled', () => {
122-
// const settings: SettingsState = {
123-
// ...defaultSettings,
124-
// showNotifications: false,
125-
// };
126-
127-
// native.triggerNativeNotifications([], mockAccountNotifications, {
128-
// auth: mockAuth,
129-
// settings,
130-
// });
131-
132-
// expect(window.gitify.raiseNativeNotification).not.toHaveBeenCalled();
133-
// });
134-
// });
135-
// });
1+
import { waitFor } from '@testing-library/react';
2+
3+
import {
4+
mockAccountNotifications,
5+
mockSingleAccountNotifications,
6+
} from '../../__mocks__/notifications-mocks';
7+
import * as native from './native';
8+
9+
describe('renderer/utils/notifications/native.ts', () => {
10+
afterEach(() => {
11+
jest.clearAllMocks();
12+
});
13+
14+
describe('triggerNativeNotifications', () => {
15+
it('should raise a native notification for a single new notification', async () => {
16+
native.raiseNativeNotification(
17+
mockSingleAccountNotifications[0].notifications,
18+
);
19+
20+
// wait for async native handling (generateGitHubWebUrl) to complete
21+
await waitFor(() =>
22+
expect(window.gitify.raiseNativeNotification).toHaveBeenCalledTimes(1),
23+
);
24+
25+
expect(window.gitify.raiseNativeNotification).toHaveBeenCalledWith(
26+
expect.stringContaining(
27+
mockSingleAccountNotifications[0].notifications[0].repository
28+
.full_name,
29+
),
30+
expect.stringContaining(
31+
mockSingleAccountNotifications[0].notifications[0].subject.title,
32+
),
33+
expect.stringContaining(
34+
mockSingleAccountNotifications[0].notifications[0].repository
35+
.html_url,
36+
),
37+
);
38+
});
39+
40+
it('should raise a native notification for multiple new notifications', async () => {
41+
native.raiseNativeNotification(mockAccountNotifications[0].notifications);
42+
43+
await waitFor(() =>
44+
expect(window.gitify.raiseNativeNotification).toHaveBeenCalledTimes(1),
45+
);
46+
47+
expect(window.gitify.raiseNativeNotification).toHaveBeenCalledWith(
48+
'Gitify',
49+
'You have 2 notifications',
50+
null,
51+
);
52+
});
53+
});
54+
});

0 commit comments

Comments
 (0)