appveyor: FSP_FSCTL_VOLUME_PARAMS size change compat testing

This commit is contained in:
Bill Zissimopoulos 2018-04-22 11:16:25 -07:00
parent 9501b5771d
commit ebc8c268e5
No known key found for this signature in database
GPG Key ID: 3D4F95D52C7B3EA3
6 changed files with 42 additions and 3 deletions

View File

@ -18,6 +18,7 @@ if not X%1==X-u (
reg add !RegKey!\!fsname! /v Executable /t REG_SZ /d !fsexec! /f /reg:32
reg add !RegKey!\!fsname! /v CommandLine /t REG_SZ /d !fscmdl! /f /reg:32
reg add !RegKey!\!fsname! /v JobControl /t REG_DWORD /d 1 /f /reg:32
if not X!fssecu!==X reg add !RegKey!\!fsname! /v Security /t REG_SZ /d !fssecu! /f /reg:32
) else (
set unreg=1

View File

@ -82,6 +82,8 @@ set opt_tests=^
sample-passthrough-fuse-x86 ^
sample-fsx-passthrough-fuse-x86 ^
sample-passthrough-dotnet ^
compat-v1.2-memfs-x64 ^
compat-v1.2-memfs-x86 ^
compat-v1.1-passthrough-fuse-x64 ^
compat-v1.1-passthrough-fuse-x86 ^
avast-tests-x64 ^
@ -771,6 +773,41 @@ call "%ProjRoot%\tools\fsreg" -u %1
rmdir /s/q "%TMP%\%1"
exit /b !RunSampleTestExit!
:compat-v1.2-memfs-x64
copy "%ProjRoot%\build\VStudio\build\%Configuration%\winfsp-*.dll" "%ProjRoot%\tst\compat\v1.2\memfs"
call :__run_compat_memfs_test compat-memfs v1.2\memfs\memfs-x64 winfsp-tests-x64
if !ERRORLEVEL! neq 0 goto fail
del "%ProjRoot%\tst\compat\v1.2\memfs\winfsp-*.dll"
exit /b 0
:compat-v1.2-memfs-x86
copy "%ProjRoot%\build\VStudio\build\%Configuration%\winfsp-*.dll" "%ProjRoot%\tst\compat\v1.2\memfs"
call :__run_compat_memfs_test compat-memfs v1.2\memfs\memfs-x86 winfsp-tests-x86
if !ERRORLEVEL! neq 0 goto fail
del "%ProjRoot%\tst\compat\v1.2\memfs\winfsp-*.dll"
exit /b 0
:__run_compat_memfs_test
set RunSampleTestExit=0
call "%ProjRoot%\tools\fsreg" %1 "%ProjRoot%\tst\compat\%2.exe" ^
"-i -F NTFS -n 65536 -s 67108864 -u %%%%1 -m %%%%2" "D:P(A;;RPWPLC;;;WD)"
echo net use L: "\\%1\share"
net use L: "\\%1\share"
if !ERRORLEVEL! neq 0 goto fail
echo net use ^| findstr L:
net use | findstr L:
pushd >nul
cd L: >nul 2>nul || (echo Unable to find drive L: >&2 & goto fail)
L:
"%ProjRoot%\build\VStudio\build\%Configuration%\%3.exe" ^
--external --resilient --share-prefix="\%1\share"
if !ERRORLEVEL! neq 0 set RunSampleTestExit=1
popd
echo net use L: /delete
net use L: /delete
call "%ProjRoot%\tools\fsreg" -u %1
exit /b !RunSampleTestExit!
:compat-v1.1-passthrough-fuse-x64
call :__run_compat_fuse_test passthrough-fuse v1.1\passthrough-fuse\passthrough-fuse-x64 winfsp-tests-x64
if !ERRORLEVEL! neq 0 goto fail

4
tst/compat/README.md Normal file
View File

@ -0,0 +1,4 @@
This directory contains binaries for backwards compatibility testing.
- `v1.1/passthrough-fuse`: testing of changes related to `struct fuse_stat_ex` (`v1.2B3`)
- `v1.2/memfs`: testing of `FSP_FSCTL_VOLUME_PARAMS` size change (`v1.3B3`)

View File

@ -1,3 +0,0 @@
This directory contains binaries of `passthrough-fuse` from release `v1.2B2`. Both `x64` and `x86` binaries are provided.
The WinFsp-FUSE layer added support for `struct fuse_stat_ex` in `v1.2B3` which was a potentially breaking change for backwards compatibility. These binaries are used to verify that WinFsp-FUSE remains backwards compatible.

Binary file not shown.

Binary file not shown.