diff --git a/frontend/__tests__/unit/components/ModeToggle.test.tsx b/frontend/__tests__/unit/components/ModeToggle.test.tsx index 6156d3a63a..b5fd4fdff1 100644 --- a/frontend/__tests__/unit/components/ModeToggle.test.tsx +++ b/frontend/__tests__/unit/components/ModeToggle.test.tsx @@ -23,6 +23,23 @@ jest.mock('@heroui/tooltip', () => ({ Tooltip: ({ children }: React.PropsWithChildren) => <>{children}>, })) +jest.mock('@fortawesome/react-fontawesome', () => ({ + FontAwesomeIcon: ({ icon, className }: { icon: { iconName?: string }; className?: string }) => ( + + ), +})) + +jest.mock('components/icons/Sun', () => ({ + __esModule: true, + default: ({ className }: { className?: string }) => ( + + ), +})) + const useThemeMock = useTheme as jest.Mock describe('ModeToggle Component', () => { diff --git a/frontend/jest.config.ts b/frontend/jest.config.ts index 23048d8e9b..d3adbeeccf 100644 --- a/frontend/jest.config.ts +++ b/frontend/jest.config.ts @@ -8,6 +8,7 @@ const config: Config = { '!src/app/**/layout.tsx', '!src/app/api/**', '!src/app/board/**', + '!src/components/icons/**', '!src/app/my/**', '!src/app/settings/**', '!src/components/Mentee*.tsx', diff --git a/frontend/src/components/ModeToggle.tsx b/frontend/src/components/ModeToggle.tsx index 65965c56e0..a6c8b6fde1 100644 --- a/frontend/src/components/ModeToggle.tsx +++ b/frontend/src/components/ModeToggle.tsx @@ -1,9 +1,11 @@ -import { faMoon, faSun } from '@fortawesome/free-regular-svg-icons' +import { faMoon } from '@fortawesome/free-regular-svg-icons' import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import { Button } from '@heroui/button' import { Tooltip } from '@heroui/tooltip' import { useTheme } from 'next-themes' import { useState, useEffect } from 'react' +import Sun from 'components/icons/Sun' + export default function ModeToggle() { const [mounted, setMounted] = useState(false) const { theme, setTheme } = useTheme() @@ -27,11 +29,15 @@ export default function ModeToggle() { aria-label={theme === 'dark' ? 'Enable light mode' : 'Enable dark mode'} >