From 2d1cf0c9c1da622ff7d4a54cd9ea14addcaf6ee2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Sierro?= Date: Wed, 13 Dec 2023 10:56:06 +0100 Subject: [PATCH] fixed error message in debase --- src/scgenerator/variableparameters.py | 3 ++- tests/test_variableparameters.py | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/scgenerator/variableparameters.py b/src/scgenerator/variableparameters.py index 7177774..0295b66 100644 --- a/src/scgenerator/variableparameters.py +++ b/src/scgenerator/variableparameters.py @@ -268,12 +268,13 @@ def debase(num: int, base: tuple[int, ...], strict: bool = True) -> tuple[int, . ``` """ indices = [] + orig_num = num for i in range(len(base) - 1): ind, num = divmod(num, np.prod(base[i + 1 :])) indices.append(ind) indices.append(num) if strict and indices[0] >= base[0]: - raise ValueError(f"{num} too big for base {base!r} in strict mode") + raise ValueError(f"{orig_num} too big for base {base!r} in strict mode") return tuple(indices) diff --git a/tests/test_variableparameters.py b/tests/test_variableparameters.py index bd1d87a..10314b7 100644 --- a/tests/test_variableparameters.py +++ b/tests/test_variableparameters.py @@ -19,6 +19,8 @@ def test_debase(): debase(785, (5, 1, 6)) assert debase(785, (5, 1, 6), strict=False) == (130, 0, 5) + assert debase(0, (1, 1, 1), strict=True) == (0, 0, 0) + def test_get_sequence(): s = get_sequence([[0, 0, 20]])