2016-03-07 4:38 GMT+08:00 Henri Verbeet hverbeet@gmail.com:
With improved wine test suite, her workflow can be
- Edit graphics driver
- wine_test_suite --test_dll d3dx9_36 d3d9 d3d8 etc. --output result.txt
- Edit graphics driver again
- wine_test_suite --test_dll d3dx9_36 d3d9 d3d8 etc. --compare result.txt
And the script will tell Alice whether she had introduced, or fixed a bug.
winetest can do this.
Do you mean setting the filter in winetest?
To stick with the example, you'd do something like winetest -c -t <tag> -m <email> -o result.txt d3dx9_36 d3d9 d3d8 etc.
So we can do
winetest -c -t <tag> -m <email> -o result_with_old_driver.txt d3dx9_36 d3d9 d3d8 etc. blah... winetest -c -t <tag> -m <email> -o result_with_new_driver.txt d3dx9_36 d3d9 d3d8 etc.
Then compare these two results with external tools(like diff or vimdiff)
Or do you have a better solution for this need?
This sounds good. A straight approach is to scan Makefile.in, and generate a dependence tree from IMPORT and DELAYIMPORTS. However, I'm wondering how to handle the dynamic dependencies. For example, in dlls/mshtml/xmlhttprequest.c, we have hres = CoCreateInstance(&CLSID_DOMDocument, NULL, CLSCTX_INPROC_SERVER, &IID_IXMLDOMDocument, (void**)&xmldoc); And the development for msxml really affected mshtml.dll's behavior.
Yeah, that would be a problem. (Provided we care about those. For Direct3D it's generally not an issue.)
Will it be too complicated if we allow developers to declare dynamic dependency manually? For example, I can add a line ## DEPENDENCY msxml3 in dlls/mshtml/Makefile.in to declare that mshtml.dll will depend on msxml3.dll dynamically.
Also, we need to handle the redirection in spec file. For example, almost all the function calls for d3dx9_* are redirected to d3dx9_36.dll