From 01ee0a95df4c1aa7956b1acd5adadcb12bc33133 Mon Sep 17 00:00:00 2001 From: Con Date: Fri, 26 May 2023 15:32:14 -0400 Subject: [PATCH] TST: adds test for range_range index comparison --- .../indexes/datetimes/test_date_range.py | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/pandas/tests/indexes/datetimes/test_date_range.py b/pandas/tests/indexes/datetimes/test_date_range.py index f3f5d0dfd5ec1..1d6e7077de786 100644 --- a/pandas/tests/indexes/datetimes/test_date_range.py +++ b/pandas/tests/indexes/datetimes/test_date_range.py @@ -26,7 +26,9 @@ import pandas as pd from pandas import ( + DataFrame, DatetimeIndex, + Series, Timedelta, Timestamp, bdate_range, @@ -355,6 +357,34 @@ def test_date_range_convenience_periods(self): ) tm.assert_index_equal(result, expected) + def test_date_range_index_comparison(self): + rng = date_range("2011-01-01", periods=3, tz="US/Eastern") + df = Series(rng).to_frame() + arr = np.array([rng.to_list()]).T + arr2 = np.array([rng]).T + + with pytest.raises(ValueError, match="Unable to coerce to Series"): + rng == df + + with pytest.raises(ValueError, match="Unable to coerce to Series"): + df == rng + + expected = DataFrame([True, True, True]) + + results = df == arr2 + tm.assert_frame_equal(results, expected) + + expected = Series([True, True, True], name=0) + + results = df[0] == arr2[:, 0] + tm.assert_series_equal(results, expected) + + expected = np.array( + [[True, False, False], [False, True, False], [False, False, True]] + ) + results = rng == arr + tm.assert_numpy_array_equal(results, expected) + @pytest.mark.parametrize( "start,end,result_tz", [