Commit graph

400 commits

Author SHA1 Message Date
Francois Gouget
dfcc45cc17 winetest: Trace the keyboard layout.
It is important for the input tests so add it to the global locale
information.
2023-02-17 18:59:29 +01:00
Francois Gouget
cac02872c6 winetest: Avoid an infinite loop in vstrfmtmake() when the format is NULL.
When the format is NULL vsnprintf() always returns -1 so we keep
doubling the allocated memory until running out of memory.
2023-02-14 09:57:07 +01:00
Francois Gouget
b07129bad4 winetest: Don't use plain strings as format specifiers.
When they contain a percent character they would, at best, not be
printed correctly, and at worst cause a crash.
2023-02-14 09:57:07 +01:00
Francois Gouget
75e8f4edb7 winetest: Let the get_subtests() caller report errors.
The caller already analyses get_subtests() errors and provides
a detailed error message in the information section of the report
so the report(R_ERROR) pop up / stderr message is redundant.
2022-10-20 18:29:59 +02:00
Alexandre Julliard
657cdc1861 winetest: Report failure for tests that print too much output. 2022-09-14 22:38:34 +02:00
Alexandre Julliard
12bf088ac0 winetest: Don't require an email if we have a URL. 2022-09-13 16:22:21 +02:00
Alexandre Julliard
0f96288080 winetest: Report success if the report has been submitted successfully. 2022-09-08 20:36:33 +02:00
Alexandre Julliard
1bc6b9622f winetest: Add extra quiet mode that only outputs data for failed tests. 2022-09-07 20:07:18 +02:00
Alexandre Julliard
4b590b212d winetest: Add helper functions for temp file handling. 2022-09-07 20:07:18 +02:00
Alexandre Julliard
dbb55ed91a makefiles: Add install-test target to install winetest.exe. 2022-09-07 20:07:18 +02:00
Alexandre Julliard
5fabd968d4 winetest: Exit with error 3 when there are test failures. 2022-08-16 22:27:50 +02:00
Alexandre Julliard
3deabed43d winetest: Disable the crash dialog in non-interactive mode. 2022-08-16 17:41:53 +02:00
Alexandre Julliard
6ae99e4da0 winetest: Support loading the list of tests from a file. 2022-08-16 17:41:53 +02:00
Alexandre Julliard
22aceb44e7 winetest: Use CRT allocation functions. 2022-08-16 11:57:39 +02:00
Francois Gouget
bf42dca35f winetest: Also trace the country and ANSI code page.
Tracing the ANSI code page is useful to identify tests run in
Windows' UTF-8 mode.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 22:10:47 +01:00
Eric Pouech
d34b3021b3 winetest: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-07 11:00:06 +01:00
Eric Pouech
bb1fc33570 include/msvcrt: Add attribute((format)) to printf and scanf -like APIs.
Fix a bunch of warnings generated by this patch and the migration of
GUID.Data1 to long in ae2693e2c4

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-31 18:38:55 +01:00
Alexandre Julliard
f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Eric Pouech
53085f10f1 winetest: Use correct integral type.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 11:12:47 +01:00
Francois Gouget
2da7e5de23 winetest: Send the tests output to stdout when given "-o -".
This makes it easier to use WineTest with tools that capture stdout,
such as the TestBot.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-20 17:52:07 +01:00
Francois Gouget
99d36ccfb9 winetest: Don't truncate oversize reports before sending them.
test.winehq.org already sets $CGI::POST_MAX to reject oversize reports.
Furthermore truncated reports are rejected anyway.
So avoid the code duplication and inconsistencies between the winetest
and test.winehq.org (or other site) size limits.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-28 18:25:16 +02:00
Alexandre Julliard
acefbcf6c9 winetest: Use the standard va_list instead of __ms_va_list.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-25 11:02:53 +02:00
Alexandre Julliard
088a787a2c makefiles: Make -mno-cygwin the default.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Zhiyi Zhang
54ac92790a winetest: Add system DPI awareness settings to the application manifest.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-08 08:54:58 +02:00
Francois Gouget
2197bc9a92 winetest: Fix handling of relative -d directories.
Convert them to an absolute path so they result in a command line which
is still valid after changing the current directory in CreateProcess().

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-26 19:42:25 +02:00
Francois Gouget
dc8ef75904 winetest: Create the -d directory if it does not exist already.
'winetest.exe' automatically creates '%TEMP%\wct' (or an alternative new
directory).
'winetext.exe -x DIR' automatically creates DIR.
'winetest.exe -d DIR' now automatically creates DIR too.
In all cases newly created directories are removed after the tests.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-19 15:37:47 +02:00
Francois Gouget
37ea62f674 winetest: Report GetLastError() when CreateProcess() fails.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-05 19:55:30 +02:00
Zhiyi Zhang
b527c13c54 winetest: Enable visual styles.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-16 09:00:16 +02:00
Francois Gouget
f932fb327a winetest: Fix the path to the ntoskrnl.exe/tests source.
It's the only test with a .exe extension for which the source is not in
programs!

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-29 23:37:45 +02:00
Francois Gouget
5549ad21b3 winetest: Trace skipped dlls when in exclude (-n) mode.
When the command line specifies the list of tests to run, tracing all
the skipped dlls unnecessarily spams the test output.
But when the command line contains the list of (at most 64) excluded
dlls, tracing them ensures tools analysing the report know why the
corresponding dlls were skipped.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-21 10:53:11 +02:00
Francois Gouget
55f648fac9 winetest: Clarify the 'version not present' error.
Most of the time the library is actually missing (or only available in
the wrong bitness). Show the error code to help diagnose the other
cases.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 18:42:47 +02:00
Francois Gouget
44222dc9f2 winetest: Detect and report the missing side-by-side version errors.
This replaces the 'load error 14001' error message with a clearer 'dll
is missing' information message.

Signed-off-by: Francois Gouget <fgouget@icodeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 18:42:47 +02:00
Francois Gouget
12cfe68267 winetest: Remove the obsolete revision placeholder.
Back in the CVS days the start line contained the revision of the test
file. But it has been replaced by a placeholder since the switch to
Git.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:49:33 +01:00
Francois Gouget
100b81e8a8 winetest: Don't parse the test list if 'test --list' failed.
Any non-zero exit code is grounds for ignoring the 'test --list'
output.
This also causes get_subtests() to return the actual process exit code
rather than a generic internal error when it fails to parse the test
list.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-16 10:47:02 +01:00
Francois Gouget
e618fb526d winetest: Fix detecting whether a test can be run or not.
Rather than second-guessing the loader, run 'test.exe --list' with the
critical-error handler message box disabled and use the resulting exit
codes.
But keep the activation context and COM code to improve the chances of
getting the dll version.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45032
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50783
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-16 10:46:56 +01:00
Francois Gouget
18c12c6dbb winetest: Show more detailed version error information.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 22:22:19 +01:00
Francois Gouget
21e9d51b36 winetest: Simplify the 'dll is native' error message.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 22:22:19 +01:00
Francois Gouget
e9a0eeff41 winetest: Avoid duplicating the extract_test_proc() cleanup code.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 19:01:38 +01:00
Alexandre Julliard
1dd3051cca makefiles: Generate a single non-recursive makefile at the top level.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:39 +02:00
André Hentschel
c0e3a265b5 winetest: Remove support for PPC32.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-17 16:46:14 +02:00
Jacek Caban
adc34d4a29 winetest: Build with msvcrt.
Allows running tests on Windows without ucrtbase.dll.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:29 +01:00
Michael Stefaniuc
8576d5ad84 winetest: Remove superfluous cast to self.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-11 21:51:28 +01:00
Alexandre Julliard
ed6a5e97e0 programs: Make all program entrypoints cdecl.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 17:05:47 +02:00
Alexandre Julliard
15c4352f4c winetest: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 11:08:17 +02:00
Alexandre Julliard
3a02bc2ecd winetest: Also check for builtin dll signature.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-22 19:48:26 +02:00
Francois Gouget
7f37fc1360 winetest: Tweak the wording of an error message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-11 15:54:06 +01:00
Alexandre Julliard
cb078bd3bf makefiles: Look in the extra targets for dependencies.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-30 19:36:51 +01:00
Alexandre Julliard
364f97c2e1 makefiles: Output rules for building generated .rc files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-30 19:36:51 +01:00
Michael Stefaniuc
0b788e9a72 winetest: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 09:44:12 +02:00
Francois Gouget
9b1431459d winetest: Don't show dll=skipped messages for skipped tests.
This spams the report when using WineTest to run a few tests.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-20 11:22:55 +02:00