diff --git a/skops/cli/_utils.py b/skops/cli/_utils.py index 55173532..c5da5a6d 100644 --- a/skops/cli/_utils.py +++ b/skops/cli/_utils.py @@ -7,7 +7,7 @@ def get_log_level(level: int = 0) -> int: all_levels = [logging.WARNING, logging.INFO, logging.DEBUG] - if level > len(all_levels): + if level >= len(all_levels): level = len(all_levels) - 1 elif level < 0: level = 0 diff --git a/skops/cli/tests/test_cli_utils.py b/skops/cli/tests/test_cli_utils.py new file mode 100644 index 00000000..03a193f7 --- /dev/null +++ b/skops/cli/tests/test_cli_utils.py @@ -0,0 +1,20 @@ +import logging + +import pytest + +from skops.cli._utils import get_log_level + + +@pytest.mark.parametrize( + "level, expected", + [ + (0, logging.WARNING), + (1, logging.INFO), + (2, logging.DEBUG), + (3, logging.DEBUG), + (4, logging.DEBUG), + (-1, logging.WARNING), + ], +) +def test_get_log_level(level: int, expected: int): + assert get_log_level(level) == expected