test_asof.py 751 B

12345678910111213141516171819202122232425262728293031
  1. from datetime import timedelta
  2. from pandas import (
  3. Index,
  4. Timestamp,
  5. date_range,
  6. isna,
  7. )
  8. import pandas._testing as tm
  9. class TestAsOf:
  10. def test_asof_partial(self):
  11. index = date_range("2010-01-01", periods=2, freq="m")
  12. expected = Timestamp("2010-02-28")
  13. result = index.asof("2010-02")
  14. assert result == expected
  15. assert not isinstance(result, Index)
  16. def test_asof(self):
  17. index = tm.makeDateIndex(100)
  18. dt = index[0]
  19. assert index.asof(dt) == dt
  20. assert isna(index.asof(dt - timedelta(1)))
  21. dt = index[-1]
  22. assert index.asof(dt + timedelta(1)) == dt
  23. dt = index[0].to_pydatetime()
  24. assert isinstance(index.asof(dt), Timestamp)