'''opencos.utils.status_constants is a module containing known Error return codes

(0 pass, > 0 fail) from eda or other opencos executables.
'''

NO_ERROR = 0

PYTHON_EXCEPTION = 1

EDA_DEPS_FILE_NOT_FOUND = 10
EDA_DEPS_TARGET_NOT_FOUND = 11
EDA_GENERAL_FILE_NOT_FOUND = 12
EDA_DEPS_BAD_TYPE = 13
EDA_DEPS_BAD_SCHEMA_KEY = 14

EDA_COMMAND_OR_ARGS_ERROR = 20
EDA_CONFIG_ERROR = 21
EDA_COMMAND_MISSING_TOP = 22

EDA_SIM_LOG_HAS_BAD_STRING = 30
EDA_SIM_LOG_MISSING_MUST_STRING = 31
EDA_SIM_UVM_ERROR_OR_FATAL = 32

EDA_SHELL_LOG_HAS_BAD_STRING = 38
EDA_SHELL_LOG_MISSING_MUST_STRING = 39

EDA_EXEC_NONZERO_RETURN_CODE1 = 41
EDA_EXEC_NONZERO_RETURN_CODE2 = 42
EDA_SSH_ERROR_CODE = 49
EDA_EXEC_SUBPROCESS_TIMEOUT = 124 # Re-use bash timeout
EDA_EXEC_NONZERO_RETURN_CODE255 = 255

EDA_COVERAGE_REQUIREMENT_NOT_MET = 80
EDA_COVERAGE_TOOL_COMMAND_FAIL = 81

EDA_DEFAULT_ERROR = 255
