From 215f5679b8cb3cfeb7d2242ffbcce9ba795a8c50 Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Sat, 16 Jan 2016 12:36:20 -0800 Subject: [PATCH] winfsp-tests: create-test --- tst/winfsp-tests/create-test.c | 21 +++++++++++++++++---- tst/winfsp-tests/memfs-test.c | 6 ++++++ 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/tst/winfsp-tests/create-test.c b/tst/winfsp-tests/create-test.c index 356b97c4..fb92f469 100644 --- a/tst/winfsp-tests/create-test.c +++ b/tst/winfsp-tests/create-test.c @@ -1,26 +1,39 @@ #include #include +#include #include "memfs.h" void *memfs_start(ULONG Flags); void memfs_stop(void *data); +PWSTR memfs_volumename(void *data); extern int WinFspDiskTests; extern int WinFspNetTests; -void create_dotest(ULONG Flags) +void create_dotest(ULONG Flags, PWSTR Prefix) { void *memfs = memfs_start(Flags); + HANDLE Handle; + WCHAR FilePath[MAX_PATH]; + + StringCbPrintfW(FilePath, sizeof FilePath, L"%s%s\\file0", + Prefix ? L"" : L"\\\\?\\GLOBALROOT", Prefix ? Prefix : memfs_volumename(memfs)); + + Handle = CreateFileW(FilePath, + GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, 0, CREATE_NEW, FILE_ATTRIBUTE_NORMAL, 0); + ASSERT(INVALID_HANDLE_VALUE != Handle); + CloseHandle(Handle); + memfs_stop(memfs); } void create_test(void) { if (WinFspDiskTests) - create_dotest(MemfsDisk); - if (WinFspNetTests) - create_dotest(MemfsNet); + create_dotest(MemfsDisk, 0); + if (0 && WinFspNetTests) + create_dotest(MemfsNet, L"\\\\memfs\\share"); } void create_tests(void) diff --git a/tst/winfsp-tests/memfs-test.c b/tst/winfsp-tests/memfs-test.c index 74d662c1..e80b4acb 100644 --- a/tst/winfsp-tests/memfs-test.c +++ b/tst/winfsp-tests/memfs-test.c @@ -58,6 +58,12 @@ void memfs_stop(void *data) MemfsDelete(Memfs); } +PWSTR memfs_volumename(void *data) +{ + MEMFS *Memfs = ((struct memfs_data *)data)->Memfs; + return MemfsFileSystem(Memfs)->VolumeName; +} + void memfs_dotest(ULONG Flags) { void *memfs = memfs_start(Flags);