Prueba de una función aislada de un componente en React Jest

votos
0

Soy bastante nuevo a burla ya la enzima y me encontré con un problema transversal:

Tengo un componente que hace que los niños y pide también un método de esos niños. Puedo lograr que mediante el uso de árbitros. Yo llamo a estas funciones algo como:

somefunction = () => {
   this.myReference.current.childFunction();
   this.doSomethingOther();
}    

Ahora quiero probar la función algunaFuncion . Quiero comprobar si el doSomethingOther función sea llamada. El uso de un poco profunda render no puedo lograr eso. La prueba tendría éxito si this.myReference.current.childFunction();no fue llamado. La broma no puede saberlo, ya que sólo hace poco profunda y por lo tanto genera un error.

Me puede faltar la comprensión completa. Me pregunto si alguien tiene una idea probar esta función sin necesidad de utilizar montura.

Publicado el 26/09/2018 a las 13:23
por usuario
En otros idiomas...                            


1 respuestas

votos
0

Echar un vistazo al siguiente código donde poco profunda rinde un componente y luego obtener la instancia de clase y se burlan de las funciones requeridas. Ahora, cuando llamamos algunaFuncion , comprobamos si doSomethingOther ha sido llamado. (Supuesto que está utilizando broma + enzima)

const wrapper = shallow(<Comp />);
const inst = wrapper.instance();
inst.myReference = {
    current: {
        childFunction: jest.fn()
    }
}
inst.doSomethingOther = jest.fn();
inst.somefunction();
expect(inst.doSomethingOther).toHaveBeenCalled();
Respondida el 26/09/2018 a las 13:42
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more