Hi Jacek,
On 11/30/2010 01:38 PM, Jacek Caban wrote:
+static HRESULT WINAPI PropertyNotifySink_OnChanged(IPropertyNotifySink *iface, DISPID dispID) +{
- if(dispID == DISPID_READYSTATE){
BSTR state;
HRESULT hres;
static const WCHAR completeW[] = {'c','o','m','p','l','e','t','e',0};
hres = IHTMLDocument2_get_readyState(notif_doc,&state);
ok(hres == S_OK, "get_readyState failed: %08x\n", hres);
if(!lstrcmpW(state, completeW))
This will always succeed on Win9x.
+static HWND create_container_window(void) +{
- static const WCHAR wszHTMLDocumentTest[] =
{'H','T','M','L','D','o','c','u','m','e','n','t','T','e','s','t',0};
- static WNDCLASSEXW wndclass = {
sizeof(WNDCLASSEXW),
0,
wnd_proc,
0, 0, NULL, NULL, NULL, NULL, NULL,
wszHTMLDocumentTest,
NULL
- };
- RegisterClassExW(&wndclass);
- return CreateWindowW(wszHTMLDocumentTest, wszHTMLDocumentTest,
WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT,
515, 530, NULL, NULL, NULL, NULL);
+}
This will not work on Win9x as well. My Win98 box runs IE6 so it will run these tests I guess (unlike the win98 testbot).
On 11/30/2010 01:56 PM, Paul Vriens wrote:
Hi Jacek,
On 11/30/2010 01:38 PM, Jacek Caban wrote:
+static HRESULT WINAPI PropertyNotifySink_OnChanged(IPropertyNotifySink *iface, DISPID dispID) +{
- if(dispID == DISPID_READYSTATE){
- BSTR state;
- HRESULT hres;
- static const WCHAR completeW[] = {'c','o','m','p','l','e','t','e',0};
- hres = IHTMLDocument2_get_readyState(notif_doc,&state);
- ok(hres == S_OK, "get_readyState failed: %08x\n", hres);
- if(!lstrcmpW(state, completeW))
This will always succeed on Win9x.
+static HWND create_container_window(void) +{
- static const WCHAR wszHTMLDocumentTest[] =
- {'H','T','M','L','D','o','c','u','m','e','n','t','T','e','s','t',0};
- static WNDCLASSEXW wndclass = {
- sizeof(WNDCLASSEXW),
- 0,
- wnd_proc,
- 0, 0, NULL, NULL, NULL, NULL, NULL,
- wszHTMLDocumentTest,
- NULL
- };
- RegisterClassExW(&wndclass);
- return CreateWindowW(wszHTMLDocumentTest, wszHTMLDocumentTest,
- WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT,
- 515, 530, NULL, NULL, NULL, NULL);
+}
This will not work on Win9x as well. My Win98 box runs IE6 so it will run these tests I guess (unlike the win98 testbot).
This is what I get on my win9 box:
activex.c:480: Test failed: UIActivate failed: 800700b7 activex.c:486: Test failed: Show failed: 800700b7 activex: 24 tests executed (0 marked as todo, 2 failures), 0 skipped
Changing the lstrcmpW and using A-functions to create the window makes the tests succeed on my win98 box (changed activex.c attached).
Hi Paul,
On 11/30/10 2:46 PM, Paul Vriens wrote:
Changing the lstrcmpW and using A-functions to create the window makes the tests succeed on my win98 box (changed activex.c attached).
Thanks for catching it. How about this version: http://source.winehq.org/patches/data/68936 I would prefer to forget about win9x when writing tests, so I've skipped as much as possible on them.
Thanks, Jacek
On 11/30/2010 03:42 PM, Jacek Caban wrote:
Hi Paul,
On 11/30/10 2:46 PM, Paul Vriens wrote:
Changing the lstrcmpW and using A-functions to create the window makes the tests succeed on my win98 box (changed activex.c attached).
Thanks for catching it. How about this version: http://source.winehq.org/patches/data/68936 I would prefer to forget about win9x when writing tests, so I've skipped as much as possible on them.
I guess that's AJ's call? Taking this approach is fine with me but we could then start considering whether we still want to test on Win9x. Microsoft has abandoned those old versions already so maybe we are the only solution for old programs (and we thus need tests?).
Or are you only talking about stuff like mshtml/shdocvw ....?
On 11/30/10 3:49 PM, Paul Vriens wrote:
On 11/30/2010 03:42 PM, Jacek Caban wrote:
Hi Paul,
On 11/30/10 2:46 PM, Paul Vriens wrote:
Changing the lstrcmpW and using A-functions to create the window makes the tests succeed on my win98 box (changed activex.c attached).
Thanks for catching it. How about this version: http://source.winehq.org/patches/data/68936 I would prefer to forget about win9x when writing tests, so I've skipped as much as possible on them.
I guess that's AJ's call? Taking this approach is fine with me but we could then start considering whether we still want to test on Win9x. Microsoft has abandoned those old versions already so maybe we are the only solution for old programs (and we thus need tests?).
Or are you only talking about stuff like mshtml/shdocvw ....?
I was mostly talking about stuff I work on, but since you brought the topic here is my opinion:
I can see that these tests may be useful sometimes, eg. if someone is interested in old apps that don't run on new Windows. But the honest true is that it's not what happens with our tests. All we usually do with old Windows or old IEs is blindly (well, not always, you do better than that) marking them as broken. The result is that our tests have more complicated code and are less strict. Thus my personal strategy is different: leave win9x (or old IEs for that matter) alone as long as they don't cause troubles. As soon as there is a trouble with a test on a platform that I don't care about, I just disable the whole file. This way I don't waste my time on uninteresting platforms, the code stays cleaner and tests remain stricter, giving win9x tests a chance to prove itself. I've already sent quite a few patches applying this strategy to different tests.
Jacek
Jacek Caban jacek@codeweavers.com writes:
I can see that these tests may be useful sometimes, eg. if someone is interested in old apps that don't run on new Windows. But the honest true is that it's not what happens with our tests. All we usually do with old Windows or old IEs is blindly (well, not always, you do better than that) marking them as broken. The result is that our tests have more complicated code and are less strict. Thus my personal strategy is different: leave win9x (or old IEs for that matter) alone as long as they don't cause troubles. As soon as there is a trouble with a test on a platform that I don't care about, I just disable the whole file. This way I don't waste my time on uninteresting platforms, the code stays cleaner and tests remain stricter, giving win9x tests a chance to prove itself. I've already sent quite a few patches applying this strategy to different tests.
The value of running tests on Win9x these days is certainly questionable. We don't try to emulate the Win9x behavior anyway, except in a very few cases (which most likely don't have tests...) so it only serves to document historical behavior that nobody cares about any longer.
I wouldn't be opposed to switching off win9x test runs and getting rid of the corresponding broken().
On 11/30/2010 04:41 PM, Alexandre Julliard wrote:
Jacek Cabanjacek@codeweavers.com writes:
I can see that these tests may be useful sometimes, eg. if someone is interested in old apps that don't run on new Windows. But the honest true is that it's not what happens with our tests. All we usually do with old Windows or old IEs is blindly (well, not always, you do better than that) marking them as broken. The result is that our tests have more complicated code and are less strict. Thus my personal strategy is different: leave win9x (or old IEs for that matter) alone as long as they don't cause troubles. As soon as there is a trouble with a test on a platform that I don't care about, I just disable the whole file. This way I don't waste my time on uninteresting platforms, the code stays cleaner and tests remain stricter, giving win9x tests a chance to prove itself. I've already sent quite a few patches applying this strategy to different tests.
The value of running tests on Win9x these days is certainly questionable. We don't try to emulate the Win9x behavior anyway, except in a very few cases (which most likely don't have tests...) so it only serves to document historical behavior that nobody cares about any longer.
I wouldn't be opposed to switching off win9x test runs and getting rid of the corresponding broken().
So the first thing is a patch to winetest.exe and the winetest website and at the same time tell Greg to exclude it from 'patchwatcher' and the batch running of the (almost) daily winetests.
Cleaning up the tests will come after that and will certainly be a nice long janitorial task.