Inzynierka/Lib/site-packages/pandas/tests/computation/test_compat.py
2023-06-02 12:51:02 +02:00

33 lines
871 B
Python

import pytest
from pandas.compat._optional import VERSIONS
import pandas as pd
from pandas.core.computation import expr
from pandas.core.computation.engines import ENGINES
from pandas.util.version import Version
def test_compat():
# test we have compat with our version of numexpr
from pandas.core.computation.check import NUMEXPR_INSTALLED
ne = pytest.importorskip("numexpr")
ver = ne.__version__
if Version(ver) < Version(VERSIONS["numexpr"]):
assert not NUMEXPR_INSTALLED
else:
assert NUMEXPR_INSTALLED
@pytest.mark.parametrize("engine", ENGINES)
@pytest.mark.parametrize("parser", expr.PARSERS)
def test_invalid_numexpr_version(engine, parser):
if engine == "numexpr":
pytest.importorskip("numexpr")
a, b = 1, 2 # noqa:F841
res = pd.eval("a + b", engine=engine, parser=parser)
assert res == 3