Three review findings, all verified: 1. wry keys the WebKitGTK base-cache dir to the app DATA dir (same as base-data), so on Linux the stale frontend cache also lives under ~/.local/share/ai.unsloth.studio. Clear the cache-typed subdirs there (WebKitCache, CacheStorage, serviceworkers) while keeping localstorage, indexeddb, and cookies. Tests extended to 23 assertions. 2. run_all.sh invoked the new test with sh, but the extracted setup.sh function uses bash arrays; dash aborts with a syntax error before any assertion. Invoke with bash. 3. The in-app desktop update runs start_backend_update before downloadAndInstall/relaunch, so setup.ps1/setup.sh clear caches while the live WebView still holds them and silently fail. Clear the caches from the Rust side in main() before the Builder runs: the config window (and the WebView lock) exists by the time setup hooks fire, so this is the one point where the profile is guaranteed unlocked. Same cache-only path lists per OS; cargo check passes.
33 lines
1.3 KiB
Bash
Executable file
33 lines
1.3 KiB
Bash
Executable file
#!/bin/sh
|
|
# SPDX-License-Identifier: AGPL-3.0-only
|
|
# Copyright 2026-present the Unsloth AI Inc. team. All rights reserved. See /studio/LICENSE.AGPL-3.0
|
|
# Run all installer tests.
|
|
set -e
|
|
|
|
TESTS_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
|
|
echo "=== Bash tests ==="
|
|
sh "$TESTS_DIR/sh/test_get_torch_index_url.sh"
|
|
sh "$TESTS_DIR/sh/test_mac_intel_compat.sh"
|
|
sh "$TESTS_DIR/sh/test_torch_constraint.sh"
|
|
sh "$TESTS_DIR/sh/test_nvcc_meets_llama_minimum.sh"
|
|
sh "$TESTS_DIR/sh/test_resolve_cuda_archs.sh"
|
|
sh "$TESTS_DIR/sh/test_strixhalo_wsl_reroute.sh"
|
|
sh "$TESTS_DIR/sh/test_uninstall_shared_icon.sh"
|
|
# bash, not sh: the extracted setup.sh function uses bash arrays (dash chokes).
|
|
bash "$TESTS_DIR/sh/test_setup_webview_cache_clear.sh"
|
|
sh "$TESTS_DIR/sh/test_torch_flavor.sh"
|
|
sh "$TESTS_DIR/sh/test_redact_install_output.sh"
|
|
sh "$TESTS_DIR/sh/test_install_uv_override_space.sh"
|
|
sh "$TESTS_DIR/sh/test_install_rollback_lifecycle.sh"
|
|
|
|
echo ""
|
|
echo "=== Python tests ==="
|
|
python -m pytest "$TESTS_DIR/python/test_install_python_stack.py" -v
|
|
python -m pytest "$TESTS_DIR/python/test_cross_platform_parity.py" -v
|
|
python -m pytest "$TESTS_DIR/python/test_no_torch_filtering.py" -v
|
|
python -m pytest "$TESTS_DIR/python/test_studio_import_no_torch.py" -v
|
|
python -m pytest "$TESTS_DIR/python/test_tokenizers_and_torch_constraint.py" -v -k "not e2e"
|
|
|
|
echo ""
|
|
echo "All tests passed."
|