mstask/tests: Make task trigger tests independent.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Dmitry Timoshkov 2018-05-14 15:49:15 +08:00 committed by Alexandre Julliard
parent bad78747f6
commit 340bf9b513

View File

@ -27,37 +27,6 @@
#include "wine/test.h" #include "wine/test.h"
static ITaskScheduler *test_task_scheduler; static ITaskScheduler *test_task_scheduler;
static ITask *test_task;
static ITaskTrigger *test_trigger;
static WORD trigger_index;
static BOOL setup_trigger(void)
{
HRESULT hres;
const WCHAR task_name[] = {'T','e','s','t','i','n','g', 0};
hres = ITaskScheduler_NewWorkItem(test_task_scheduler, task_name,
&CLSID_CTask, &IID_ITask, (IUnknown**)&test_task);
if(hres != S_OK)
{
ITaskScheduler_Release(test_task_scheduler);
return FALSE;
}
hres = ITask_CreateTrigger(test_task, &trigger_index, &test_trigger);
if(hres != S_OK)
{
ITask_Release(test_task);
ITaskScheduler_Release(test_task_scheduler);
return FALSE;
}
return TRUE;
}
static void cleanup_trigger(void)
{
ITaskTrigger_Release(test_trigger);
ITask_Release(test_task);
}
static BOOL compare_trigger_state(TASK_TRIGGER found_state, static BOOL compare_trigger_state(TASK_TRIGGER found_state,
TASK_TRIGGER expected_state) TASK_TRIGGER expected_state)
@ -135,8 +104,11 @@ static BOOL compare_trigger_state(TASK_TRIGGER found_state,
static void test_SetTrigger_GetTrigger(void) static void test_SetTrigger_GetTrigger(void)
{ {
BOOL setup; static const WCHAR task_name[] = { 'T','e','s','t','i','n','g',0 };
ITask *test_task;
ITaskTrigger *test_trigger;
HRESULT hres; HRESULT hres;
WORD idx;
TASK_TRIGGER trigger_state; TASK_TRIGGER trigger_state;
TASK_TRIGGER empty_trigger_state = { TASK_TRIGGER empty_trigger_state = {
sizeof(trigger_state), 0, sizeof(trigger_state), 0,
@ -157,13 +129,12 @@ static void test_SetTrigger_GetTrigger(void)
}; };
SYSTEMTIME time; SYSTEMTIME time;
setup = setup_trigger(); hres = ITaskScheduler_NewWorkItem(test_task_scheduler, task_name, &CLSID_CTask,
ok(setup, "Failed to setup test_task\n"); &IID_ITask, (IUnknown **)&test_task);
if (!setup) ok(hres == S_OK, "got %#x\n", hres);
{
skip("Failed to create task. Skipping tests.\n"); hres = ITask_CreateTrigger(test_task, &idx, &test_trigger);
return; ok(hres == S_OK, "got %#x\n", hres);
}
/* Setup a trigger with base values for this test run */ /* Setup a trigger with base values for this test run */
GetLocalTime(&time); GetLocalTime(&time);
@ -367,9 +338,8 @@ static void test_SetTrigger_GetTrigger(void)
ok(compare_trigger_state(trigger_state, normal_trigger_state), ok(compare_trigger_state(trigger_state, normal_trigger_state),
"Invalid state\n"); "Invalid state\n");
ITaskTrigger_Release(test_trigger);
cleanup_trigger(); ITask_Release(test_task);
return;
} }
static void test_task_trigger(void) static void test_task_trigger(void)