Skip to content

Commit db63a39

Browse files
gfyoungTomAugspurger
authored andcommitted
TST: Check lossiness of floats with parse_dates (pandas-dev#18136)
Closes pandas-devgh-2697. (cherry picked from commit e23bd24)
1 parent 91639e5 commit db63a39

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

pandas/tests/io/parser/parse_dates.py

+18
Original file line numberDiff line numberDiff line change
@@ -656,3 +656,21 @@ def test_parse_date_column_with_empty_string(self):
656656
[621, ' ']]
657657
expected = DataFrame(expected_data, columns=['case', 'opdate'])
658658
tm.assert_frame_equal(result, expected)
659+
660+
@pytest.mark.parametrize("data,expected", [
661+
("a\n135217135789158401\n1352171357E+5",
662+
DataFrame({"a": [135217135789158401,
663+
135217135700000]}, dtype="float64")),
664+
("a\n99999999999\n123456789012345\n1234E+0",
665+
DataFrame({"a": [99999999999,
666+
123456789012345,
667+
1234]}, dtype="float64"))
668+
])
669+
@pytest.mark.parametrize("parse_dates", [True, False])
670+
def test_parse_date_float(self, data, expected, parse_dates):
671+
# see gh-2697
672+
#
673+
# Date parsing should fail, so we leave the data untouched
674+
# (i.e. float precision should remain unchanged).
675+
result = self.read_csv(StringIO(data), parse_dates=parse_dates)
676+
tm.assert_frame_equal(result, expected)

0 commit comments

Comments
 (0)