|
85 | 85 | marks=pytest.mark.xfail(reason="Implement binary finalize"),
|
86 | 86 | ),
|
87 | 87 | (pd.DataFrame, frame_data, operator.methodcaller("transpose")),
|
88 |
| - pytest.param( |
89 |
| - (pd.DataFrame, frame_data, operator.methodcaller("__getitem__", "A")), |
90 |
| - marks=not_implemented_mark, |
91 |
| - ), |
| 88 | + (pd.DataFrame, frame_data, operator.methodcaller("__getitem__", "A")), |
92 | 89 | (pd.DataFrame, frame_data, operator.methodcaller("__getitem__", ["A"])),
|
93 | 90 | (pd.DataFrame, frame_data, operator.methodcaller("__getitem__", np.array([True]))),
|
94 | 91 | (pd.DataFrame, ({("A", "a"): [1]},), operator.methodcaller("__getitem__", ["A"])),
|
95 | 92 | (pd.DataFrame, frame_data, operator.methodcaller("query", "A == 1")),
|
96 |
| - pytest.param( |
97 |
| - (pd.DataFrame, frame_data, operator.methodcaller("eval", "A + 1")), |
98 |
| - marks=not_implemented_mark, |
99 |
| - ), |
| 93 | + (pd.DataFrame, frame_data, operator.methodcaller("eval", "A + 1", engine="python")), |
100 | 94 | (pd.DataFrame, frame_data, operator.methodcaller("select_dtypes", include="int")),
|
101 | 95 | (pd.DataFrame, frame_data, operator.methodcaller("assign", b=1)),
|
102 | 96 | (pd.DataFrame, frame_data, operator.methodcaller("set_axis", ["A"])),
|
|
289 | 283 | ),
|
290 | 284 | (pd.DataFrame, frame_data, operator.methodcaller("swapaxes", 0, 1)),
|
291 | 285 | (pd.DataFrame, frame_mi_data, operator.methodcaller("droplevel", "A")),
|
292 |
| - pytest.param( |
293 |
| - (pd.DataFrame, frame_data, operator.methodcaller("pop", "A")), |
294 |
| - marks=not_implemented_mark, |
295 |
| - ), |
| 286 | + (pd.DataFrame, frame_data, operator.methodcaller("pop", "A")), |
296 | 287 | pytest.param(
|
297 | 288 | (pd.DataFrame, frame_data, operator.methodcaller("squeeze")),
|
298 | 289 | marks=not_implemented_mark,
|
|
317 | 308 | (pd.DataFrame, frame_data, operator.methodcaller("take", [0, 0])),
|
318 | 309 | (pd.DataFrame, frame_mi_data, operator.methodcaller("xs", "a")),
|
319 | 310 | (pd.Series, (1, mi), operator.methodcaller("xs", "a")),
|
320 |
| - pytest.param( |
321 |
| - (pd.DataFrame, frame_data, operator.methodcaller("get", "A")), |
322 |
| - marks=not_implemented_mark, |
323 |
| - ), |
| 311 | + (pd.DataFrame, frame_data, operator.methodcaller("get", "A")), |
324 | 312 | (
|
325 | 313 | pd.DataFrame,
|
326 | 314 | frame_data,
|
@@ -532,6 +520,15 @@ def test_finalize_called(ndframe_method):
|
532 | 520 | assert result.attrs == {"a": 1}
|
533 | 521 |
|
534 | 522 |
|
| 523 | +@not_implemented_mark |
| 524 | +def test_finalize_called_eval_numexpr(): |
| 525 | + pytest.importorskip("numexpr") |
| 526 | + df = pd.DataFrame({"A": [1, 2]}) |
| 527 | + df.attrs["A"] = 1 |
| 528 | + result = df.eval("A + 1", engine="numexpr") |
| 529 | + assert result.attrs == {"A": 1} |
| 530 | + |
| 531 | + |
535 | 532 | # ----------------------------------------------------------------------------
|
536 | 533 | # Binary operations
|
537 | 534 |
|
|
0 commit comments