Fwd: [draft patch] atl100/tests: Added more tests for AtlAxWin{, Lic} procedure.

Qian Hong qhong at codeweavers.com
Tue Apr 22 16:21:54 CDT 2014


Hi,

A lot of thanks to Nikolay and Jacek for many comments and suggestions :)

While working on tests, I found some differences between atl80 and atl100:

--- snip ---
+    ok(wndproc[0] == wndproc[1], "expected same proc!\n");
--- snip ---

  - On atl80, wndprocs are different for class AtlAxWin80 and class
AtlAxWinLic80, however, wndprocs are the same for class AtlAxWin100 and
class AtlAxWinLic100.

--- snip ---
+        hwnd = CreateWindowW(cls_names[i], NULL, 0, 100, 100, 100, 100,
NULL, N
ULL, NULL, NULL);
+        ok(hwnd != NULL, "CreateWindow failed!\n");
+        control = (IUnknown *)0xdeadbeef;
+        res = AtlAxGetControl(hwnd, &control);
+        todo_wine ok(res == E_FAIL, "AtlAxGetControl failed with res
%08x\n", res);
--- snip ---

- On atl80, CreateWindow with NULL window name or empty name, then call
AtlAxGetControl, result is S_OK. On atl100, the same test show that
result is E_FAIL. control is NULL in both situation.

We've already shared source between different atl version, so it would
be annoying to change the code to match different edge case on different
version of atl. As far as now, I can't find any real world app depends
on any of the above different edge result, so I guess we'd better follow
what atl100 does even in atl80 code, would we?

Thanks for any comments.

---
   dlls/atl100/tests/atl.c | 159
++++++++++++++++++++++++++++++++++++++++++++----
   1 file changed, 147 insertions(+), 12 deletions(-)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-atl100-tests-Added-more-tests-for-AtlAxWin-Lic-procedu.txt
Type: text/x-patch
Size: 9037 bytes
Desc: not available
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20140423/69684673/attachment.bin>


More information about the wine-devel mailing list