Dmitry Timoshkov : taskschd/tests: Add more task folder tests.
Alexandre Julliard
julliard at winehq.org
Thu Jan 16 14:52:27 CST 2014
Module: wine
Branch: master
Commit: 7341996f5d6ce20b8914dba79e2901aef900ac57
URL: http://source.winehq.org/git/wine.git/?a=commit;h=7341996f5d6ce20b8914dba79e2901aef900ac57
Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date: Thu Jan 16 18:02:25 2014 +0900
taskschd/tests: Add more task folder tests.
---
dlls/taskschd/tests/scheduler.c | 83 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 81 insertions(+), 2 deletions(-)
diff --git a/dlls/taskschd/tests/scheduler.c b/dlls/taskschd/tests/scheduler.c
index 152dd69..63b5730 100644
--- a/dlls/taskschd/tests/scheduler.c
+++ b/dlls/taskschd/tests/scheduler.c
@@ -118,19 +118,21 @@ todo_wine
static void test_GetFolder(void)
{
static WCHAR dot[] = { '.',0 };
+ static WCHAR empty[] = { 0 };
static WCHAR slash[] = { '/',0 };
static WCHAR bslash[] = { '\\',0 };
static WCHAR Wine[] = { '\\','W','i','n','e',0 };
static WCHAR Wine_Folder1[] = { '\\','W','i','n','e','\\','F','o','l','d','e','r','1',0 };
static WCHAR Wine_Folder1_[] = { '\\','W','i','n','e','\\','F','o','l','d','e','r','1','\\',0 };
static WCHAR Wine_Folder1_Folder2[] = { '\\','W','i','n','e','\\','F','o','l','d','e','r','1','\\','F','o','l','d','e','r','2',0 };
+ static WCHAR Folder1_Folder2[] = { '\\','F','o','l','d','e','r','1','\\','F','o','l','d','e','r','2',0 };
static const WCHAR Folder1[] = { 'F','o','l','d','e','r','1',0 };
static const WCHAR Folder2[] = { 'F','o','l','d','e','r','2',0 };
HRESULT hr;
BSTR bstr;
VARIANT v_null;
ITaskService *service;
- ITaskFolder *folder, *subfolder;
+ ITaskFolder *folder, *subfolder, *subfolder2;
hr = CoCreateInstance(&CLSID_TaskScheduler, NULL, CLSCTX_INPROC_SERVER, &IID_ITaskService, (void **)&service);
if (hr != S_OK)
@@ -162,6 +164,12 @@ todo_wine
todo_wine
ok(hr == E_POINTER, "expected E_POINTER, got %#x\n", hr);
+ hr = ITaskService_GetFolder(service, empty, &folder);
+todo_wine
+ ok(hr == S_OK, "GetFolder error %#x\n", hr);
+ if (hr == S_OK)
+ ITaskFolder_Release(folder);
+
hr = ITaskService_GetFolder(service, NULL, &folder);
todo_wine
ok(hr == S_OK, "GetFolder error %#x\n", hr);
@@ -198,6 +206,9 @@ todo_wine
hr = ITaskFolder_CreateFolder(folder, slash, v_null, &subfolder);
ok(hr == HRESULT_FROM_WIN32(ERROR_INVALID_NAME), "expected ERROR_INVALID_NAME, got %#x\n", hr);
+ hr = ITaskService_GetFolder(service, Wine_Folder1_Folder2, &subfolder);
+ ok(hr == HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND), "expected ERROR_PATH_NOT_FOUND, got %#x\n", hr);
+
hr = ITaskFolder_CreateFolder(folder, bslash, v_null, &subfolder);
ok(hr == E_INVALIDARG, "expected E_INVALIDARG, got %#x\n", hr);
@@ -266,8 +277,76 @@ todo_wine
SysFreeString(bstr);
hr = ITaskFolder_get_Path(subfolder, &bstr);
ok(hr == S_OK, "get_Path error %#x\n", hr);
- ok(!lstrcmpW(bstr, Wine_Folder1), "expected Wine\\Folder1, got %s\n", wine_dbgstr_w(bstr));
+ ok(!lstrcmpW(bstr, Wine_Folder1), "expected \\Wine\\Folder1, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ ITaskFolder_Release(subfolder);
+
+ hr = ITaskService_GetFolder(service, Wine, &subfolder);
+ ok(hr == S_OK, "GetFolder error %#x\n", hr);
+ hr = ITaskFolder_get_Name(subfolder, &bstr);
+ ok (hr == S_OK, "get_Name error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Wine+1), "expected Wine, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ hr = ITaskFolder_get_Path(subfolder, &bstr);
+ ok(hr == S_OK, "get_Path error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Wine), "expected \\Wine, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ ITaskFolder_Release(subfolder);
+
+ hr = ITaskService_GetFolder(service, Wine+1, &subfolder);
+ ok(hr == S_OK, "GetFolder error %#x\n", hr);
+ hr = ITaskFolder_get_Name(subfolder, &bstr);
+ ok (hr == S_OK, "get_Name error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Wine+1), "expected Wine, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ hr = ITaskFolder_get_Path(subfolder, &bstr);
+ ok(hr == S_OK, "get_Path error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Wine+1), "expected Wine, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+
+ hr = ITaskFolder_GetFolder(subfolder, bslash, &subfolder2);
+ ok(hr == HRESULT_FROM_WIN32(ERROR_INVALID_NAME), "expected ERROR_INVALID_NAME, got %#x\n", hr);
+
+ hr = ITaskFolder_GetFolder(subfolder, NULL, &subfolder2);
+ ok(hr == E_INVALIDARG, "expected E_INVALIDARG, got %#x\n", hr);
+
+ hr = ITaskFolder_GetFolder(subfolder, empty, &subfolder2);
+ ok(hr == S_OK, "GetFolder error %#x\n", hr);
+ hr = ITaskFolder_get_Name(subfolder2, &bstr);
+ ok (hr == S_OK, "get_Name error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Wine+1), "expected Wine, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ hr = ITaskFolder_get_Path(subfolder2, &bstr);
+ ok(hr == S_OK, "get_Path error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Wine+1), "expected Wine, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ ITaskFolder_Release(subfolder2);
+
+ hr = ITaskFolder_GetFolder(subfolder, Folder1_Folder2, &subfolder2);
+ ok(hr == S_OK, "GetFolder error %#x\n", hr);
+ hr = ITaskFolder_get_Name(subfolder2, &bstr);
+ ok (hr == S_OK, "get_Name error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Folder2), "expected Folder2, got %s\n", wine_dbgstr_w(bstr));
SysFreeString(bstr);
+ hr = ITaskFolder_get_Path(subfolder2, &bstr);
+ ok(hr == S_OK, "get_Path error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Wine_Folder1_Folder2+1), "expected Wine\\Folder1\\Folder2, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ ITaskFolder_Release(subfolder2);
+
+ hr = ITaskFolder_GetFolder(subfolder, Folder1_Folder2+1, &subfolder2);
+ ok(hr == S_OK, "GetFolder error %#x\n", hr);
+
+ hr = ITaskFolder_get_Name(subfolder2, &bstr);
+ ok (hr == S_OK, "get_Name error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Folder2), "expected Folder2, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ hr = ITaskFolder_get_Path(subfolder2, &bstr);
+ ok(hr == S_OK, "get_Path error %#x\n", hr);
+ ok(!lstrcmpW(bstr, Wine_Folder1_Folder2+1), "expected Wine\\Folder1\\Folder2, got %s\n", wine_dbgstr_w(bstr));
+ SysFreeString(bstr);
+ ITaskFolder_Release(subfolder2);
+
ITaskFolder_Release(subfolder);
hr = ITaskFolder_DeleteFolder(folder, Wine_Folder1_Folder2, 0);
More information about the wine-cvs
mailing list