diff --git a/src/__mocks__/partial-mocks.ts b/src/__mocks__/partial-mocks.ts index aefbbe9be..2d6023a8f 100644 --- a/src/__mocks__/partial-mocks.ts +++ b/src/__mocks__/partial-mocks.ts @@ -1,3 +1,4 @@ +import type { Hostname, Link } from '../types'; import type { Notification, Subject, User } from '../typesGitHub'; import Constants from '../utils/constants'; import { mockGitifyUser, mockToken } from './state-mocks'; @@ -9,7 +10,7 @@ export function partialMockNotification( account: { method: 'Personal Access Token', platform: 'GitHub Cloud', - hostname: Constants.GITHUB_API_BASE_URL, + hostname: Constants.GITHUB_API_BASE_URL as Hostname, token: mockToken, user: mockGitifyUser, }, @@ -22,8 +23,8 @@ export function partialMockNotification( export function partialMockUser(login: string): User { const mockUser: Partial = { login: login, - html_url: `https://github.com/${login}`, - avatar_url: 'https://avatars.githubusercontent.com/u/583231?v=4', + html_url: `https://github.com/${login}` as Link, + avatar_url: 'https://avatars.githubusercontent.com/u/583231?v=4' as Link, type: 'User', }; diff --git a/src/__mocks__/state-mocks.ts b/src/__mocks__/state-mocks.ts index e8828d638..cc2848e69 100644 --- a/src/__mocks__/state-mocks.ts +++ b/src/__mocks__/state-mocks.ts @@ -3,16 +3,18 @@ import { type AuthState, type GitifyState, type GitifyUser, + type Hostname, type SettingsState, Theme, + type Token, } from '../types'; import type { EnterpriseAccount } from '../utils/auth/types'; import Constants from '../utils/constants'; export const mockEnterpriseAccounts: EnterpriseAccount[] = [ { - hostname: 'github.gitify.io', - token: '1234568790', + hostname: 'github.gitify.io' as Hostname, + token: '1234568790' as Token, }, ]; @@ -25,7 +27,7 @@ export const mockGitifyUser: GitifyUser = { export const mockPersonalAccessTokenAccount: Account = { platform: 'GitHub Cloud', method: 'Personal Access Token', - token: 'token-123-456', + token: 'token-123-456' as Token, hostname: Constants.DEFAULT_AUTH_OPTIONS.hostname, user: mockGitifyUser, }; @@ -33,15 +35,15 @@ export const mockPersonalAccessTokenAccount: Account = { export const mockOAuthAccount: Account = { platform: 'GitHub Enterprise Server', method: 'OAuth App', - token: '1234568790', - hostname: 'github.gitify.io', + token: '1234568790' as Token, + hostname: 'github.gitify.io' as Hostname, user: mockGitifyUser, }; export const mockGitHubCloudAccount: Account = { platform: 'GitHub Cloud', method: 'Personal Access Token', - token: 'token-123-456', + token: 'token-123-456' as Token, hostname: Constants.DEFAULT_AUTH_OPTIONS.hostname, user: mockGitifyUser, }; @@ -49,15 +51,15 @@ export const mockGitHubCloudAccount: Account = { export const mockGitHubEnterpriseServerAccount: Account = { platform: 'GitHub Enterprise Server', method: 'Personal Access Token', - token: '1234568790', - hostname: 'github.gitify.io', + token: '1234568790' as Token, + hostname: 'github.gitify.io' as Hostname, user: mockGitifyUser, }; export const mockGitHubAppAccount: Account = { platform: 'GitHub Cloud', method: 'GitHub App', - token: '987654321', + token: '987654321' as Token, hostname: Constants.DEFAULT_AUTH_OPTIONS.hostname, user: mockGitifyUser, }; @@ -66,7 +68,7 @@ export const mockAuth: AuthState = { accounts: [mockGitHubCloudAccount, mockGitHubEnterpriseServerAccount], }; -export const mockToken = 'token-123-456'; +export const mockToken = 'token-123-456' as Token; export const mockSettings: SettingsState = { participating: false, diff --git a/src/components/NotificationRow.test.tsx b/src/components/NotificationRow.test.tsx index 99f249a5a..0473aa2c5 100644 --- a/src/components/NotificationRow.test.tsx +++ b/src/components/NotificationRow.test.tsx @@ -5,6 +5,7 @@ import { mockSettings, } from '../__mocks__/state-mocks'; import { AppContext } from '../context/App'; +import type { Link } from '../types'; import type { Milestone, UserType } from '../typesGitHub'; import { mockSingleNotification } from '../utils/api/__mocks__/response-mocks'; import * as comms from '../utils/comms'; @@ -473,9 +474,9 @@ describe('components/NotificationRow.tsx', () => { ...mockSingleNotification.subject, user: { login: 'some-user', - html_url: 'https://github.com/some-user', + html_url: 'https://github.com/some-user' as Link, avatar_url: - 'https://avatars.githubusercontent.com/u/123456789?v=4', + 'https://avatars.githubusercontent.com/u/123456789?v=4' as Link, type: 'User' as UserType, }, reviews: null, diff --git a/src/components/Repository.test.tsx b/src/components/Repository.test.tsx index 5cf5dde2e..cf2fa7764 100644 --- a/src/components/Repository.test.tsx +++ b/src/components/Repository.test.tsx @@ -1,6 +1,7 @@ import { fireEvent, render, screen } from '@testing-library/react'; import { mockGitHubCloudAccount } from '../__mocks__/state-mocks'; import { AppContext } from '../context/App'; +import type { Link } from '../types'; import { mockGitHubNotifications, mockSingleNotification, @@ -81,7 +82,7 @@ describe('components/Repository.tsx', () => { }); it('should use default repository icon when avatar is not available', () => { - props.repoNotifications[0].repository.owner.avatar_url = ''; + props.repoNotifications[0].repository.owner.avatar_url = '' as Link; const tree = render( diff --git a/src/components/fields/Button.test.tsx b/src/components/fields/Button.test.tsx index e0472eb46..677f24092 100644 --- a/src/components/fields/Button.test.tsx +++ b/src/components/fields/Button.test.tsx @@ -1,6 +1,7 @@ import { MarkGithubIcon } from '@primer/octicons-react'; import { fireEvent, render, screen } from '@testing-library/react'; import { shell } from 'electron'; +import type { Link } from '../../types'; import { Button, type IButton } from './Button'; describe('components/fields/Button.tsx', () => { @@ -27,7 +28,7 @@ describe('components/fields/Button.tsx', () => { }); it('should render with url', () => { - render(