Skip to content

Commit 3f6b08b

Browse files
authored
TST: Clean / make tests more performant (pandas-dev#56108)
CLN: Tests
1 parent 05c32ba commit 3f6b08b

File tree

4 files changed

+19
-10
lines changed

4 files changed

+19
-10
lines changed

pandas/core/arrays/datetimes.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,9 @@
9090
from pandas.core.arrays import PeriodArray
9191

9292

93+
_ITER_CHUNKSIZE = 10_000
94+
95+
9396
def tz_to_dtype(
9497
tz: tzinfo | None, unit: str = "ns"
9598
) -> np.dtype[np.datetime64] | DatetimeTZDtype:
@@ -654,7 +657,7 @@ def __iter__(self) -> Iterator:
654657
# convert in chunks of 10k for efficiency
655658
data = self.asi8
656659
length = len(self)
657-
chunksize = 10000
660+
chunksize = _ITER_CHUNKSIZE
658661
chunks = (length // chunksize) + 1
659662

660663
for i in range(chunks):

pandas/tests/indexes/datetimes/test_iter.py

+12-7
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
date_range,
88
to_datetime,
99
)
10+
from pandas.core.arrays import datetimes
1011

1112

1213
class TestDatetimeIndexIteration:
@@ -59,13 +60,17 @@ def test_iteration_preserves_tz3(self):
5960
assert result._repr_base == expected._repr_base
6061
assert result == expected
6162

62-
@pytest.mark.parametrize("periods", [0, 9999, 10000, 10001])
63-
def test_iteration_over_chunksize(self, periods):
63+
@pytest.mark.parametrize("offset", [-5, -1, 0, 1])
64+
def test_iteration_over_chunksize(self, offset, monkeypatch):
6465
# GH#21012
65-
66-
index = date_range("2000-01-01 00:00:00", periods=periods, freq="min")
66+
chunksize = 5
67+
index = date_range(
68+
"2000-01-01 00:00:00", periods=chunksize - offset, freq="min"
69+
)
6770
num = 0
68-
for stamp in index:
69-
assert index[num] == stamp
70-
num += 1
71+
with monkeypatch.context() as m:
72+
m.setattr(datetimes, "_ITER_CHUNKSIZE", chunksize)
73+
for stamp in index:
74+
assert index[num] == stamp
75+
num += 1
7176
assert num == len(index)

pandas/tests/resample/test_datetime_index.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1866,7 +1866,7 @@ def test_resample_equivalent_offsets(n1, freq1, n2, freq2, k, unit):
18661866
# GH 24127
18671867
n1_ = n1 * k
18681868
n2_ = n2 * k
1869-
dti = date_range("19910905 13:00", "19911005 07:00", freq=freq1).as_unit(unit)
1869+
dti = date_range("1991-09-05", "1991-09-12", freq=freq1).as_unit(unit)
18701870
ser = Series(range(len(dti)), index=dti)
18711871

18721872
result1 = ser.resample(str(n1_) + freq1).mean()

pandas/tests/window/test_apply.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -301,8 +301,9 @@ def test_center_reindex_series(raw, series):
301301
tm.assert_series_equal(series_xp, series_rs)
302302

303303

304-
def test_center_reindex_frame(raw, frame):
304+
def test_center_reindex_frame(raw):
305305
# shifter index
306+
frame = DataFrame(range(100), index=date_range("2020-01-01", freq="D", periods=100))
306307
s = [f"x{x:d}" for x in range(12)]
307308
minp = 10
308309

0 commit comments

Comments
 (0)