- start-navisworks.bat / run-ground-virtual-collision-test.bat: powershell → pwsh(避免依赖 shim/PS5.1,UTF-8 中文输出更可靠) - deploy-plugin.bat 提权兜底:PowerShell → pwsh(内外一致) - run-unit-tests.bat:MSTest adapter 路径硬编码 3.0.4 → 通配符动态查找 (包升级后不再失效)
58 lines
2.0 KiB
Batchfile
58 lines
2.0 KiB
Batchfile
@echo off
|
||
setlocal
|
||
|
||
echo Building NavisworksTransport.UnitTests...
|
||
|
||
set MSBUILD_PATH="C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe"
|
||
if not exist %MSBUILD_PATH% (
|
||
set MSBUILD_PATH="C:\Program Files\Microsoft Visual Studio\2022\Professional\MSBuild\Current\Bin\MSBuild.exe"
|
||
)
|
||
if not exist %MSBUILD_PATH% (
|
||
echo MSBuild not found. Please install Visual Studio 2022 or Build Tools.
|
||
exit /b 1
|
||
)
|
||
|
||
set VSTEST_PATH="C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\Extensions\TestPlatform\vstest.console.exe"
|
||
if not exist %VSTEST_PATH% (
|
||
set VSTEST_PATH="C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\Extensions\TestPlatform\vstest.console.exe"
|
||
)
|
||
if not exist %VSTEST_PATH% (
|
||
echo vstest.console.exe not found. Please install Visual Studio 2022 test tools.
|
||
exit /b 1
|
||
)
|
||
|
||
REM 动态查找 MSTest adapter(避免包版本升级后硬编码路径失效)
|
||
for /d %%d in ("packages\MSTest.TestAdapter.*") do set TEST_ADAPTER_BASE=%%~fd
|
||
if not defined TEST_ADAPTER_BASE (
|
||
echo MSTest adapter package not found under packages\MSTest.TestAdapter.*
|
||
exit /b 1
|
||
)
|
||
set "TEST_ADAPTER_PATH=%TEST_ADAPTER_BASE%\build\net462"
|
||
if not exist "%TEST_ADAPTER_PATH%" (
|
||
echo MSTest adapter net462 dir not found: %TEST_ADAPTER_PATH%
|
||
exit /b 1
|
||
)
|
||
echo Using MSTest adapter: %TEST_ADAPTER_PATH%
|
||
|
||
set NAVISWORKS_PATH=C:\Program Files\Autodesk\Navisworks Manage 2026
|
||
if not exist "%NAVISWORKS_PATH%\Autodesk.Navisworks.Api.dll" (
|
||
echo Navisworks API path not found: %NAVISWORKS_PATH%
|
||
exit /b 1
|
||
)
|
||
|
||
set PATH=%NAVISWORKS_PATH%;%PATH%
|
||
|
||
%MSBUILD_PATH% "NavisworksTransport.UnitTests.csproj" /p:Configuration=Release /p:Platform=x64 /verbosity:minimal
|
||
if errorlevel 1 (
|
||
echo Unit test build failed!
|
||
exit /b 1
|
||
)
|
||
|
||
%VSTEST_PATH% "bin\x64\Release\NavisworksTransport.UnitTests.dll" /Platform:x64 /TestAdapterPath:%TEST_ADAPTER_PATH% /TestCaseFilter:"TestCategory!=NavisworksIntegration"
|
||
if errorlevel 1 (
|
||
echo Unit tests failed!
|
||
exit /b 1
|
||
)
|
||
|
||
echo Unit tests passed!
|