Каков правильный способ проверить, что функция не возвращает или не возвращает NaN. Рассмотрим:Правильное модульное тестирование против NaN с моккой и утверждение
require('assert');
var functionUnderTest = function() {
return NaN;
}
// mocha test for above function
describe('Function returning NaN', function() {
it('shall return NaN', function() {
assert.equal(functionUnderTest(), NaN); // AssertionError: NaN == NaN
assert.notEqual(functionUnderTest(), NaN); // No AssertionError
});
});
Я специально хочу, чтобы проверить, что функция не возвращает NaN. Я знаю, что IEEE754 указывает, что typeof NaN === "number" и он не равен самому (или любому другому числу), а Javascript реализует float точно так же, как определяет их IEEE754.
Но как проверить, что функция возвращает или не возвращает NaN?
Я нахожусь на Node.js. Благодарю. Это правильный ответ. – teroi