Skip to content

Утилиты для тестирования

ts
import { createMockToast, mockUseToast } from 'vue-toast-kit/testing'

Совместимо с Vitest и Jest.

Функции

createMockToast(overrides?)

(overrides?: Partial<ToastItem> & { options?: Partial<ToastOptions> }) => ToastItem

Создаёт минимальную заглушку ToastItem для юнит-тестов — полезно при тестировании компонента, который рендерит ToastItem напрямую (например, кастомную реализацию слота #toast), без прохождения через настоящий ToastQueue.

mockUseToast(overrides?)

(overrides?: Partial<ToastApi>) => ToastApi

Создаёт удобный для spy-проверок мок ToastApi, возвращаемого useToast(). Все методы — no-op, возвращающие пустые строки, если не переопределены.

Примеры

Мокирование useToast() в тесте компонента:

ts
import { createMockToast, mockUseToast } from 'vue-toast-kit/testing'

// В тесте Vitest / Jest:
describe('MyComponent', () => {
  it('calls toast.success on save', async () => {
    const mockToast = mockUseToast()
    vi.mock('vue-toast-kit', () => ({ useToast: () => mockToast }))

    // рендерим компонент, вызываем save…

    expect(mockToast.success).toHaveBeenCalledWith('Saved!')
  })
})

Создание минимальной заглушки ToastItem:

ts
const item = createMockToast({
  message: 'Upload complete',
  options: { type: 'success', duration: 3000 },
})