diff --git a/items/fetch-lib.ps1 b/items/fetch-lib.ps1 index e1e688c..b23b598 100644 --- a/items/fetch-lib.ps1 +++ b/items/fetch-lib.ps1 @@ -5,7 +5,7 @@ $script:FetchZips = @('platform-tools_r37.0.1-win.zip', 'x86_64-34_r14.zip') # 这个组包目录要跑哪几遍:命令行(cli)总跑;包根还有「补全组件.bat」的(0.38.1 及更早)再跑批处理(bat)。 -# 0.39 起包里没有批处理,补全组件在管理器和命令行里(ModAVD/ModAVD#119)。没有 tools\modavd.exe 的不是组包目录,报错。 +# 0.38.2 起包里没有批处理,补全组件在管理器和命令行里(ModAVD/ModAVD#119)。没有 tools\modavd.exe 的不是组包目录,报错。 function Get-FetchPasses([string]$Package) { if (-not (Test-Path -LiteralPath (Join-Path $Package 'tools\modavd.exe') -PathType Leaf)) { throw "不是组包目录(要有 tools\modavd.exe):$Package" @@ -107,7 +107,7 @@ function Invoke-FetchItem { # 2. 批处理(只有 0.38.1 及更早的包有):zip 用上一步留下的(或缓存的) if ($passes -notcontains 'bat') { - $notes += '包里没有「补全组件.bat」(0.39 起),只跑了命令行这一遍' + $notes += '包里没有「补全组件.bat」(0.38.2 起),只跑了命令行这一遍' } else { $batRoot = Join-Path $Work 'bat' New-FetchRoot $Package $batRoot diff --git a/items/fetch.ps1 b/items/fetch.ps1 index 515a822..81ae42d 100644 --- a/items/fetch.ps1 +++ b/items/fetch.ps1 @@ -1,7 +1,7 @@ # 打完包补跑:用组包目录搭新的根目录,从空补全组件(adb 和系统镜像)。 # 0.37.0–0.38.0 的「补全组件.bat」装系统镜像必然失败,回归一直没测出来:别的项都把组件链到官方 SDK,不走补全组件。 # - 命令行:tools\modavd.exe components fetch --accept-license --keep-downloads --json,两样都装好、都是这次下的。 -# - 批处理:只有包根还有「补全组件.bat」时才跑(0.38.1 及更早;0.39 起包里没有批处理,补全组件在管理器和命令行里, +# - 批处理:只有包根还有「补全组件.bat」时才跑(0.38.1 及更早;0.38.2 起包里没有批处理,补全组件在管理器和命令行里, # ModAVD/ModAVD#119)。另搭一个根目录,把上一步下好的两个 zip 放进 downloads\(不重下 1.5 GB),用重定向的输入跑它: # 它调 fetch-components.ps1,只问许可协议,结尾 pause 也喂一个回车,退出码 0。 # - 各个根目录最后都再跑一次 components fetch:两样都算齐全、跳过(「齐全」按 fetch 的严格规则,不是 status 的宽松规则)。 diff --git a/tests/fetch-item.ps1 b/tests/fetch-item.ps1 index b27e900..a2eee44 100644 --- a/tests/fetch-item.ps1 +++ b/tests/fetch-item.ps1 @@ -1,6 +1,6 @@ #requires -Version 7.0 # fetch 项(items\fetch-lib.ps1 的 Invoke-FetchItem)的测试:命令行和批处理都换成假的,不跑任何真程序、不联网、不开模拟器。 -# - 包里没有「补全组件.bat」(0.39 起,ModAVD/ModAVD#119)只跑命令行那一遍;有的(0.38.1 及更早)两遍都跑; +# - 包里没有「补全组件.bat」(0.38.2 起,ModAVD/ModAVD#119)只跑命令行那一遍;有的(0.38.1 及更早)两遍都跑; # 没有 tools\modavd.exe 的不是组包目录。 # - 两遍跑的时候 LOCALAPPDATA 都指到工作目录里的空目录,跑完(出错也一样)换回原值;「本机的」LOCALAPPDATA 一个文件都不变。 # 这个测试碰不到真的 %LOCALAPPDATA%\ModAVD,被测代码就算坏了(变异检查会故意弄坏)也一样:「本机的」LOCALAPPDATA 是 @@ -119,12 +119,12 @@ try { Check ((Snapshot $userLad) -eq $userBefore) "${Case}:「本机的」LOCALAPPDATA 被动过了" } - $noBat = New-FakePackage 'pkg-0.39' + $noBat = New-FakePackage 'pkg-0.38.2' $withBat = New-FakePackage 'pkg-0.38.1' -Bat Check ((@(Get-FetchPasses $noBat) -join ',') -eq 'cli') '没有批处理的包只跑命令行' Check ((@(Get-FetchPasses $withBat) -join ',') -eq 'cli,bat') '有批处理的包两遍都跑' - # ---- 1. 0.39 起的包(没有批处理):只跑命令行那一遍,结果 pass,结果里写一句 + # ---- 1. 0.38.2 起的包(没有批处理):只跑命令行那一遍,结果 pass,结果里写一句 $r = Invoke-FakeFetch $noBat Check $r.Pass "没有批处理的包应该 pass:$($r.Summary)" Check ($r.Summary -match '只跑了命令行这一遍') "结果里要写只跑了命令行:$($r.Summary)"