Roy Shea : mstask/tests: Conformance test for (Set|Get)Parameters.

Alexandre Julliard julliard at winehq.org
Thu Aug 21 10:02:19 CDT 2008


Module: wine
Branch: master
Commit: cd8ac273046614430cf6d4359886442b7acd4bb0
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=cd8ac273046614430cf6d4359886442b7acd4bb0

Author: Roy Shea <royshea at gmail.com>
Date:   Wed Aug 20 17:44:30 2008 -0700

mstask/tests: Conformance test for (Set|Get)Parameters.

---

 dlls/mstask/tests/task.c |   71 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 71 insertions(+), 0 deletions(-)

diff --git a/dlls/mstask/tests/task.c b/dlls/mstask/tests/task.c
index 48f87f2..ac797a1 100644
--- a/dlls/mstask/tests/task.c
+++ b/dlls/mstask/tests/task.c
@@ -230,10 +230,81 @@ static void test_CreateTrigger(void)
     return;
 }
 
+static void test_SetParameters_GetParameters(void)
+{
+    BOOL setup;
+    HRESULT hres;
+    LPWSTR parameters;
+    const WCHAR parameters_a[] = {'f','o','o','.','t','x','t', 0};
+    const WCHAR parameters_b[] = {'f','o','o','.','t','x','t',' ',
+        'b','a','r','.','t','x','t', 0};
+
+    setup = setup_task();
+    ok(setup, "Failed to setup test_task\n");
+    if (!setup)
+    {
+        skip("Failed to create task.  Skipping tests.\n");
+        return;
+    }
+
+    /* Get parameters before setting them */
+    hres = ITask_GetParameters(test_task, &parameters);
+    todo_wine ok(hres == S_OK, "GetParameters failed: %08x\n", hres);
+    if (hres == S_OK)
+    {
+        todo_wine ok(!lstrcmpW(parameters, empty),
+                "Got %s, expected empty string\n", dbgstr_w(parameters));
+        CoTaskMemFree(parameters);
+    }
+
+    /* Set parameters to a simple string */
+    hres = ITask_SetParameters(test_task, parameters_a);
+    todo_wine ok(hres == S_OK, "Failed setting parameters %s: %08x\n",
+            dbgstr_w(parameters_a), hres);
+    hres = ITask_GetParameters(test_task, &parameters);
+    todo_wine ok(hres == S_OK, "GetParameters failed: %08x\n", hres);
+    if (hres == S_OK)
+    {
+        todo_wine ok(!lstrcmpW(parameters, parameters_a), "Got %s, expected %s\n",
+                dbgstr_w(parameters), dbgstr_w(parameters_a));
+        CoTaskMemFree(parameters);
+    }
+
+    /* Update parameters to a different simple string */
+    hres = ITask_SetParameters(test_task, parameters_b);
+    todo_wine ok(hres == S_OK, "Failed setting parameters %s: %08x\n",
+            dbgstr_w(parameters_b), hres);
+    hres = ITask_GetParameters(test_task, &parameters);
+    todo_wine ok(hres == S_OK, "GetParameters failed: %08x\n", hres);
+    if (hres == S_OK)
+    {
+        todo_wine ok(!lstrcmpW(parameters, parameters_b), "Got %s, expected %s\n",
+                dbgstr_w(parameters), dbgstr_w(parameters_b));
+        CoTaskMemFree(parameters);
+    }
+
+    /* Clear parameters */
+    hres = ITask_SetParameters(test_task, empty);
+    todo_wine ok(hres == S_OK, "Failed setting parameters %s: %08x\n",
+            dbgstr_w(empty), hres);
+    hres = ITask_GetParameters(test_task, &parameters);
+    todo_wine ok(hres == S_OK, "GetParameters failed: %08x\n", hres);
+    if (hres == S_OK)
+    {
+        todo_wine ok(!lstrcmpW(parameters, empty),
+                "Got %s, expected empty string\n", dbgstr_w(parameters));
+        CoTaskMemFree(parameters);
+    }
+
+    cleanup_task();
+    return;
+}
+
 START_TEST(task)
 {
     CoInitialize(NULL);
     test_SetApplicationName_GetApplicationName();
     test_CreateTrigger();
+    test_SetParameters_GetParameters();
     CoUninitialize();
 }




More information about the wine-cvs mailing list