Module: wine Branch: master Commit: f375123f011f648f91ee3d7072b30bf881968d4a URL: http://source.winehq.org/git/wine.git/?a=commit;h=f375123f011f648f91ee3d7072...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Tue Apr 20 02:57:09 2010 +0400
shell32/tests: Fix a test failure on W2K (unimplemented method).
---
dlls/shell32/tests/shfldr_special.c | 48 ++++++++++++++++++---------------- 1 files changed, 25 insertions(+), 23 deletions(-)
diff --git a/dlls/shell32/tests/shfldr_special.c b/dlls/shell32/tests/shfldr_special.c index 7be2bdf..24374bc 100644 --- a/dlls/shell32/tests/shfldr_special.c +++ b/dlls/shell32/tests/shfldr_special.c @@ -162,32 +162,34 @@ if (0) hr = IShellFolder2_GetDefaultColumnState(folder, 6, &state); ok(broken(hr == E_NOTIMPL) || hr == E_INVALIDARG /* Win7 */, "got 0x%08x\n", hr);
- for(i = 0; i < 6; i++) + hr = IShellFolder2_GetDetailsOf(folder, NULL, 0, &details); + ok(hr == S_OK || broken(E_NOTIMPL) /* W2K */, "got 0x%08x\n", hr); + /* test every column if method is implemented */ + if (hr == S_OK) { - hr = IShellFolder2_GetDetailsOf(folder, NULL, i, &details); - /* doesn't work on W2K */ - if (hr == E_NOTIMPL) break; - - ok(hr == S_OK, "got 0x%08x\n", hr); - /* all columns are left-aligned */ - ok(details.fmt == LVCFMT_LEFT, "got 0x%x\n", details.fmt); - /* can't be on w9x at this point, IShellFolder2 unsupported there, - check present for running Wine with w9x setup */ - if (SHELL_OsIsUnicode()) SHFree(details.str.u.pOleStr); - - hr = IShellFolder2_GetDefaultColumnState(folder, i, &state); - ok(hr == S_OK, "got 0x%08x\n", hr); - /* all columns are string except document count */ - if (i == 1) - ok(state == (SHCOLSTATE_TYPE_INT | SHCOLSTATE_ONBYDEFAULT), "got 0x%x\n", state); - else - ok(state == (SHCOLSTATE_TYPE_STR | SHCOLSTATE_ONBYDEFAULT), "got 0x%x\n", state); + ok(details.str.uType == STRRET_WSTR, "got %d\n", details.str.uType); + + for(i = 0; i < 6; i++) + { + hr = IShellFolder2_GetDetailsOf(folder, NULL, i, &details); + ok(hr == S_OK, "got 0x%08x\n", hr); + + /* all columns are left-aligned */ + ok(details.fmt == LVCFMT_LEFT, "got 0x%x\n", details.fmt); + /* can't be on w9x at this point, IShellFolder2 unsupported there, + check present for running Wine with w9x setup */ + if (SHELL_OsIsUnicode()) SHFree(details.str.u.pOleStr); + + hr = IShellFolder2_GetDefaultColumnState(folder, i, &state); + ok(hr == S_OK, "got 0x%08x\n", hr); + /* all columns are string except document count */ + if (i == 1) + ok(state == (SHCOLSTATE_TYPE_INT | SHCOLSTATE_ONBYDEFAULT), "got 0x%x\n", state); + else + ok(state == (SHCOLSTATE_TYPE_STR | SHCOLSTATE_ONBYDEFAULT), "got 0x%x\n", state); + } }
- hr = IShellFolder2_GetDetailsOf(folder, NULL, 0, &details); - ok(hr == S_OK, "got 0x%08x\n", hr); - ok(details.str.uType == STRRET_WSTR, "got %d\n", details.str.uType); - /* default pidl */ hr = IShellFolder2_QueryInterface(folder, &IID_IPersistFolder2, (void**)&pf); ok(hr == S_OK, "got 0x%08x\n", hr);