[PATCH 2/4] shell32/tests: Add tests for ShellLinkObject.

Myah Caron qsniyg at protonmail.com
Sun Sep 13 16:44:20 CDT 2020


Thanks for the review! Sorry, I v2'd before seeing your email.

On Sunday, September 13, 2020 2:13 PM, Nikolay Sivov <nsivov at codeweavers.com> wrote:

> On 9/13/20 11:34 PM, Myah Caron wrote:
>
> > -   GetTempPathW(MAX_PATH, path);
> > -   GetCurrentDirectoryW(MAX_PATH, orig_dir);
> > -   SetCurrentDirectoryW(path);
> > -   V_VT(&v) = VT_BSTR;
> > -   V_BSTR(&v) = SysAllocString(path);
> > -   hr = IShellDispatch_NameSpace(sd, v, &folder);
> > -   ok(hr == S_OK, "got 0x%08x\n", hr);
> > -   VariantClear(&v);
>
> Do you really need to change the cwd? Does it work if you pass full path
> as 'v'?
>

The reason for this was for simplicity when creating paths (winetest_empty_file.txt and winetest_filled.lnk).

> > -   dispatch = (IDispatch*)0xdeadbeef;
> > -   hr = FolderItem_get_GetLink(item, &dispatch);
> > -   todo_wine ok(hr == S_OK, "got 0x%08x\n", hr);
> > -   todo_wine ok(dispatch && dispatch != (IDispatch*)0xdeadbeef, "got %p\n", dispatch);
>
> This one should really check that returned is pointer is not NULL.
>
> > -   str = SysAllocString(L"winetest_filled.lnk");
> > -   Folder2_ParseName(folder2, str, &item);
> > -   ok(hr == S_OK, "got 0x%08x\n", hr);
> > -   SysFreeString(str);
>
> Missing assignment.
>
> > -          str = (BSTR)0xdeadbeef;
> >
> >
> > -          hr = IShellLinkDual2_get_Path(sld, &str);
> >
> >
> > -          todo_wine ok(hr == S_OK, "got 0x%08x\\n", hr);
> >
> >
> > -          if (hr == S_OK) {
> >
> >
> > -              GetFullPathNameW(L"winetest_empty_file.txt", MAX_PATH, tempW, NULL);
> >
> >
> > -              ok(!wcscmp(str, tempW), "got %s\\n", wine_dbgstr_w(str));
> >
> >
> > -              SysFreeString(str);
> >
> >
> > -          }
> >
> >
>
> Same as above, just set it to NULL.





More information about the wine-devel mailing list