Zhiyi Zhang (@zhiyi) commented about dlls/user32/tests/monitor.c:
wait_for_dm(devices[0].name, 800, 600, TRUE);
wait_for_dm(devices[1].name, 800, 600, TRUE);
SetEvent(exit_event0);
wait_result = WaitForSingleObject(process0, 10000);
ok(wait_result == WAIT_OBJECT_0, "WaitForSingleObject returned %lx.\n", wait_result);
Sleep(100);
memset(&dm, 0, sizeof(dm));
dm.dmSize = sizeof(dm);
dm.dmPelsWidth = 800;
dm.dmPelsHeight = 600;
dm.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT;
expect_dm(&dm, devices[0].name, 0, TRUE);
expect_dm(&dm, devices[1].name, 0, TRUE);
You've already called wait_for_dm(). Calling expect_dm seems redundant.