mirror of
https://github.com/langgenius/dify.git
synced 2026-05-06 10:28:10 +08:00
fix test
This commit is contained in:
@ -2,11 +2,15 @@ import type { InvitationResponse } from '@/models/common'
|
|||||||
import { fireEvent, render, screen, waitFor } from '@testing-library/react'
|
import { fireEvent, render, screen, waitFor } from '@testing-library/react'
|
||||||
import userEvent from '@testing-library/user-event'
|
import userEvent from '@testing-library/user-event'
|
||||||
import { vi } from 'vitest'
|
import { vi } from 'vitest'
|
||||||
import { ToastContext } from '@/app/components/base/toast/context'
|
import { toast } from '@/app/components/base/ui/toast'
|
||||||
import { useProviderContextSelector } from '@/context/provider-context'
|
import { useProviderContextSelector } from '@/context/provider-context'
|
||||||
import { inviteMember } from '@/service/common'
|
import { inviteMember } from '@/service/common'
|
||||||
import InviteModal from '../index'
|
import InviteModal from '../index'
|
||||||
|
|
||||||
|
const { mockToastError } = vi.hoisted(() => ({
|
||||||
|
mockToastError: vi.fn(),
|
||||||
|
}))
|
||||||
|
|
||||||
vi.mock('@/context/provider-context', () => ({
|
vi.mock('@/context/provider-context', () => ({
|
||||||
useProviderContextSelector: vi.fn(),
|
useProviderContextSelector: vi.fn(),
|
||||||
useProviderContext: vi.fn(() => ({
|
useProviderContext: vi.fn(() => ({
|
||||||
@ -14,6 +18,11 @@ vi.mock('@/context/provider-context', () => ({
|
|||||||
})),
|
})),
|
||||||
}))
|
}))
|
||||||
vi.mock('@/service/common')
|
vi.mock('@/service/common')
|
||||||
|
vi.mock('@/app/components/base/ui/toast', () => ({
|
||||||
|
toast: {
|
||||||
|
error: mockToastError,
|
||||||
|
},
|
||||||
|
}))
|
||||||
vi.mock('@/context/i18n', () => ({
|
vi.mock('@/context/i18n', () => ({
|
||||||
useLocale: () => 'en-US',
|
useLocale: () => 'en-US',
|
||||||
}))
|
}))
|
||||||
@ -37,7 +46,6 @@ describe('InviteModal', () => {
|
|||||||
const mockOnCancel = vi.fn()
|
const mockOnCancel = vi.fn()
|
||||||
const mockOnSend = vi.fn()
|
const mockOnSend = vi.fn()
|
||||||
const mockRefreshLicenseLimit = vi.fn()
|
const mockRefreshLicenseLimit = vi.fn()
|
||||||
const mockNotify = vi.fn()
|
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
vi.clearAllMocks()
|
vi.clearAllMocks()
|
||||||
@ -49,9 +57,7 @@ describe('InviteModal', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
const renderModal = (isEmailSetup = true) => render(
|
const renderModal = (isEmailSetup = true) => render(
|
||||||
<ToastContext.Provider value={{ notify: mockNotify, close: vi.fn() }}>
|
<InviteModal isEmailSetup={isEmailSetup} onCancel={mockOnCancel} onSend={mockOnSend} />,
|
||||||
<InviteModal isEmailSetup={isEmailSetup} onCancel={mockOnCancel} onSend={mockOnSend} />
|
|
||||||
</ToastContext.Provider>,
|
|
||||||
)
|
)
|
||||||
const fillEmails = (value: string) => {
|
const fillEmails = (value: string) => {
|
||||||
fireEvent.change(screen.getByTestId('mock-email-input'), { target: { value } })
|
fireEvent.change(screen.getByTestId('mock-email-input'), { target: { value } })
|
||||||
@ -143,10 +149,7 @@ describe('InviteModal', () => {
|
|||||||
fillEmails('invalid@email.c')
|
fillEmails('invalid@email.c')
|
||||||
await user.click(screen.getByRole('button', { name: /members\.sendInvite/i }))
|
await user.click(screen.getByRole('button', { name: /members\.sendInvite/i }))
|
||||||
|
|
||||||
expect(mockNotify).toHaveBeenCalledWith({
|
expect(toast.error).toHaveBeenCalledWith('common.members.emailInvalid')
|
||||||
type: 'error',
|
|
||||||
message: 'common.members.emailInvalid',
|
|
||||||
})
|
|
||||||
expect(inviteMember).not.toHaveBeenCalled()
|
expect(inviteMember).not.toHaveBeenCalled()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user