diff --git a/pandas/tests/series/methods/test_compare.py b/pandas/tests/series/methods/test_compare.py index 2eae0e778f156..2a57d5139b62c 100644 --- a/pandas/tests/series/methods/test_compare.py +++ b/pandas/tests/series/methods/test_compare.py @@ -1,8 +1,3 @@ -from enum import ( - Enum, - auto, -) - import numpy as np import pytest @@ -143,61 +138,3 @@ def test_compare_datetime64_and_string(): tm.assert_series_equal(result_eq1, expected_eq) tm.assert_series_equal(result_eq2, expected_eq) tm.assert_series_equal(result_neq, expected_neq) - - -def test_eq_objects(): - # GH#62191 Test eq with Enum and List elements - - class Thing(Enum): - FIRST = auto() - SECOND = auto() - - left = pd.Series([Thing.FIRST, Thing.SECOND]) - py_l = [Thing.FIRST, Thing.SECOND] - - result = left.eq(Thing.FIRST) - expected = pd.Series([True, False]) - tm.assert_series_equal(result, expected) - - result = left.eq(py_l) - expected = pd.Series([True, True]) - tm.assert_series_equal(result, expected) - - result = left.eq(np.asarray(py_l)) - expected = pd.Series([True, True]) - tm.assert_series_equal(result, expected) - - result = left.eq(pd.Series(py_l)) - expected = pd.Series([True, True]) - tm.assert_series_equal(result, expected) - - result = pd.Series([[1, 2], [3, 4]]).eq([1, 2]) - expected = pd.Series([True, False]) - with pytest.raises(AssertionError): - tm.assert_series_equal(result, expected) - expected = pd.Series([False, False]) - tm.assert_series_equal(result, expected) - - -def test_eq_with_index(): - # GH#62191 Test eq with non-trivial indices - left = pd.Series([1, 2], index=[1, 0]) - py_l = [1, 2] - - # assuming Python list has the same index as the Series - result = left.eq(py_l) - expected = pd.Series([True, True], index=[1, 0]) - tm.assert_series_equal(result, expected) - - # assuming np.ndarray has the same index as the Series - result = left.eq(np.asarray(py_l)) - expected = pd.Series([True, True], index=[1, 0]) - tm.assert_series_equal(result, expected) - - result = left.eq(pd.Series(py_l)) - expected = pd.Series([False, False]) - tm.assert_series_equal(result, expected) - - result = left.eq(pd.Series([2, 1])) - expected = pd.Series([True, True]) - tm.assert_series_equal(result, expected) diff --git a/pandas/tests/series/test_arithmetic.py b/pandas/tests/series/test_arithmetic.py index 8b6ab5f18dee1..29a65f004f247 100644 --- a/pandas/tests/series/test_arithmetic.py +++ b/pandas/tests/series/test_arithmetic.py @@ -4,6 +4,10 @@ timezone, ) from decimal import Decimal +from enum import ( + Enum, + auto, +) import operator import numpy as np @@ -426,6 +430,62 @@ def test_comparison_flex_alignment_fill(self, values, op, fill_value): expected = Series(values, index=list("abcd")) tm.assert_series_equal(result, expected) + def test_eq_objects(self) -> None: + # GH#62191 Test eq with Enum and List elements + + class Thing(Enum): + FIRST = auto() + SECOND = auto() + + left = Series([Thing.FIRST, Thing.SECOND]) + py_l = [Thing.FIRST, Thing.SECOND] + + result = left.eq(Thing.FIRST) + expected = Series([True, False]) + tm.assert_series_equal(result, expected) + + result = left.eq(py_l) + expected = Series([True, True]) + tm.assert_series_equal(result, expected) + + result = left.eq(np.asarray(py_l)) + expected = Series([True, True]) + tm.assert_series_equal(result, expected) + + result = left.eq(Series(py_l)) + expected = Series([True, True]) + tm.assert_series_equal(result, expected) + + result = Series([[1, 2], [3, 4]]).eq([1, 2]) + expected = Series([True, False]) + with pytest.raises(AssertionError): + tm.assert_series_equal(result, expected) + expected = Series([False, False]) + tm.assert_series_equal(result, expected) + + def test_eq_with_index(self) -> None: + # GH#62191 Test eq with non-trivial indices + left = Series([1, 2], index=[1, 0]) + py_l = [1, 2] + + # assuming Python list has the same index as the Series + result = left.eq(py_l) + expected = Series([True, True], index=[1, 0]) + tm.assert_series_equal(result, expected) + + # assuming np.ndarray has the same index as the Series + result = left.eq(np.asarray(py_l)) + expected = Series([True, True], index=[1, 0]) + tm.assert_series_equal(result, expected) + + result = left.eq(Series(py_l)) + expected = Series([False, False]) + tm.assert_series_equal(result, expected) + + result = left.eq(Series([2, 1])) + expected = Series([True, True]) + tm.assert_series_equal(result, expected) + class TestSeriesComparison: def test_comparison_different_length(self):