Estoy tratando de escribir pruebas unitarias para métodos de clase con jest (nuevo en broma). Tengo métodos que, por ejemplo, toman matrices, las modifican y las transforman en formas diferentes para satisfacer las necesidades del algoritmo. Pero no veo una manera de cómo simplemente puedo probar el método de clase recibiendo y devolviendo valores. Parece que hay un problema con las clases, los métodos de clase no se pueden probar como funciones simples. Pero si miro los documentos, no veo que cubra estos temas, solo cubre, por ejemplo, se llamó una instancia de clase, se llamó un método de clase ...
Editado: este es mi ejemplo de código
import MyClass from "../MyClass.js"; // mocked data const inputArrayMock=[{someObject}] const outputArrayMock=[{modifiedObject}] test("test MyClass method a", () => { const obj = new MyClass(); const result = obj.methodA(inputArrayMock); expect(result).toEqual(outputArrayMock); });Acabo de ejecutar mi código nuevamente, arroja el error:
Received: {Symbol(async_id_symbol): 293, Symbol(trigger_async_id_symbol): 281, Symbol(destroyed): {"destroyed": false}}Nota: Ambas matrices (valores de entrada y salida) las escribí como datos simulados. La matriz esperada es correcta, pero la recibida no, lo que arroja el error.
Sin conocer su código, solo puedo adivinar.
import MyClass from "../MyClass.js"; test("your test name", () => { const obj = new MyClass(); const result = obj.theMethodYouWantToCheck(); expect(result).toBe("the desired result"); });