From bee2e01ffa59ed993fcd5cebc034c007306a5c75 Mon Sep 17 00:00:00 2001 From: Yash Vinay Kalyani Date: Wed, 4 Nov 2026 00:54:36 +0530 Subject: [PATCH] fix: reject empty negative binary input --- conversions/binary_to_decimal.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/conversions/binary_to_decimal.py b/conversions/binary_to_decimal.py index 914a9318c225..88aeb9040498 100644 --- a/conversions/binary_to_decimal.py +++ b/conversions/binary_to_decimal.py @@ -18,6 +18,14 @@ def bin_to_decimal(bin_string: str) -> int: Traceback (most recent call last): ... ValueError: Empty string was passed to the function + >>> bin_to_decimal("-") + Traceback (most recent call last): + ... + ValueError: Non-binary value was passed to the function + >>> bin_to_decimal(" - ") + Traceback (most recent call last): + ... + ValueError: Non-binary value was passed to the function >>> bin_to_decimal("39") Traceback (most recent call last): ... @@ -29,7 +37,7 @@ def bin_to_decimal(bin_string: str) -> int: is_negative = bin_string[0] == "-" if is_negative: bin_string = bin_string[1:] - if not all(char in "01" for char in bin_string): + if not bin_string or not all(char in "01" for char in bin_string): raise ValueError("Non-binary value was passed to the function") decimal_number = 0 for char in bin_string: