Skip to content

Commit bd1d241

Browse files
committed
chore: refactor the tests
1 parent 20b5645 commit bd1d241

File tree

3 files changed

+7
-2
lines changed

3 files changed

+7
-2
lines changed

src/features/theme/components/theme-toggle.test.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@ import { describe, it, expect } from 'vitest'
22
import { render, waitFor } from '@/tests/testing-library'
33
import { ThemeToggle } from '@/features/theme/components/theme-toggle'
44
import { executeComponentTest } from '@/tests/test-component'
5+
import { themeConstants } from '../constant'
56

67
describe('when the theme is toggled to dark', () => {
78
it('the theme is set to dark', async () => {
89
return executeComponentTest(
910
() => render(<ThemeToggle />),
1011
async (component, user) => {
11-
user.click(await component.findByTestId('theme-toggle-menu'))
12+
user.click(await component.findByRole('button', { name: themeConstants.toggleButtonName }))
1213
user.click(await component.findByText('Dark'))
1314

1415
await waitFor(() => expect(document.documentElement.classList.contains('dark')).toBe(true))

src/features/theme/components/theme-toggle.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,15 @@ import { Moon, Sun } from 'lucide-react'
33
import { Button } from '@/features/common/components/button'
44
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from '@/features/common/components/dropdown-menu'
55
import { useTheme } from '../hooks/use-theme'
6+
import { themeConstants } from '../constant'
67

78
export function ThemeToggle() {
89
const { setTheme } = useTheme()
910

1011
return (
1112
<DropdownMenu>
1213
<DropdownMenuTrigger asChild>
13-
<Button variant="default" size="icon" data-testid="theme-toggle-menu">
14+
<Button variant="default" size="icon" aria-label={themeConstants.toggleButtonName}>
1415
<Sun className="size-[1.2rem] rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0" />
1516
<Moon className="absolute size-[1.2rem] rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100" />
1617
<span className="sr-only">Toggle theme</span>

src/features/theme/constant.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export const themeConstants = {
2+
toggleButtonName: 'Toggle theme',
3+
}

0 commit comments

Comments
 (0)