user32:tests:msg Add test for switch mdi childs

Dmitry Timoshkov dmitry at codeweavers.com
Sun Jun 3 00:07:44 CDT 2007


"Anatoly Lyutin" <vostok at etersoft.ru> wrote:

> +/* Switch visible mdi childs  */

Please use the word 'children' to avoid confusion.

> +    trace("Switch child window.\n");
> +
> +    ret = SendMessageA(mdi_client, WM_MDIACTIVATE, (WPARAM)mdi_child2, 0);
> +    ok(!ret, "Child not been deactivate(Switch test)\n");

active_child == mdi_child2, so it's not clear what you try to do in the test above.
Besides, you don't check any subsequences of the call.

Since below starts another test 'flush_sequence();' should be added before.

> +    ret = SendMessageA(mdi_client, WM_MDIACTIVATE, (WPARAM)mdi_child, 0);
> +
> +    ok(!ret, "Child not activate(Switch test)\n");
> +    
> +    ok_sequence(WmSwitchChild,"Child not switch correctly\n",TRUE);

Again, you don't check any subsequences of the call.

Also if you could add comments in the added message sequence what is going on,
it will help a lot later figuring out how to make the test pass under Wine.
Something along the following lines present in the existing sequences:

/* maximize the 1st MDI child */
...
/* restore the 2nd MDI child */
...
    { WM_CHILDACTIVATE, sent|defwinproc|wparam|lparam, 0, 0 }, /* in the 1st MDI child */
    { WM_NCACTIVATE, sent|wparam|defwinproc, 0 }, /* in the 1st MDI child */
    { WM_MDIACTIVATE, sent|defwinproc }, /* in the 1st MDI child */
...
    { WM_KILLFOCUS, sent }, /* in MDI client */
    { WM_IME_SETCONTEXT, sent|wparam|optional, 0 }, /* in MDI client */

etc.

I understand that this is a tedious work, but it should be done.

-- 
Dmitry.



More information about the wine-devel mailing list