- Have access to a running DIAL Core instance with the
pyinterpretermodule installed.- DIAL Core: https://github.com/epam/ai-dial-core
- PyInterpreter docs: https://github.com/epam/ai-dial-code-interpreter
- Fill these environment variables with correct placeholder values:
REMOTE_DIAL_URL=<URL of DIAL CORE>REMOTE_DIAL_API_KEY=<Your API-KEY>DIAL_URL=<URL of DIAL CORE>DIAL_API_KEY=<Your API-KEY>
PY_INTERPRETER_LOCAL_RUN=truePY_INTERPRETER_API_KEY=<Your API-KEY>PY_INTERPRETER_URL=<URL of DIAL CORE>
QUICKAPP_LOG_LEVEL=DEBUG
- Different DIAL Core instances may expose different models. Adjust tests accordingly.
Changes required:
e2etests:- Edit
test_e2e.pyto add or remove tests that reference missing models.
- Edit
integrationtests:- Set
REFRESH=TRUEto build the cache of model responses during first run of integration tests. - Update the agent/orchestrator model list in
src/tests/test_runner/cache/cache_middleware.py(theAGENT_MODELSlist) to include or remove models available on your instance.
- Set
Notes:
- Building the cache (with
REFRESH=TRUE) saves real model responses for later deterministic integration runs. - Keep the cached responses committed if you intend to share reproducible integration tests.
- Run end-to-end tests:
make e2e_test - Run integration tests:
make integration_test
e2e:- Simple, "happy path" test(s) validating that all components integrate and function end-to-end.
integration:- Multiple scenarios using cached model responses of actual tool calls; validates orchestrator behavior only.
- May fail due to agent response entropy. When an integration test fails, review the failing test and cached model response individually.
- If tests fail because of missing models:
- Update
test_e2e.pyandAGENT_MODELSincache_middleware.py.
- Update
- If integration tests fail nondeterministically:
- Rebuild cache with
REFRESH=TRUE, inspect stored responses, and decide if they should be refreshed/committed.
- Rebuild cache with