Tengo un componente que usa la featuretoggle-react para renderizar algunas cosas. Por ejemplo:
import { On, FeatureToggle } from "featuretoggle-react"; const MyComponent = () => { return ( <FeatureToggle feature="my_feature"> <On> // render whatever </On> </FeatureToggle> ) } Ahora estoy creando pruebas usando Jest para MyComponent . Un ejemplo es el siguiente:
import React from "react"; import { Provider } from "react-redux"; import { On, FeatureToggle } from "featuretoggle-react"; import { store } from "stores"; test("load my component", async () => { const mockComponent = () => <div></div>; jest.mock("featuretoggle-react", () => mockComponent); render( <Provider store={store}> <FeatureToggle feature="my_feature"> // error is signaled here <On> <MyComponent /> </On> </FeatureToggle> </Provider> ); // assert some stuff but there is an error returning above });Cuando ejecuto la prueba anterior, obtengo el error resultante como:
TypeError: no se puede leer la propiedad 'estado' de indefinido
Si comento <FeatureToggle feature="my_feature"> desde MyComponent (así como en la prueba), mis pruebas se ejecutan con éxito, por lo que me inclino a creer que se trata de un error debido a <FeatureToggle />
He intentado burlarme usando
const mockComponent = () => <div></div>; jest.mock("featuretoggle-react", () => mockComponent);pero sigo teniendo el mismo error.
EDITAR: incluso si no me burlo featuretoggle-react , sigo recibiendo el mismo error.