From 259efff707dc22025efae12dfdcddd2153316e2a Mon Sep 17 00:00:00 2001 From: "Scott E. Graves" Date: Tue, 5 Nov 2024 13:07:22 -0600 Subject: [PATCH] winfsp unit tests and fixes --- .../src/winfsp_drive_info_test.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/repertory/repertory_test/src/winfsp_drive_info_test.cpp b/repertory/repertory_test/src/winfsp_drive_info_test.cpp index 353720db..9a52b539 100644 --- a/repertory/repertory_test/src/winfsp_drive_info_test.cpp +++ b/repertory/repertory_test/src/winfsp_drive_info_test.cpp @@ -141,6 +141,9 @@ TYPED_TEST(winfsp_test, info_can_get_file_info) { FILETIME file_time{}; ::GetSystemTimeAsFileTime(&file_time); + auto time_low = ((PLARGE_INTEGER)&file_time)->QuadPart; + auto time_high = time_low + 10000 * 10000 /* 10 seconds */; + auto file_path{ utils::path::combine(this->mount_location, {"test_file_2"}), }; @@ -153,15 +156,14 @@ TYPED_TEST(winfsp_test, info_can_get_file_info) { BY_HANDLE_FILE_INFORMATION file_info{}; EXPECT_TRUE(::GetFileInformationByHandle(handle, &file_info)); - EXPECT_LE(file_time.dwLowDateTime, file_info.ftCreationTime.dwLowDateTime); - EXPECT_LE(file_time.dwHighDateTime, file_info.ftCreationTime.dwHighDateTime); + EXPECT_LE(time_low, ((PLARGE_INTEGER)&FileInfo.ftCreationTime)->QuadPart); + EXPECT_GT(time_high, ((PLARGE_INTEGER)&FileInfo.ftCreationTime)->QuadPart); - EXPECT_LE(file_time.dwLowDateTime, file_info.ftLastAccessTime.dwLowDateTime); - EXPECT_LE(file_time.dwHighDateTime, - file_info.ftLastAccessTime.dwHighDateTime); + EXPECT_LE(time_low, ((PLARGE_INTEGER)&FileInfo.ftLastAccessTime)->QuadPart); + EXPECT_GT(time_high, ((PLARGE_INTEGER)&FileInfo.ftLastAccessTime)->QuadPart); - EXPECT_LE(file_time.dwLowDateTime, file_info.ftLastWriteTime.dwLowDateTime); - EXPECT_LE(file_time.dwHighDateTime, file_info.ftLastWriteTime.dwHighDateTime); + EXPECT_LE(time_low, ((PLARGE_INTEGER)&FileInfo.ftLastWriteTime)->QuadPart); + EXPECT_GT(time_high, ((PLARGE_INTEGER)&FileInfo.ftLastWriteTime)->QuadPart); EXPECT_EQ(0U, file_info.nFileSizeHigh); EXPECT_EQ(0U, file_info.nFileSizeLow);