Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

113
Views
La importación de la biblioteca BigDecimal no está definida cuando se ejecuta la prueba unitaria

Estoy tratando de probar un método de Efectos en Angular (NGRX) usando Jest. El archivo importa la biblioteca BigDecimal. Cuando ejecuto las pruebas, obtengo Cannot read property 'getPrettyValue' of undefined] , undefined se referiría al uso de BigDecimal. He intentado varias formas de importar BigDecimal en el archivo, pero aún no estoy definido, incluso cuando importo la biblioteca en el archivo de especificaciones. El uso de BigDecimal se mantiene en el archivo de servicio y solo el método que estoy probando hace referencia a él. ¿Podría haber algún problema con mi banco de pruebas o necesito definir la lib en un archivo de configuración en alguna parte? Aquí está mi configuración de banco de pruebas:

 beforeEach(() => { TestBed.configureTestingModule({ imports: [NxModule.forRoot(), HttpClientModule], providers: [ ControllerEffects, DataPersistence, provideMockActions(() => actions), provideMockStore(), { provide: ControllerService, useValue: { getResponse: jest.fn() } } ], declarations: [] }); service = TestBed.inject(ControllerService); effects = TestBed.inject(ControllerEffects); });

Y la prueba que está fallando debido a este error:

 it('should dispatch loadSuccess', () => { expect(service).toBeTruthy(); actions = hot('-a-|', { a: ControllerActions.loadAll({ IdFilter: ['id'] }) }); const outcome = controllerActions.loadControllerSuccess({ controller: pos }); const response = cold('-a|', { a: { data: pos, status: { code: 'SUCCESS' } } }); const expected = cold('--b|', { b: outcome }); service.getResponse = jest.fn(() => response); expect(effects.loadAll$).toBeObservable(expected); });

la referencia a BigDecimal en el archivo de efectos devuelve el valor formateado:

 import BigDecimal from 'js-big-decimal'; method(input): string { return { valueString: BigDecimal.getPrettyValue(input.valueString, 3, ',') } }

Cualquier ayuda es muy apreciada, ya he pasado mucho tiempo en esto.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!