common.py 900 B

12345678910111213141516171819202122232425262728293031323334353637
  1. """
  2. Assertion helpers and base class for offsets tests
  3. """
  4. from __future__ import annotations
  5. def assert_offset_equal(offset, base, expected):
  6. actual = offset + base
  7. actual_swapped = base + offset
  8. actual_apply = offset._apply(base)
  9. try:
  10. assert actual == expected
  11. assert actual_swapped == expected
  12. assert actual_apply == expected
  13. except AssertionError as err:
  14. raise AssertionError(
  15. f"\nExpected: {expected}\nActual: {actual}\nFor Offset: {offset})"
  16. f"\nAt Date: {base}"
  17. ) from err
  18. def assert_is_on_offset(offset, date, expected):
  19. actual = offset.is_on_offset(date)
  20. assert actual == expected, (
  21. f"\nExpected: {expected}\nActual: {actual}\nFor Offset: {offset})"
  22. f"\nAt Date: {date}"
  23. )
  24. class WeekDay:
  25. MON = 0
  26. TUE = 1
  27. WED = 2
  28. THU = 3
  29. FRI = 4
  30. SAT = 5
  31. SUN = 6