Erwarten Sie, dass sich ein Array von Gleitkommazahlen in der Nähe eines anderen Arrays in Jasmine befindet

8

Ich teste eine JavaScript-Funktion, die ein Array von Zahlen zurückgibt, um zu sehen, ob das zurückgegebene Array dieselben Elemente enthält wie das Array, das die erwartete Ausgabe enthält:

%Vor%

Dies funktioniert einwandfrei, wenn myArray und expectedArray nur Ganzzahlen enthalten, aber fehlschlagen, wenn mindestens ein Gleitkommawert vorhanden ist, aufgrund von Gleitkomma-Präzisionsfehlern. toBeCloseTo scheint auf Arrays nicht zu funktionieren.

Momentan mache ich eine Schleife, um die elementweise Überprüfung durchzuführen:

%Vor%

... aber gibt es einen saubereren Weg, dies zu tun? Wenn der Test aus irgendeinem Grund fehlschlägt, wird die Ausgabe mit einer schrecklichen Anzahl von Fehlermeldungen aufgebläht.

    
John Weisz 10.02.2016, 14:45
quelle

2 Antworten

6

Der folgende Code sollte Ihre Frage beantworten:

%Vor%     
Yas 09.08.2017 14:02
quelle
0

Versuchen Sie Folgendes:

%Vor%     
user67207 21.08.2017 15:56
quelle