build,test: run v8 tests on windows
`vcbuild.bat test-v8` : Runs unit test from v8 repo `vcbuild.bat test-v8-intl` : Runs intl test from v8 repo `vcbuild.bat test-v8` : Runs benchmarks from v8 repo The runs needs https://www.chromium.org/developers/how-tos/install-depot-tools installed on the machine expects environment variable `DEPOT_TOOLS_PATH` to be set to the path. Set environment variable `DISABLE_V8_I18N` to disable i18n. PR-URL: https://github.com/nodejs/node/pull/13992 Refs: https://github.com/nodejs/node/pull/4704 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
This commit is contained in:
Родитель
77ca3cb474
Коммит
09dd6bbec6
|
@ -0,0 +1,45 @@
|
|||
if not defined DEPOT_TOOLS_PATH goto depot-tools-not-found
|
||||
if "%config%"=="Debug" set test_args=%target_arch%.debug
|
||||
if "%config%"=="Release" set test_args=%target_arch%.release
|
||||
set savedpath=%path%
|
||||
set path=%DEPOT_TOOLS_PATH%;%path%
|
||||
pushd .
|
||||
|
||||
set ERROR_STATUS=0
|
||||
echo calling: tools\make-v8.sh
|
||||
sh tools\make-v8.sh
|
||||
if errorlevel 1 set ERROR_STATUS=1&goto test-v8-exit
|
||||
cd %~dp0
|
||||
cd deps\v8
|
||||
echo running 'python tools\dev\v8gen.py %test_args%'
|
||||
call python tools\dev\v8gen.py %test_args%
|
||||
if errorlevel 1 set ERROR_STATUS=1&goto test-v8-exit
|
||||
echo running 'ninja -C out.gn/%test_args% %v8_build_options%'
|
||||
call ninja -C out.gn/%test_args% %v8_build_options%
|
||||
if errorlevel 1 set ERROR_STATUS=1&goto test-v8-exit
|
||||
set path=%savedpath%
|
||||
|
||||
if not defined test_v8 goto test-v8-intl
|
||||
echo running 'python tools\run-tests.py %common_v8_test_options% %v8_test_options% --junitout ./v8-tap.xml'
|
||||
call python tools\run-tests.py %common_v8_test_options% %v8_test_options% --junitout ./v8-tap.xml
|
||||
|
||||
:test-v8-intl
|
||||
if not defined test_v8_intl goto test-v8-benchmarks
|
||||
echo running 'python tools\run-tests.py %common_v8_test_options% intl --junitout ./v8-intl-tap.xml'
|
||||
call python tools\run-tests.py %common_v8_test_options% intl --junitout ./v8-intl-tap.xml
|
||||
|
||||
:test-v8-benchmarks
|
||||
if not defined test_v8_benchmarks goto test-v8-exit
|
||||
echo running 'python tools\run-tests.py %common_v8_test_options% benchmarks --junitout ./v8-benchmarks-tap.xml'
|
||||
call python tools\run-tests.py %common_v8_test_options% benchmarks --junitout ./v8-benchmarks-tap.xml
|
||||
goto test-v8-exit
|
||||
|
||||
:test-v8-exit
|
||||
popd
|
||||
if defined savedpath set path=%savedpath%
|
||||
exit /b %ERROR_STATUS%
|
||||
|
||||
:depot-tools-not-found
|
||||
echo Failed to find a suitable depot tools to test v8
|
||||
exit /b 1
|
||||
|
17
vcbuild.bat
17
vcbuild.bat
|
@ -45,6 +45,8 @@ set build_addons_napi=
|
|||
set test_node_inspect=
|
||||
set test_check_deopts=
|
||||
set js_test_suites=async-hooks inspector known_issues message parallel sequential
|
||||
set v8_test_options=
|
||||
set v8_build_options=
|
||||
set "common_test_suites=%js_test_suites% doctool addons addons-napi&set build_addons=1&set build_addons_napi=1"
|
||||
|
||||
:next-arg
|
||||
|
@ -83,6 +85,10 @@ if /i "%1"=="test-async-hooks" set test_args=%test_args% async-hooks&goto arg-o
|
|||
if /i "%1"=="test-all" set test_args=%test_args% gc internet pummel %common_test_suites%&set build_testgc_addon=1&set cpplint=1&set jslint=1&goto arg-ok
|
||||
if /i "%1"=="test-node-inspect" set test_node_inspect=1&goto arg-ok
|
||||
if /i "%1"=="test-check-deopts" set test_check_deopts=1&goto arg-ok
|
||||
if /i "%1"=="test-v8" set test_v8=1&set custom_v8_test=1&goto arg-ok
|
||||
if /i "%1"=="test-v8-intl" set test_v8_intl=1&set custom_v8_test=1&goto arg-ok
|
||||
if /i "%1"=="test-v8-benchmarks" set test_v8_benchmarks=1&set custom_v8_test=1&goto arg-ok
|
||||
if /i "%1"=="test-v8-all" set test_v8=1&set test_v8_intl=1&set test_v8_benchmarks=1&set custom_v8_test=1&goto arg-ok
|
||||
if /i "%1"=="jslint" set jslint=1&goto arg-ok
|
||||
if /i "%1"=="jslint-ci" set jslint_ci=1&goto arg-ok
|
||||
if /i "%1"=="lint" set cpplint=1&set jslint=1&goto arg-ok
|
||||
|
@ -427,12 +433,18 @@ set USE_EMBEDDED_NODE_INSPECT=1
|
|||
goto node-tests
|
||||
|
||||
:node-tests
|
||||
if "%test_args%"=="" goto cpplint
|
||||
if "%test_args%"=="" goto test-v8
|
||||
if "%config%"=="Debug" set test_args=--mode=debug %test_args%
|
||||
if "%config%"=="Release" set test_args=--mode=release %test_args%
|
||||
echo running 'cctest %cctest_args%'
|
||||
"%config%\cctest" %cctest_args%
|
||||
call :run-python tools\test.py %test_args%
|
||||
goto test-v8
|
||||
|
||||
:test-v8
|
||||
if not defined custom_v8_test goto cpplint
|
||||
call tools/test-v8.bat
|
||||
if errorlevel 1 goto exit
|
||||
goto cpplint
|
||||
|
||||
:cpplint
|
||||
|
@ -503,7 +515,7 @@ echo Failed to create vc project files.
|
|||
goto exit
|
||||
|
||||
:help
|
||||
echo vcbuild.bat [debug/release] [msi] [test/test-ci/test-all/test-uv/test-inspector/test-internet/test-pummel/test-simple/test-message/test-async-hooks] [clean] [noprojgen] [small-icu/full-icu/without-intl] [nobuild] [sign] [x86/x64] [vs2015/vs2017] [download-all] [enable-vtune] [lint/lint-ci] [no-NODE-OPTIONS]
|
||||
echo vcbuild.bat [debug/release] [msi] [test/test-ci/test-all/test-uv/test-inspector/test-internet/test-pummel/test-simple/test-message/test-async-hooks/test-v8/test-v8-intl/test-v8-benchmarks/test-v8-all] [clean] [noprojgen] [small-icu/full-icu/without-intl] [nobuild] [sign] [x86/x64] [vs2015/vs2017] [download-all] [enable-vtune] [lint/lint-ci] [no-NODE-OPTIONS]
|
||||
echo Examples:
|
||||
echo vcbuild.bat : builds release build
|
||||
echo vcbuild.bat debug : builds debug build
|
||||
|
@ -524,6 +536,7 @@ exit /b %ERRORLEVEL%
|
|||
:exit
|
||||
goto :EOF
|
||||
|
||||
|
||||
rem ***************
|
||||
rem Subroutines
|
||||
rem ***************
|
||||
|
|
Загрузка…
Ссылка в новой задаче