[PATCH 2/4] shdocvw: Implement IWebBrowser_ExecWB.

Jacek Caban jacek at codeweavers.com
Thu Jan 20 05:00:52 CST 2011

On 1/19/11 9:31 PM, Erich Hoover wrote:
> On Wed, Jan 19, 2011 at 1:05 PM, Jacek Caban<jacek at codeweavers.com>  wrote:
>> On 1/18/11 7:31 PM, Erich Hoover wrote:
>>>    I've attached a test where I disabled the client/container, and you
>>> can see that it then gets passed through (QueryStatusWB will return
>> success instead of passing through the client target and returning
>> failure):
>>> https://testbot.winehq.org/JobDetails.pl?Key=8408
>> Hmm, it means that another run of tests (at least required subset of
>> existing test_WebBrowser) with client's IOleCommandTarget disabled would
>> be interesting. Do you feel like writing it? Otherwise we'd need at  least
>> a FIXME in this case.
> I've been working on putting such a test together, I actually just
> finished it up when I got your message.  It's attached to this email,
> and I would appreciate it if you would take a look - it ends up being
> rather non-trivial since native caches the IOleCommandTarget on
> creation of the container.
> Corresponding test results:
> https://testbot.winehq.org/JobDetails.pl?Key=8449

Thanks. I have a few comments:

+static int OleContainer_use_custom_target = TRUE;

Please name it without mixing naming convention, something like use_container_olecmd would do.

+    case IDM_STOP:
+        prgCmds[0].cmdf = 0;
+        return S_OK;

CHECK_EXPECT(QueryStatus_STOP) would be nice here.

+    ok(status&  success_flag, "OLECMDID_STOP not enabled/supported: %08x\n", status);

You could test the exact value here: ok(status == ...)

+    ok(!(status&  success_flag), "IDM_STOP enabled/supported: %08x\n", status);

And here.

+static void test_CommandTargetPassthru(int use_custom_target)

test_CommandTargetPassthru(TRUE) could go to existing test_WebBrowser.

+    if (!target)
+        return E_FAIL;

A test for this case would be nice. Also with this patch, testing ExecEB shouldn't be too hard, let's test it as well.


More information about the wine-devel mailing list