diff --git a/sandbox/prove2junit.pl b/sandbox/prove2junit.pl new file mode 100755 index 00000000..86de1a88 --- /dev/null +++ b/sandbox/prove2junit.pl @@ -0,0 +1,25 @@ +#!/usr/bin/env perl + +use strict; +use warnings; + +my $file = $ARGV[0]; +my $testcase = ""; +my $error_collect = ""; +my $error_print = ""; + +if (not defined $file) { + die "Need filename as parameter!\n"; +} + +open (my $info, $file) or die "Could not open $file: $!"; + +print "\n"; +while(my $line = <$info>) { + if ($line =~ /^(t\/\S+).* (\.*) (skipped:) (.*)$/) { print "Skip reason:\n"; } + elsif ($line =~ /^ok (\d+) - (.*)$/) { print "Test description:\n"; } + elsif ($line =~ /^not ok (\d+) - (.*)$/) { print "Test description:\n"; } + elsif ($line =~ /^(t\/\S+).* (\.*) $/) { $testcase = "$1"; $error_print = $error_collect; $error_collect = ""; } + elsif ($line !~ /^ok$/ && $line !~ /^\d+..\d+$/) { $error_collect = $error_collect . $line; } +} +print "\n"