对照 module_10849 的 toString 证据实现:vt=ReduxStore(归约+监听器+中间件链)、yt=ReduxToModelGateway(按动作类先通知、再交给 Store;模型/键/游戏对象三级订阅,重复订阅 fail-fast)。
自检 TANKIOFFLINE_STATE_TEST=1:归约累加、通知次数与新状态可见性、中间件由外向内顺序、动作监听器先于归约、模型订阅/退订、重复订阅抛错、派发经过调度器,共 10 项全通过。
state 模块补 js(IR){browser();nodejs()} 使 :app 可依赖;新增 tools/RunStateTest.ps1。
13 lines
551 B
PowerShell
13 lines
551 B
PowerShell
# RunStateTest.ps1 —— 跑状态层内核自检(Store / 中间件 / 网关)
|
||
#
|
||
# 覆盖:归约、监听器通知、中间件顺序、动作监听器时序、模型订阅退订、调度器。
|
||
# 用法:powershell -ExecutionPolicy Bypass -File .\tools\RunStateTest.ps1
|
||
$ErrorActionPreference = 'Stop'
|
||
|
||
$Root = Split-Path -Parent $PSScriptRoot
|
||
$env:TANKIOFFLINE_STATE_TEST = '1'
|
||
|
||
Write-Host '运行状态层自检(TANKIOFFLINE_STATE_TEST=1)'
|
||
& (Join-Path $Root 'gradlew.bat') ':app:jsNodeDevelopmentRun' '--console=plain'
|
||
exit $LASTEXITCODE
|