Skip to content

Commit 6835800

Browse files
committed
update tests
1 parent 21de024 commit 6835800

File tree

13 files changed

+39
-31
lines changed

13 files changed

+39
-31
lines changed

pandas/core/dtypes/cast.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1191,7 +1191,7 @@ def maybe_infer_to_datetimelike(
11911191
# numpy would have done it for us.
11921192
convert_numeric=False,
11931193
convert_non_numeric=True,
1194-
dtype_if_all_nat=np.dtype("M8[ns]"),
1194+
dtype_if_all_nat=np.dtype("M8[s]"),
11951195
)
11961196

11971197

pandas/tests/dtypes/test_dtypes.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,8 @@ def test_is_boolean(self, categories, expected):
200200

201201
def test_dtype_specific_categorical_dtype(self):
202202
expected = "datetime64[ns]"
203-
result = str(Categorical(DatetimeIndex([])).categories.dtype)
203+
dti = DatetimeIndex([], dtype=expected)
204+
result = str(Categorical(dti).categories.dtype)
204205
assert result == expected
205206

206207
def test_not_string(self):

pandas/tests/frame/methods/test_transpose.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ def test_transpose_td64_intervals(self):
2929

3030
def test_transpose_empty_preserves_datetimeindex(self):
3131
# GH#41382
32-
df = DataFrame(index=DatetimeIndex([]))
32+
dti = DatetimeIndex([], dtype="M8[ns]")
33+
df = DataFrame(index=dti)
3334

3435
expected = DatetimeIndex([], dtype="datetime64[ns]", freq=None)
3536

pandas/tests/indexes/datetimes/test_date_range.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,7 @@ def test_date_range_edges(self, freq):
184184
exp = DatetimeIndex(
185185
[ts + n * td for n in range(1, 5)],
186186
freq=freq,
187+
dtype="M8[ns]",
187188
)
188189
tm.assert_index_equal(idx, exp)
189190

@@ -193,7 +194,7 @@ def test_date_range_edges(self, freq):
193194
end=ts + td,
194195
freq=freq,
195196
)
196-
exp = DatetimeIndex([], freq=freq)
197+
exp = DatetimeIndex([], dtype="M8[ns]", freq=freq)
197198
tm.assert_index_equal(idx, exp)
198199

199200
# start matches end
@@ -202,7 +203,7 @@ def test_date_range_edges(self, freq):
202203
end=ts + td,
203204
freq=freq,
204205
)
205-
exp = DatetimeIndex([ts + td], freq=freq)
206+
exp = DatetimeIndex([ts + td], dtype="M8[ns]", freq=freq)
206207
tm.assert_index_equal(idx, exp)
207208

208209
def test_date_range_near_implementation_bound(self):

pandas/tests/indexes/datetimes/test_scalar_compat.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,7 @@ def test_dti_fields(self, tz):
304304
exp = dti[[0, 90, 181, 273]]
305305
tm.assert_index_equal(res, exp)
306306
res = dti[dti.is_leap_year]
307-
exp = DatetimeIndex([], freq="D", tz=dti.tz, name="name")
307+
exp = DatetimeIndex([], freq="D", tz=dti.tz, name="name").as_unit("ns")
308308
tm.assert_index_equal(res, exp)
309309

310310
def test_dti_is_year_quarter_start(self):

pandas/tests/indexes/datetimes/test_setops.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ def test_union(self, tz, sort):
7373
expected2_notsorted = DatetimeIndex(list(other2) + list(rng2[:3]))
7474

7575
rng3 = date_range("1/1/2000", freq="D", periods=5, tz=tz)
76-
other3 = DatetimeIndex([], tz=tz)
76+
other3 = DatetimeIndex([], tz=tz).as_unit("ns")
7777
expected3 = date_range("1/1/2000", freq="D", periods=5, tz=tz)
7878
expected3_notsorted = rng3
7979

@@ -235,7 +235,7 @@ def test_intersection(self, tz, sort):
235235
expected3 = date_range("6/1/2000", "6/20/2000", freq="D", name=None)
236236

237237
rng4 = date_range("7/1/2000", "7/31/2000", freq="D", name="idx")
238-
expected4 = DatetimeIndex([], freq="D", name="idx")
238+
expected4 = DatetimeIndex([], freq="D", name="idx", dtype="M8[ns]")
239239

240240
for rng, expected in [
241241
(rng2, expected2),
@@ -269,7 +269,7 @@ def test_intersection(self, tz, sort):
269269

270270
# GH 7880
271271
rng4 = date_range("7/1/2000", "7/31/2000", freq="D", tz=tz, name="idx")
272-
expected4 = DatetimeIndex([], tz=tz, name="idx")
272+
expected4 = DatetimeIndex([], tz=tz, name="idx").as_unit("ns")
273273
assert expected4.freq is None
274274

275275
for rng, expected in [
@@ -540,7 +540,7 @@ def test_intersection(self):
540540

541541
# non-overlapping
542542
the_int = rng[:10].intersection(rng[10:])
543-
expected = DatetimeIndex([])
543+
expected = DatetimeIndex([]).as_unit("ns")
544544
tm.assert_index_equal(the_int, expected)
545545

546546
def test_intersection_bug(self):

pandas/tests/indexes/interval/test_interval.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -388,7 +388,7 @@ def test_maybe_convert_i8_nat(self, breaks):
388388
# GH 20636
389389
index = IntervalIndex.from_breaks(breaks)
390390

391-
to_convert = breaks._constructor([pd.NaT] * 3)
391+
to_convert = breaks._constructor([pd.NaT] * 3).as_unit("ns")
392392
expected = Index([np.nan] * 3, dtype=np.float64)
393393
result = index._maybe_convert_i8(to_convert)
394394
tm.assert_index_equal(result, expected)

pandas/tests/indexes/period/test_partial_slicing.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ def test_range_slice_outofbounds(self, make_range):
117117
idx = make_range(start="2013/10/01", freq="D", periods=10)
118118

119119
df = DataFrame({"units": [100 + i for i in range(10)]}, index=idx)
120-
empty = DataFrame(index=type(idx)([], freq="D"), columns=["units"])
120+
empty = DataFrame(index=idx[:0], columns=["units"])
121121
empty["units"] = empty["units"].astype("int64")
122122

123123
tm.assert_frame_equal(df["2013/09/01":"2013/09/30"], empty)

pandas/tests/indexes/test_base.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ def test_constructor_int_dtype_nan(self):
176176
"klass,dtype,na_val",
177177
[
178178
(Index, np.float64, np.nan),
179-
(DatetimeIndex, "datetime64[ns]", pd.NaT),
179+
(DatetimeIndex, "datetime64[s]", pd.NaT),
180180
],
181181
)
182182
def test_index_ctor_infer_nan_nat(self, klass, dtype, na_val):

pandas/tests/indexes/test_index_new.py

+3
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,9 @@ def test_constructor_infer_nat_dt_like(
141141
)
142142

143143
expected = klass([NaT, NaT])
144+
if dtype[0] == "d":
145+
# we infer all-NaT as second resolution
146+
expected = expected.astype("M8[ns]")
144147
assert expected.dtype == dtype
145148
data = [ctor]
146149
data.insert(pos, nulls_fixture)

pandas/tests/series/indexing/test_setitem.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -508,10 +508,11 @@ def test_setitem_empty_series(self):
508508

509509
def test_setitem_empty_series_datetimeindex_preserves_freq(self):
510510
# GH#33573 our index should retain its freq
511-
series = Series([], DatetimeIndex([], freq="D"), dtype=object)
511+
dti = DatetimeIndex([], freq="D", dtype="M8[ns]")
512+
series = Series([], index=dti, dtype=object)
512513
key = Timestamp("2012-01-01").as_unit("ns")
513514
series[key] = 47
514-
expected = Series(47, DatetimeIndex([key], freq="D"))
515+
expected = Series(47, DatetimeIndex([key], freq="D").as_unit("ns"))
515516
tm.assert_series_equal(series, expected)
516517
assert series.index.freq == expected.index.freq
517518

pandas/tests/series/test_constructors.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1169,9 +1169,9 @@ def test_constructor_with_datetime_tz3(self):
11691169

11701170
def test_constructor_with_datetime_tz2(self):
11711171
# with all NaT
1172-
s = Series(NaT, index=[0, 1], dtype="datetime64[ns, US/Eastern]")
1173-
expected = Series(DatetimeIndex(["NaT", "NaT"], tz="US/Eastern"))
1174-
tm.assert_series_equal(s, expected)
1172+
ser = Series(NaT, index=[0, 1], dtype="datetime64[ns, US/Eastern]")
1173+
expected = Series(DatetimeIndex(["NaT", "NaT"], tz="US/Eastern").as_unit("ns"))
1174+
tm.assert_series_equal(ser, expected)
11751175

11761176
def test_constructor_no_partial_datetime_casting(self):
11771177
# GH#40111

pandas/tests/tools/test_to_datetime.py

+14-13
Original file line numberDiff line numberDiff line change
@@ -1566,7 +1566,7 @@ def test_to_datetime_cache_scalar(self):
15661566
(
15671567
(None, np.nan) + (NaT,) * start_caching_at,
15681568
(NaT,) * (start_caching_at + 2),
1569-
"ns",
1569+
"s",
15701570
),
15711571
(
15721572
(None, Timestamp("2012-07-26")) + (NaT,) * start_caching_at,
@@ -1604,24 +1604,25 @@ def test_convert_object_to_datetime_with_cache(
16041604
(
16051605
(
16061606
Series([NaT] * 20 + [None] * 20, dtype="object"),
1607-
Series([NaT] * 40, dtype="datetime64[ns]"),
1607+
Series([NaT] * 40, dtype="datetime64[s]"),
16081608
),
16091609
(
16101610
Series([NaT] * 60 + [None] * 60, dtype="object"),
1611-
Series([NaT] * 120, dtype="datetime64[ns]"),
1611+
Series([NaT] * 120, dtype="datetime64[s]"),
16121612
),
1613-
(Series([None] * 20), Series([NaT] * 20, dtype="datetime64[ns]")),
1614-
(Series([None] * 60), Series([NaT] * 60, dtype="datetime64[ns]")),
1615-
(Series([""] * 20), Series([NaT] * 20, dtype="datetime64[ns]")),
1616-
(Series([""] * 60), Series([NaT] * 60, dtype="datetime64[ns]")),
1617-
(Series([pd.NA] * 20), Series([NaT] * 20, dtype="datetime64[ns]")),
1618-
(Series([pd.NA] * 60), Series([NaT] * 60, dtype="datetime64[ns]")),
1619-
(Series([np.nan] * 20), Series([NaT] * 20, dtype="datetime64[ns]")),
1620-
(Series([np.nan] * 60), Series([NaT] * 60, dtype="datetime64[ns]")),
1613+
(Series([None] * 20), Series([NaT] * 20, dtype="datetime64[s]")),
1614+
(Series([None] * 60), Series([NaT] * 60, dtype="datetime64[s]")),
1615+
(Series([""] * 20), Series([NaT] * 20, dtype="datetime64[s]")),
1616+
(Series([""] * 60), Series([NaT] * 60, dtype="datetime64[s]")),
1617+
(Series([pd.NA] * 20), Series([NaT] * 20, dtype="datetime64[s]")),
1618+
(Series([pd.NA] * 60), Series([NaT] * 60, dtype="datetime64[s]")),
1619+
(Series([np.nan] * 20), Series([NaT] * 20, dtype="datetime64[s]")),
1620+
(Series([np.nan] * 60), Series([NaT] * 60, dtype="datetime64[s]")),
16211621
),
16221622
)
16231623
def test_to_datetime_converts_null_like_to_nat(self, cache, input, expected):
16241624
# GH35888
1625+
expected = Series([NaT] * len(input), dtype="M8[s]")
16251626
result = to_datetime(input, cache=cache)
16261627
tm.assert_series_equal(result, expected)
16271628

@@ -1977,7 +1978,7 @@ def test_unit_array_mixed_nans_large_int(self, cache):
19771978
tm.assert_index_equal(result, expected)
19781979

19791980
result = to_datetime(values, errors="coerce", unit="s", cache=cache)
1980-
expected = DatetimeIndex(["NaT", "NaT", "NaT", "NaT", "NaT"])
1981+
expected = DatetimeIndex(["NaT", "NaT", "NaT", "NaT", "NaT"], dtype="M8[ns]")
19811982
tm.assert_index_equal(result, expected)
19821983

19831984
msg = "cannot convert input 1420043460000000000000000 with the unit 's'"
@@ -3183,7 +3184,7 @@ def test_na_values_with_cache(
31833184
self, cache, unique_nulls_fixture, unique_nulls_fixture2
31843185
):
31853186
# GH22305
3186-
expected = Index([NaT, NaT], dtype="datetime64[ns]")
3187+
expected = Index([NaT, NaT], dtype="datetime64[s]")
31873188
result = to_datetime([unique_nulls_fixture, unique_nulls_fixture2], cache=cache)
31883189
tm.assert_index_equal(result, expected)
31893190

0 commit comments

Comments
 (0)