/**
 * Mocks globaux pour les tests
 * Centralise tous les mocks communs utilisés dans les tests
 */

import { vi } from 'vitest';

/**
 * Mock pour useToast hook
 * Retourne les fonctions success et error comme dans le vrai hook
 */
export const createMockUseToast = () => {
  const mockShowSuccess = vi.fn();
  const mockShowError = vi.fn();

  return {
    useToast: () => ({
      success: mockShowSuccess,
      error: mockShowError,
      toast: vi.fn(), // Pour compatibilité avec d'autres usages
    }),
    mockShowSuccess,
    mockShowError,
  };
};

/**
 * Helper pour wrapper un composant avec Router
 */
export const withRouter = (component: React.ReactElement) => {
  const { BrowserRouter } = require('react-router-dom');
  return <BrowserRouter>{component}</BrowserRouter>;
};
