mirror of
https://github.com/BerriAI/litellm.git
synced 2026-08-28 05:25:59 +00:00
The UI unit test job narrows a pull request to `vitest related <changed files>`. `related` maps a file to the tests that import it, so a file no test imports maps to nothing, and `--passWithNoTests` turns that empty selection into a green job. package.json, package-lock.json, the Vitest, Tailwind and TypeScript configs and tests/setupTests.ts are all in that category even though each of them can change the behaviour of every test in the suite, so a dashboard dependency bump merged having run no unit tests at all and only got real coverage later, from the full run on the push to litellm_internal_staging. Keep `related` for the common case where a pull request only touches files under src/, and fall back to the full suite as soon as one changed file sits outside it. The decision lives in .github/scripts/select_ui_test_scope.sh so it can be tested on its own, next to the existing classify_changes.sh gate.
15 lines
348 B
Bash
Executable file
15 lines
348 B
Bash
Executable file
#!/usr/bin/env bash
|
|
set -uo pipefail
|
|
|
|
has_file=false
|
|
has_file_outside_src=false
|
|
while IFS= read -r file || [ -n "$file" ]; do
|
|
[ -n "$file" ] || continue
|
|
has_file=true
|
|
case "$file" in
|
|
src/*) ;;
|
|
*) has_file_outside_src=true ;;
|
|
esac
|
|
done
|
|
|
|
{ [ "$has_file" = true ] && [ "$has_file_outside_src" = false ]; } && echo related || echo full
|