ai-content-maker/.venv/Lib/site-packages/numba/tests/test_nan.py

38 lines
751 B
Python

import unittest
from numba import jit
from numba.core import types
enable_pyobj_flags = {'forceobj': True}
no_pyobj_flags = {'nopython': True}
def isnan(x):
return x != x
def isequal(x):
return x == x
class TestNaN(unittest.TestCase):
def test_nans(self, flags=enable_pyobj_flags):
pyfunc = isnan
cfunc = jit((types.float64,), **flags)(pyfunc)
self.assertTrue(cfunc(float('nan')))
self.assertFalse(cfunc(1.0))
pyfunc = isequal
cfunc = jit((types.float64,), **flags)(pyfunc)
self.assertFalse(cfunc(float('nan')))
self.assertTrue(cfunc(1.0))
def test_nans_npm(self):
self.test_nans(flags=no_pyobj_flags)
if __name__ == '__main__':
unittest.main()