X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d8ccdbcf736474f1f05e92ed439a56adbc52f216..74855662cc55ccf11cc50c93d88fc095fc61e611:/tools/sg_unit_extractor.pl diff --git a/tools/sg_unit_extractor.pl b/tools/sg_unit_extractor.pl index 37b702593e..4b96fd8502 100755 --- a/tools/sg_unit_extractor.pl +++ b/tools/sg_unit_extractor.pl @@ -48,18 +48,24 @@ sub process_one($) { next } - if (m/XBT_TEST_SUITE\(\w*"([^"]*)"\w*,(.*?)\);/) { #" { + if (m/XBT_TEST_SUITE\(\w*"([^"]*)"\w*, *(.*?)\);/) { #" { die "$progname: Multiple suites in the same file ($infile) are not supported yet\n" if length($suite_name); ($suite_name,$suite_title)=($1,$2); + die "$progname: Empty suite name in $infile" unless length($suite_name); + die "$progname: Empty suite title in $infile" unless length($suite_title); next; - } + } elsif (m/XBT_TEST_SUITE/) { + die "$progname: Parse error: This line seem to be a test suite declaration, but failed to parse it\n$_\n"; + } if (m/XBT_TEST_UNIT\(\w*"([^"]*)"\w*,([^,]*),(.*?)\)/) { #"{ die "$progname: multiply defined unit in file $infile: $1\n" if (defined($tests{$1})); - + my @t=($1,$2,$3); push @tests,\@t; $tests{$1} = 1; + } elsif (m/XBT_TEST_UNIT/) { + die "$progname: Parse error: This line seem to be a test unit, but failed to parse it\n$_\n"; } $unit_source .= $_ if $takeit; } @@ -86,7 +92,7 @@ sub process_one($) { print OUT "#include \n"; print OUT "#include \"xbt.h\"\n"; print OUT $GENERATED; - print OUT "# $beginline \"$infile\" \n"; + print OUT "#line $beginline \"$infile\" \n"; print OUT "$unit_source"; print OUT $GENERATED; close OUT || die "$progname: Cannot close output file '$outfile': $!\n"; @@ -158,7 +164,6 @@ int main(int argc, char *argv[]) { res = xbt_test_run(selection); xbt_test_exit(); - xbt_exit(); return res; } EOF