diff --git a/programs/winetest/include/wine.pm b/programs/winetest/include/wine.pm index 54cea000b1d..e6d890c76ae 100644 --- a/programs/winetest/include/wine.pm +++ b/programs/winetest/include/wine.pm @@ -26,6 +26,7 @@ package wine; use strict; use vars qw($VERSION @ISA @EXPORT @EXPORT_OK $AUTOLOAD $todo_level $successes $failures $todo_successes $todo_failures + $winetest_report_success %return_types %prototypes %loaded_modules); require Exporter; @@ -63,6 +64,8 @@ $failures = 0; $todo_successes = 0; $todo_failures = 0; %loaded_modules = (); +$winetest_report_success = defined($ENV{WINETEST_REPORT_SUCCESS}) ? $ENV{WINETEST_REPORT_SUCCESS} : 0; + # -------------------------------------------------------------- # | Return-type constants | @@ -466,7 +469,11 @@ sub ok($;$) ($description ? ": $description" : "") . "\n"); $failures++; } - else { $successes++; } + else + { + print STDERR ("$filename:$line: Test succeeded\n") if ($winetest_report_success); + $successes++; + } } } diff --git a/programs/winetest/runtest b/programs/winetest/runtest index 9516fdf9029..5dc0c56a492 100755 --- a/programs/winetest/runtest +++ b/programs/winetest/runtest @@ -32,6 +32,7 @@ Usage: $0 [options] input_file [perl_args...] Options: -q quiet mode -v verbose mode (can be specified multiple times) + -s announce successful tests -p prog name of the program to run for C tests -I dir prepend dir to Perl include path -P name set the current platform name @@ -60,6 +61,7 @@ while ($#ARGV >= 0) if ($arg eq "-p") { $program = shift @ARGV; next; } if ($arg eq "-q") { $ENV{WINETEST_DEBUG} = 0; next; } if ($arg eq "-v") { $ENV{WINETEST_DEBUG}++; next; } + if ($arg eq "-s") { $ENV{WINETEST_REPORT_SUCCESS} = 1; next;} if ($arg eq "-P") { $platform = shift @ARGV; next; } if ($arg eq "-M") { push @modules, split /,/, shift @ARGV; next; } if ($arg eq "-I") { push @include_dirs, shift @ARGV; next; } diff --git a/programs/winetest/wtmain.c b/programs/winetest/wtmain.c index 9124324a608..ebae897cd3e 100644 --- a/programs/winetest/wtmain.c +++ b/programs/winetest/wtmain.c @@ -32,6 +32,9 @@ int winetest_debug = 1; /* current platform */ const char *winetest_platform = "windows"; +/* report successful tests (BOOL) */ +int winetest_report_success = 0; + struct test { const char *name; @@ -123,7 +126,13 @@ int winetest_ok( int condition, const char *msg, ... ) InterlockedIncrement(&failures); return 0; } - else InterlockedIncrement(&successes); + else + { + if( winetest_report_success) + fprintf( stderr, "%s:%d: Test succeeded\n", + data->current_file, data->current_line); + InterlockedIncrement(&successes); + } } return 1; } @@ -238,6 +247,8 @@ int main( int argc, char **argv ) if ((p = getenv( "WINETEST_PLATFORM" ))) winetest_platform = p; if ((p = getenv( "WINETEST_DEBUG" ))) winetest_debug = atoi(p); + if ((p = getenv( "WINETEST_REPORT_SUCCESS"))) winetest_report_success = \ + atoi(p); if (!argv[1]) { fprintf( stderr, "Usage: %s test_name\n", argv[0] );