[MOUNTMGR_APITEST] Dump returned mount points
authorPierre Schweitzer <pierre@reactos.org>
Wed, 16 Oct 2019 20:22:30 +0000 (22:22 +0200)
committerPierre Schweitzer <pierre@reactos.org>
Wed, 16 Oct 2019 20:22:30 +0000 (22:22 +0200)
modules/rostests/apitests/mountmgr/QueryPoints.c

index 169728a..e0341ae 100644 (file)
@@ -7,6 +7,15 @@
 
 #include "precomp.h"
 
+VOID
+TraceMountPoint(PMOUNTMGR_MOUNT_POINTS MountPoints,
+                PMOUNTMGR_MOUNT_POINT MountPoint)
+{
+    trace("MountPoint: %p\n", MountPoint);
+    trace("\tSymbolicLinkName: %.*S\n", MountPoint->SymbolicLinkNameLength / sizeof(WCHAR), (PWSTR)((ULONG_PTR)MountPoints + MountPoint->SymbolicLinkNameOffset));
+    trace("\tDeviceName: %.*S\n", MountPoint->DeviceNameLength / sizeof(WCHAR), (PWSTR)((ULONG_PTR)MountPoints + MountPoint->DeviceNameOffset));
+}
+
 START_TEST(QueryPoints)
 {
     BOOL Ret;
@@ -45,12 +54,19 @@ START_TEST(QueryPoints)
     }
     else
     {
+        AllocatedPoints->NumberOfMountPoints = 0;
+
         Ret = DeviceIoControl(MountMgrHandle, IOCTL_MOUNTMGR_QUERY_POINTS,
                               &SinglePoint, sizeof(MOUNTMGR_MOUNT_POINT),
                               AllocatedPoints, MountPoints.Size,
                               &BytesReturned, NULL);
         ok(Ret == TRUE, "IOCTL unexpectedly failed %lx\n", GetLastError());
 
+        for (i = 0; i < AllocatedPoints->NumberOfMountPoints; ++i)
+        {
+            TraceMountPoint(AllocatedPoints, &AllocatedPoints->MountPoints[i]);
+        }
+
         RtlFreeHeap(RtlGetProcessHeap(), 0, AllocatedPoints);
     }