convert a octal value to its decimal equivalent octtodecimal traceback most recent call last valueerror empty string was passed to the function octtodecimal traceback most recent call last valueerror nonoctal value was passed to the function octtodecimale traceback most recent call last valueerror nonoctal value was passed to the function octtodecimal8 traceback most recent call last valueerror nonoctal value was passed to the function octtodecimale traceback most recent call last valueerror nonoctal value was passed to the function octtodecimal8 traceback most recent call last valueerror nonoctal value was passed to the function octtodecimal1 1 octtodecimal1 1 octtodecimal12 10 octtodecimal 12 10 octtodecimal45 37 octtodecimal traceback most recent call last valueerror nonoctal value was passed to the function octtodecimal0 0 octtodecimal4055 2093 octtodecimal20fm traceback most recent call last valueerror nonoctal value was passed to the function octtodecimal traceback most recent call last valueerror empty string was passed to the function octtodecimal19 traceback most recent call last valueerror nonoctal value was passed to the function convert a octal value to its decimal equivalent oct_to_decimal traceback most recent call last valueerror empty string was passed to the function oct_to_decimal traceback most recent call last valueerror non octal value was passed to the function oct_to_decimal e traceback most recent call last valueerror non octal value was passed to the function oct_to_decimal 8 traceback most recent call last valueerror non octal value was passed to the function oct_to_decimal e traceback most recent call last valueerror non octal value was passed to the function oct_to_decimal 8 traceback most recent call last valueerror non octal value was passed to the function oct_to_decimal 1 1 oct_to_decimal 1 1 oct_to_decimal 12 10 oct_to_decimal 12 10 oct_to_decimal 45 37 oct_to_decimal traceback most recent call last valueerror non octal value was passed to the function oct_to_decimal 0 0 oct_to_decimal 4055 2093 oct_to_decimal 2 0fm traceback most recent call last valueerror non octal value was passed to the function oct_to_decimal traceback most recent call last valueerror empty string was passed to the function oct_to_decimal 19 traceback most recent call last valueerror non octal value was passed to the function
def oct_to_decimal(oct_string: str) -> int:
    
    oct_string = str(oct_string).strip()
    if not oct_string:
        raise ValueError("Empty string was passed to the function")
    is_negative = oct_string[0] == "-"
    if is_negative:
        oct_string = oct_string[1:]
    if not oct_string.isdigit() or not all(0 <= int(char) <= 7 for char in oct_string):
        raise ValueError("Non-octal value was passed to the function")
    decimal_number = 0
    for char in oct_string:
        decimal_number = 8 * decimal_number + int(char)
    if is_negative:
        decimal_number = -decimal_number
    return decimal_number


if __name__ == "__main__":
    from doctest import testmod

    testmod()