test_validate_inclusive.py 896 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import numpy as np
  2. import pytest
  3. from pandas.util._validators import validate_inclusive
  4. import pandas as pd
  5. @pytest.mark.parametrize(
  6. "invalid_inclusive",
  7. (
  8. "ccc",
  9. 2,
  10. object(),
  11. None,
  12. np.nan,
  13. pd.NA,
  14. pd.DataFrame(),
  15. ),
  16. )
  17. def test_invalid_inclusive(invalid_inclusive):
  18. with pytest.raises(
  19. ValueError,
  20. match="Inclusive has to be either 'both', 'neither', 'left' or 'right'",
  21. ):
  22. validate_inclusive(invalid_inclusive)
  23. @pytest.mark.parametrize(
  24. "valid_inclusive, expected_tuple",
  25. (
  26. ("left", (True, False)),
  27. ("right", (False, True)),
  28. ("both", (True, True)),
  29. ("neither", (False, False)),
  30. ),
  31. )
  32. def test_valid_inclusive(valid_inclusive, expected_tuple):
  33. resultant_tuple = validate_inclusive(valid_inclusive)
  34. assert expected_tuple == resultant_tuple