scripts: ensure wasm-bindgen-test-cli is installed and set WASM_BINDGEN_TEST_RUNNER

This commit is contained in:
Your Name 2025-08-26 07:27:02 +02:00
parent fb15aad77e
commit c12dc5fe17

View File

@ -23,9 +23,9 @@ function Set-WasmToolchainEnv {
$env:CC_wasm32_unknown_unknown = $env:CC
$env:AR_wasm32_unknown_unknown = $env:AR
$env:NM_wasm32_unknown_unknown = $env:NM
$env:CC_wasm32-unknown-unknown = $env:CC
$env:AR_wasm32-unknown-unknown = $env:AR
$env:NM_wasm32-unknown-unknown = $env:NM
[System.Environment]::SetEnvironmentVariable('CC_wasm32-unknown-unknown', $env:CC, 'Process')
[System.Environment]::SetEnvironmentVariable('AR_wasm32-unknown-unknown', $env:AR, 'Process')
[System.Environment]::SetEnvironmentVariable('NM_wasm32-unknown-unknown', $env:NM, 'Process')
}
function Invoke-WasmPackTests {
@ -39,11 +39,28 @@ function Invoke-WasmPackTests {
if ($Node) { wasm-pack test --node }
}
$runnerSet = $false
function Ensure-WasmBindgenRunner {
param()
$runner = Join-Path "$env:USERPROFILE\.cargo\bin" "wasm-bindgen-test-runner.exe"
if (-not (Test-Path $runner)) {
Write-Host "Installing wasm-bindgen-test-cli..." -ForegroundColor Yellow
cargo install wasm-bindgen-test-cli --locked --force | Out-Null
}
if (Test-Path $runner) {
$script:runnerSet = $true
$env:WASM_BINDGEN_TEST_RUNNER = $runner
} else {
Write-Warning "wasm-bindgen-test-runner introuvable après installation. PATH: $env:PATH"
}
}
$scriptsDir = Split-Path -Parent $MyInvocation.MyCommand.Path
$repoRoot = Split-Path -Parent $scriptsDir
Push-Location $repoRoot
try {
Set-WasmToolchainEnv
Ensure-WasmBindgenRunner
cargo clean --target wasm32-unknown-unknown | Out-Null
try {
Invoke-WasmPackTests -Chrome -Firefox
@ -54,5 +71,3 @@ try {
} finally {
Pop-Location
}