llama-stack-mirror/scripts
Ashwin Bharambe 78a676e231 feat(tests): add TypeScript client integration test support
Integration tests now support replaying TypeScript SDK tests alongside Python tests when running against server-mode stacks. This enables cross-language validation of API contracts and ensures the TypeScript client properly handles recorded responses.

The implementation adds a new `RUN_CLIENT_TS_TESTS` environment variable that triggers TypeScript test execution after successful Python runs. A mapping file (`suites.json`) defines which TypeScript test files correspond to each Python test suite/setup combination. The script automatically installs npm dependencies, forwards server configuration (base URL and model defaults from setup definitions), and executes matching TypeScript tests using Jest.

CI integration is enabled for server-based test jobs, and the feature can be exercised locally with commands like:

\`\`\`bash
RUN_CLIENT_TS_TESTS=1 scripts/integration-tests.sh --stack-config server:ci-tests --suite responses --setup gpt
\`\`\`

The TypeScript tests reuse existing replay fixtures through the forwarded \`TEST_API_BASE_URL\`, avoiding the need for duplicate response recordings.
2025-11-18 15:51:53 -08:00
..
github fix: unbound variable PR_HEAD_REPO (#3469) 2025-09-17 10:18:43 +02:00
openapi_generator feat(openapi): generate stainless config "more" programmatically (#4164) 2025-11-17 12:48:03 -08:00
telemetry chore(telemetry): add grafana dashboards (#3921) 2025-10-27 14:58:27 -07:00
check-init-py.sh chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
check-workflows-use-hashes.sh fix: update check-workflows-use-hashes to use github error format (#2875) 2025-07-24 17:41:17 +02:00
cleanup_recordings.py chore(ci): remove unused recordings (#4074) 2025-11-05 09:21:58 -08:00
diagnose_recordings.py feat(ci): add support for docker:distro in tests (#3832) 2025-10-16 19:33:13 -07:00
distro_codegen.py chore: remove leftover llama_stack directory (#3940) 2025-10-28 05:09:08 -07:00
docker.sh fix(ci): use test.pypi as extra index for RC dependencies (#4009) 2025-10-31 12:55:43 -07:00
gen-changelog.py chore: enable ruff for ./scripts too (#1643) 2025-03-18 12:17:21 -07:00
gen-ci-docs.py chore: Remove coverage badge from README.md (#2976) 2025-07-31 09:21:30 -07:00
generate_ci_matrix.py chore(ci): remove unused recordings (#4074) 2025-11-05 09:21:58 -08:00
generate_prompt_format.py fix: rename llama_stack_api dir (#4155) 2025-11-13 15:04:36 -08:00
get_setup_env.py fix: pre-commit issues: non executable shebang file and removal of @pytest.mark.asyncio decorator (#3397) 2025-09-10 15:27:35 +02:00
install.sh chore(telemetry): add grafana dashboards (#3921) 2025-10-27 14:58:27 -07:00
integration-tests.sh feat(tests): add TypeScript client integration test support 2025-11-18 15:51:53 -08:00
normalize_recordings.py fix: update normalize to search all recordings dirs (#3767) 2025-10-10 07:32:14 -07:00
provider_codegen.py docs: Improvements on provider_codegen for type hints and multi-line yaml descriptions (#4033) 2025-11-17 12:35:28 -08:00
run-ui-linter.sh chore: move src/llama_stack/ui to src/llama_stack_ui (#4068) 2025-11-04 15:21:49 -08:00
run_openapi_generator.sh feat(openapi): generate stainless config "more" programmatically (#4164) 2025-11-17 12:48:03 -08:00
unit-tests.sh chore(package): migrate to src/ layout (#3920) 2025-10-27 12:02:21 -07:00
uv-run-with-index.sh fix(ci): use test.pypi as extra index for RC dependencies (#4009) 2025-10-31 12:55:43 -07:00