Tengo varios componentes donde agregué un proveedor de análisis para rastrear el uso. En cada uno de estos, estoy usando un gancho useEffect e importando useAnalytics:
import { useAnalytics } from '@framework/component-analytics'; const { trackView } = useAnalytics(); useEffect(() => { trackView(`/liveTraffic`, 'liveTrafficPage'); }, [trackView]);También tengo un AnalyticsProvider en la raíz de la aplicación que pasa toda la configuración necesaria a los consumidores secundarios (es decir, useAnalytics).
Tengo un problema al ejecutar pruebas: 'useAnalytics' must be called from inside an '<AnalyticsProvider>', or must be provided with an 'eventManagerConfiguration' argument.
¿Cuál es la mejor manera de pasar el componente necesario y la configuración relacionada en mis pruebas? Soy bastante nuevo en React y tengo problemas para descubrir qué usar. He buscado envolver los componentes pero no funciona.
describe('has no liveTraffic list items', () => { const component = shallow(analyticsWrapper(<LiveTrafficPage {...props} />)); it('should NOT render LiveTrafficListing', () => { expect(component.update().find(LiveTrafficListing).length).toEqual(0); }); });