Skip to content

Commit 39cbe2d

Browse files
committed
split Layout.test.tsx in three files
1 parent 283bace commit 39cbe2d

File tree

3 files changed

+34
-31
lines changed

3 files changed

+34
-31
lines changed

test/components/Layout.test.tsx

Lines changed: 2 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
import { render } from '@testing-library/react'
22
import React from 'react'
3-
import { describe, expect, it, vi } from 'vitest'
4-
import { Layout, Spinner, cn } from '../../src/index.js'
5-
6-
vi.mock('next-auth/react', () => ({ signOut: vi.fn(), useSession: vi.fn() }))
7-
vi.mock('next/link', () => ({ default: vi.fn() }))
3+
import { describe, expect, it } from 'vitest'
4+
import { Layout } from '../../src/index.js'
85

96
describe('Layout Component', () => {
107
it('renders children', () => {
@@ -29,29 +26,3 @@ describe('Layout Component', () => {
2926
expect(getByText('Error: Test Error')).toBeDefined()
3027
})
3128
})
32-
33-
describe('Classname function', () => {
34-
it('joins class names correctly', () => {
35-
expect(cn('class1', 'class2')).toBe('class1 class2')
36-
})
37-
38-
it('ignores undefined and false values', () => {
39-
expect(cn('class1', undefined, 'class2', false)).toBe('class1 class2')
40-
})
41-
42-
it('returns empty string if no valid class names', () => {
43-
expect(cn(undefined, false)).toBe('')
44-
})
45-
46-
it('handles single class name', () => {
47-
expect(cn('class1')).toBe('class1')
48-
})
49-
})
50-
51-
describe('Spinner Component', () => {
52-
it('renders with base and additional class names', () => {
53-
const { container } = render(<Spinner className="extra" />)
54-
expect(container.firstElementChild?.classList).toContain('spinner')
55-
expect(container.firstElementChild?.classList).toContain('extra')
56-
})
57-
})

test/components/Spinner.test.tsx

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { render } from '@testing-library/react'
2+
import React from 'react'
3+
import { describe, expect, it } from 'vitest'
4+
import { Spinner } from '../../src/index.js'
5+
6+
describe('Spinner Component', () => {
7+
it('renders with base and additional class names', () => {
8+
const { container } = render(<Spinner className="extra" />)
9+
expect(container.firstElementChild?.classList).toContain('spinner')
10+
expect(container.firstElementChild?.classList).toContain('extra')
11+
})
12+
})

test/lib/utils.test.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { describe, expect, it } from 'vitest'
2+
import { cn } from '../../src/index.js'
3+
4+
describe('Classname function', () => {
5+
it('joins class names correctly', () => {
6+
expect(cn('class1', 'class2')).toBe('class1 class2')
7+
})
8+
9+
it('ignores undefined and false values', () => {
10+
expect(cn('class1', undefined, 'class2', false)).toBe('class1 class2')
11+
})
12+
13+
it('returns empty string if no valid class names', () => {
14+
expect(cn(undefined, false)).toBe('')
15+
})
16+
17+
it('handles single class name', () => {
18+
expect(cn('class1')).toBe('class1')
19+
})
20+
})

0 commit comments

Comments
 (0)