mirror of
https://github.com/NVIDIA-NeMo/DataDesigner
synced 2026-05-24 09:48:29 +00:00
* remove old structure * major shuffle * streamline project configs * update make commands * updates to make commands * remove essentials * initialize logger in interface * uv lock * ignore notepad * update workflows * fix e2e project config * generate colab notebooks * resolve default model settings in interface * fix build commands * update perf import make command * cleaning up some slop * update recipes * move conftest files to tests/ * update subpackage readmes * streamline config_logging * use exports * update perf import usage pattern * update for IDE behavior with ruff * remove engine's fixtures file * add note to about lazy imports * update dependencies * update docs * doc fixes * uv lock * updates to catch up with main * clean up makefile * remove package gitignores * define deps only once * isolate tests * add test for protetion rule * create temp dirs for isolated tests * catch up to main * update headers * re apply changes * better result summaries for isolated tests * move exports into top-level init * fix client importlib version syntax * catch up with main
61 lines
1.8 KiB
Python
61 lines
1.8 KiB
Python
# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
from data_designer.engine.errors import (
|
|
DataDesignerRuntimeError,
|
|
ErrorTrap,
|
|
RemoteValidationSchemaError,
|
|
SecretResolutionError,
|
|
UnknownModelAliasError,
|
|
UnknownProviderError,
|
|
)
|
|
|
|
|
|
def test_error_message():
|
|
test_cases = [
|
|
(DataDesignerRuntimeError, "Runtime error occurred"),
|
|
(UnknownModelAliasError, "Unknown model alias"),
|
|
(UnknownProviderError, "Unknown provider"),
|
|
(SecretResolutionError, "Secret resolution failed"),
|
|
(RemoteValidationSchemaError, "Remote validation schema error"),
|
|
]
|
|
|
|
for error_class, message in test_cases:
|
|
error = error_class(message)
|
|
assert str(error) == message
|
|
|
|
error = DataDesignerRuntimeError()
|
|
assert str(error) == ""
|
|
|
|
|
|
def test_error_trap_custom_values():
|
|
task_errors = {"TestError": 5, "AnotherError": 3}
|
|
error_trap = ErrorTrap(error_count=8, task_errors=task_errors)
|
|
|
|
assert error_trap.error_count == 8
|
|
assert error_trap.task_errors == task_errors
|
|
|
|
|
|
def test_error_trap_track_error():
|
|
error_trap = ErrorTrap()
|
|
|
|
error1 = DataDesignerRuntimeError("Error 1")
|
|
error2 = DataDesignerRuntimeError("Error 2")
|
|
error3 = UnknownModelAliasError("Error 3")
|
|
|
|
error_trap.handle_error(error1)
|
|
error_trap.handle_error(error2)
|
|
error_trap.handle_error(error3)
|
|
|
|
assert error_trap.error_count == 3
|
|
assert error_trap.task_errors["DataDesignerRuntimeError"] == 2
|
|
assert error_trap.task_errors["UnknownModelAliasError"] == 1
|
|
|
|
|
|
def test_error_trap_model_dump():
|
|
error_trap = ErrorTrap(error_count=5, task_errors={"TestError": 3})
|
|
|
|
data = error_trap.model_dump()
|
|
|
|
assert data["error_count"] == 5
|
|
assert data["task_errors"] == {"TestError": 3}
|