From 1dac17f9413c028916946488f27db05ac2314bf6 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Wed, 13 May 2009 20:10:57 +0200 Subject: selftest: Factor generic functionality for buildfarm output into a separate perl module. --- selftest/BuildFarm.pm | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 selftest/BuildFarm.pm (limited to 'selftest/BuildFarm.pm') diff --git a/selftest/BuildFarm.pm b/selftest/BuildFarm.pm new file mode 100644 index 0000000000..80a91ac154 --- /dev/null +++ b/selftest/BuildFarm.pm @@ -0,0 +1,65 @@ +#!/usr/bin/perl +# Convenience functions for writing output expected by the buildfarm +# Copyright (C) 2009 Jelmer Vernooij +# Published under the GNU GPL, v3 or later + +package BuildFarm; + +use Exporter; +@ISA = qw(Exporter); +@EXPORT_OK = qw(start_testsuite end_testsuite skip_testsuite summary); + +use strict; + +sub start_testsuite($$) +{ + my ($name, $duration) = @_; + my $out = ""; + + $out .= "--==--==--==--==--==--==--==--==--==--==--\n"; + $out .= "Running test $name (level 0 stdout)\n"; + $out .= "--==--==--==--==--==--==--==--==--==--==--\n"; + $out .= scalar(localtime())."\n"; + $out .= "SELFTEST RUNTIME: " . $duration . "s\n"; + $out .= "NAME: $name\n"; + + print $out; +} + +sub end_testsuite($$$$$) +{ + my ($name, $duration, $ok, $output, $reason) = @_; + my $out = ""; + + $out .= "TEST RUNTIME: " . $duration . "s\n"; + if ($ok) { + $out .= "ALL OK\n"; + } else { + $out .= "ERROR: $reason\n"; + } + $out .= "==========================================\n"; + if ($ok) { + $out .= "TEST PASSED: $name\n"; + } else { + $out .= "TEST FAILED: $name (status $reason)\n"; + } + $out .= "==========================================\n"; + + print $out; +} + +sub skip_testsuite($) +{ + my ($name) = @_; + + print "SKIPPED: $name\n"; +} + +sub summary($) +{ + my ($duration) = @_; + + print "DURATION: " . $duration . " seconds\n"; +} + +1; -- cgit