tools: run-tests: leak-test

This commit is contained in:
Bill Zissimopoulos 2016-11-02 20:16:18 -07:00
parent c665812d76
commit 53077d990a

View File

@ -51,6 +51,7 @@ for %%f in (^
:winfstest-memfs-x64-net ^
:winfstest-memfs-x86-disk ^
:winfstest-memfs-x86-net ^
:leak-test ^
) do (
echo === Running %%f
@ -239,3 +240,33 @@ P:
call "%ProjRoot%\ext\test\winfstest\run-winfstest.bat"
if !ERRORLEVEL! neq 0 goto fail
exit /b 0
:leak-test
for /F "tokens=1,2 delims=:" %%i in ('verifier /query ^| findstr ^
/c:"Current Pool Allocations:" ^
/c:"CurrentPagedPoolAllocations:" ^
/c:"CurrentNonPagedPoolAllocations:"'
) do (
set FieldName=%%i
set FieldName=!FieldName: =!
set FieldValue=%%j
set FieldValue=!FieldValue: =!
set FieldValue=!FieldValue:^(=!
set FieldValue=!FieldValue:^)=!
if X!FieldName!==XCurrentPoolAllocations (
for /F "tokens=1,2 delims=/" %%k in ("!FieldValue!") do (
set NonPagedAlloc=%%k
set PagedAlloc=%%l
)
) else if X!FieldName!==XCurrentPagedPoolAllocations (
set PagedAlloc=%%j
) else if X!FieldName!==XCurrentNonPagedPoolAllocations (
set NonPagedAlloc=%%j
)
)
if !PagedAlloc! neq 0 goto fail
if !NonPagedAlloc! neq 0 goto fail
exit /b 0