Commit Graph

129 Commits

Author SHA1 Message Date
Francois Gouget cc240bdb14 shell32/tests: Fix test_dde_default_app() on Windows XP SP1.
There are three possible sets of results: Windows <= 2000, XP SP1 and >= XP SP2.
Use the first two tests to figure out which results to expect.
Only accept the >= XP SP2 results in Wine.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 20:03:32 +09:00
Francois Gouget b742145cab shell32/tests: Fix the DDE tests on Windows 10.
Windows 10 does not call WaitForInputIdle() if the DDE server is a
console application. So force the call by adding
SEE_MASK_WAITFORINPUTIDLE.  Also Windows calls WaitForInputIdle() with a
60s timeout and while we should not hit it, trace and cap it to 5s
anyway.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 20:03:32 +09:00
Francois Gouget a090eff243 shell32/tests: Fix okShell()'s tracing so it takes todo and other flags into account.
This also causes the ShellExecute() and association descriptions to be
printed with each failing test. This makes the messages more readable in
TestBot's abbreviated logs, at the cost of a lot more redundancy.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-08 13:46:02 +09:00
Francois Gouget 805b5e36a9 shell32/tests: Add server-side DDE checks.
Should something go wrong a failed ok() call will leave a clearer trace
in the log than an assert.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:20 +09:00
Francois Gouget 446ade3b3c shell32/tests: Test environment variable inheritance with ShellExecute().
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:20 +09:00
Francois Gouget bdfaa8c807 shell32/tests: Check for failures in the child process.
Return the number of failures through both the child result file and the process exit code.
Also rename the child result file section to 'Child' since it no longer only contains 'Arguments'.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:19 +09:00
Francois Gouget 30230fae5f shell32/tests: Check the child process exit code and close the process handle.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:19 +09:00
Francois Gouget 3a9b09aa7d shell32/tests: Declare childPrintf() as a printf-style function.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:18 +09:00
Francois Gouget 38ad0ee01d shell32/tests: Reorder the functions to avoid forward declarations.
This also groups the helpers in a more logical fashion.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:18 +09:00
Francois Gouget 759bd96ac2 shell32/tests: Add traces to the WaitForInputIdle() hooking process.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:17 +09:00
Francois Gouget 78ada2e154 shell32/tests: Fix a couple of okChildPath()/okChildString() mixups.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 15:51:07 +09:00
Francois Gouget 3079179753 shell32/tests: Show that verbs and classes override ShellExecute()'s normal handling of executables.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 15:51:04 +09:00
Francois Gouget 2c0daad786 shell32/tests: Test handling of nonexistent verbs in ShellExecute() & co.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 15:51:00 +09:00
Francois Gouget 198e0d5d78 shell32/tests: Trace the association properties for the DDE tests.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-26 23:17:57 +09:00
Francois Gouget 7e000abeda shell32/tests: Call okShell() after a shell_execute{_ex}() test.
This ensures all the failed call parameters will be traced.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-26 23:17:24 +09:00
Francois Gouget c133ef7326 shell32/tests: Trace the last ShellExecute command whenever a corresponding test fails.
okShell() serves to encapsulate handling of shell_call and also provides a means for further extensions.

Remove the shell_call static initialization to not hide potential
use-before-assignment compiler warnings.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-26 23:17:05 +09:00
Francois Gouget 09dac2f482 shell32/tests: Use the shell_execute{_ex}() call site for its traces and error messages.
This makes it easier to match their internal test failures with the site of the real test.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-19 21:44:15 +09:00
Francois Gouget 9cc07a2b31 shell32/tests: Trace the effective ShellExecuteEx() flags.
shell_execute_ex() adds some flags for its own internal needs. The
traces should reflect that.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-13 23:47:04 +09:00
Francois Gouget f816bc93b0 shell32/tests: Tweak some overly optimistic ok() messages.
ShellExecute() is more likely to have returned an unexpected error code
than it is to have succeeded.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-13 23:46:53 +09:00
Francois Gouget 3dff8bc213 shell32/tests: Fix the shortcut vs. class interaction test.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-12 19:10:04 +09:00
Francois Gouget 201de16e30 shell32/tests: Create_test_association() should either succeed or fail due to insufficient permissions.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-12 19:10:04 +09:00
Francois Gouget 0a867de22d shell32/tests: Check the hProcess field when ShellExecuteEx() fails.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-12 19:10:04 +09:00
Francois Gouget 2fb84d5c50 shell32/tests: The expectedArgs parameter of the DDE tests is an argument count, not a boolean.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-12 19:10:03 +09:00
Piotr Caban 943ead5022 shell32: Fix SHELL_execute code that removes quote arround file name. 2015-07-16 16:29:12 +09:00
Piotr Caban 8e853a3e90 shell32: Remove code for separating arguments from file path. 2015-07-16 16:29:06 +09:00
Nikolay Sivov 28caa68d41 shell32/tests: Try harder to close Open With window. 2015-07-07 16:52:20 +09:00
Huw Davies f5e16e0638 shell32/tests: Win 2k doesn't cope with spaces in the path. 2015-07-07 16:52:20 +09:00
Huw Davies c5053f5712 shell32/tests: Win XP splits the args if there are spaces in the path.
This isn't seen on winetest runs, but is when jobs are submitted to
the testbot.  Presumably the path of the executable is different in
the two cases.
2015-07-07 16:52:19 +09:00
Sebastian Lackner d892239f5a shell32: Return NULL-terminated list of arguments in CommandLineToArgvW. 2014-07-09 09:29:33 +02:00
Vincent Povirk 3ebb9b7b75 shell32/tests: Use SW_HIDE with ShellExecuteA in tests. 2014-05-07 21:28:46 +02:00
Vincent Povirk 3d1cf168cf shell32/tests: Use SEE_MASK_NO_CONSOLE with ShellExecuteExA. 2014-04-25 10:22:47 +02:00
Hans Leidekker 807998ed4c shell32/tests: Mark some test results as broken. 2014-04-01 18:20:45 +02:00
Hans Leidekker e957dd89f9 shell32/tests: Remove todo handling from DDE tests. 2014-04-01 18:20:43 +02:00
Jacek Caban cf2098cf2d shell32/tests: Ensure that tmpdir contains long path name. 2014-02-19 16:46:19 +01:00
Francois Gouget 3e033bb130 shell32/tests: Skip any test that needs the .shlexec association if we could not create it. 2014-02-12 19:15:26 +01:00
Nikolay Sivov de686e9949 shell32/tests: Remove some assertions in test code. 2014-02-05 13:49:32 +01:00
Nikolay Sivov fa93dadfa1 shell32/tests: Fix compilation with -D__WINESRC__. 2013-10-28 14:22:20 +01:00
Frédéric Delanoy 44b2fd269e shell32/tests: Use BOOL type where appropriate. 2013-10-21 10:44:34 +02:00
Francois Gouget 68c1bf507d shell32: Standardize on the ShellExecuteEx() terminology. 2012-10-18 19:21:10 +02:00
Francois Gouget 47d4041dc1 shell32/tests: Fix a test_argify() check that fails on NT4 and Windows 2000. 2012-10-16 20:39:47 +02:00
Francois Gouget 53e4ddc399 shell32: Fix ShellExecute()'s handling of file URLs. 2012-10-10 10:37:37 +02:00
Francois Gouget eee9b8ee12 shell32/tests: Simplify shlexec's test_directory() and add some more tests. 2012-10-10 10:37:27 +02:00
Francois Gouget 0c989fb078 shell32: Don't expand environment variables in ShellExecute()'s parameters argument. 2012-10-09 10:04:11 +02:00
Francois Gouget 40b01c1bfc shell32: Fix CommandLineToArgvW()'s handling of the executable path and consecutive quotes. 2012-10-09 10:04:04 +02:00
Francois Gouget 1e3834aa14 shell32/tests: Fix test_one_cmdline() and add a few more tests.
test_one_cmdline() did not check the last parameter.
2012-10-09 10:03:25 +02:00
Francois Gouget 61f894c576 shell32/tests: Greatly expand the test_argify() tests. 2012-10-08 12:54:55 +02:00
Francois Gouget e440a7d22c shell32/tests: Merge shlexec's test_exes_long() with the other parameter passing tests.
Also remove the pointless noassoc test (duplicated from test_exes()).
2012-10-08 12:54:54 +02:00
Francois Gouget ab654c63cf shell32/tests: Add more ShellExecute() shortcut tests. 2012-10-08 12:54:53 +02:00
Francois Gouget 9ec7ab3fa0 shell32/tests: Write proper tests for CommandLineToArgvW(). 2012-10-04 10:42:40 +02:00
Francois Gouget da6b02ceb1 shell32/tests: Simplify shlexec's test_argify() and test_lpFile_parsed() and avoid numeric literals. 2012-10-04 10:42:25 +02:00