Skip to content

Commit 832b2ee

Browse files
committed
TST: add 2 tests for to_datetime() for Series with invalid values and NaNs (pandas-dev#25512)
1 parent 2d41f2f commit 832b2ee

File tree

1 file changed

+18
-4
lines changed

1 file changed

+18
-4
lines changed

pandas/tests/indexes/datetimes/test_tools.py

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,18 +84,32 @@ def test_to_datetime_format_YYYYMMDD(self, cache):
8484
assert_series_equal(result, expected)
8585

8686
# GH 25512
87-
# strings with invalid date values, errors=coerce
87+
# NaN before strings with invalid date values, errors=coerce
88+
s = Series(['19801222', np.nan, '20010012', '10019999'])
89+
result = pd.to_datetime(s, format='%Y%m%d', errors='coerce',
90+
cache=cache)
91+
expected = Series([Timestamp('19801222'), np.nan, np.nan, np.nan])
92+
tm.assert_series_equal(result, expected)
93+
94+
# NaN after strings with invalid date values, errors=coerce
8895
s = Series(['19801222', '20010012', '10019999', np.nan])
8996
result = pd.to_datetime(s, format='%Y%m%d', errors='coerce',
9097
cache=cache)
9198
expected = Series([Timestamp('19801222'), np.nan, np.nan, np.nan])
9299
tm.assert_series_equal(result, expected)
93100

94-
# integers with invalid date values, errors=coerce
95-
s = Series([20010012, 20190813, 20019999, np.nan])
101+
# NaN before integers with invalid date values, errors=coerce
102+
s = Series([20190813, np.nan, 20010012, 20019999])
103+
result = pd.to_datetime(s, format='%Y%m%d', errors='coerce',
104+
cache=cache)
105+
expected = Series([Timestamp('20190813'), np.nan, np.nan, np.nan])
106+
tm.assert_series_equal(result, expected)
107+
108+
# NaN after integers with invalid date values, errors=coerce
109+
s = Series([20190813, 20010012, np.nan, 20019999])
96110
result = pd.to_datetime(s, format='%Y%m%d', errors='coerce',
97111
cache=cache)
98-
expected = Series([np.nan, Timestamp('20190813'), np.nan, np.nan])
112+
expected = Series([Timestamp('20190813'), np.nan, np.nan, np.nan])
99113
tm.assert_series_equal(result, expected)
100114

101115
# coercion

0 commit comments

Comments
 (0)