mirror of
				https://github.com/samba-team/samba.git
				synced 2025-10-31 12:23:52 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			71 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/perl
 | |
| # Simple subunit parser
 | |
| # (C) 2006 Jelmer Vernooij <jelmer@samba.org>
 | |
| 
 | |
| use strict;
 | |
| use Getopt::Long;
 | |
| 
 | |
| my $numtests = 0;
 | |
| my $numfails = 0;
 | |
| my $numskips = 0;
 | |
| my $numsuccess = 0;
 | |
| 
 | |
| my $opt_help = 0;
 | |
| my $opt_progress = 0;
 | |
| 
 | |
| my $result = GetOptions (
 | |
| 	    'help|h|?' => \$opt_help, 
 | |
| 		'progress' => \$opt_progress
 | |
| 	    );
 | |
| 
 | |
| if (not $result) {
 | |
| 	exit(1);
 | |
| }
 | |
| 
 | |
| if ($opt_help) {
 | |
| 	print "subunit output summarizer\n";
 | |
| 	print "Copyright (C) 2006 Jelmer Vernooij <jelmer\@samba.org>\n";
 | |
| 	print "\n";
 | |
| 	print "Usage: subunit-summary [OPTION]\n";
 | |
| 	print " --help			Print this help message\n";
 | |
| 	print "\n";
 | |
| 	exit(0);
 | |
| }
 | |
| 
 | |
| while(<STDIN>) {
 | |
| 	next unless (/^(.+): (.+?)( \[)?$/);
 | |
| 	if ($1 eq "test") {
 | |
| 		$numtests++;
 | |
| 	} elsif ($1 eq "error") {
 | |
| 		print "E" if ($opt_progress);
 | |
| 	} elsif ($1 eq "failure") {
 | |
| 		$numfails++;
 | |
| 		print "F" if ($opt_progress);
 | |
| 	} elsif ($1 eq "success") {
 | |
| 		$numsuccess++;
 | |
| 		print "." if ($opt_progress);
 | |
| 	} elsif ($1 eq "skip") {
 | |
| 		$numskips++;
 | |
| 		print "I" if ($opt_progress);
 | |
| 	} elsif ($1 eq "testsuite") {
 | |
| 		if ($opt_progress) {
 | |
| 			if ($numtests) { print "\n"; }
 | |
| 			print "$2: ";
 | |
| 		}
 | |
| 	}
 | |
| }
 | |
| 
 | |
| print "\n" if ($opt_progress);
 | |
| 
 | |
| if ($numtests == 0) {
 | |
|     print "No tests run\n";
 | |
|     exit(0);
 | |
| }
 | |
| 
 | |
| printf("%d%%: %d tests, %d succeeded, %d failed, %d skipped\n", 
 | |
|        ($numsuccess / $numtests * 100),
 | |
| 	   $numtests,
 | |
| 	   $numsuccess,
 | |
| 	   $numfails,
 | |
| 	   $numskips);
 |