[llvm-commits] [test-suite] r109844 - in /test-suite/trunk: MultiSource/Examples/ MultiSource/Examples/Makefile MultiSource/Examples/MultipleResults/ MultiSource/Examples/MultipleResults/Makefile MultiSource/Examples/MultipleResults/MultipleResults.c MultiSource/Examples/MultipleResults/MultipleResults.reference_output ParseMultipleResults TEST.simple.Makefile
Daniel Dunbar
daniel at zuster.org
Thu Jul 29 19:54:33 PDT 2010
Author: ddunbar
Date: Thu Jul 29 21:54:33 2010
New Revision: 109844
URL: http://llvm.org/viewvc/llvm-project?rev=109844&view=rev
Log:
TEST=simple: Add support for tests which can generate multiple results.
Test is expected to write Output/TESTNAME.extra-results.txt, in the format:
--
Result-FOO: NNN.NNNN
Result-BAR: NNN.NNNN
--
which we will then report as fake tests (with no compile info). Good enough for
now, perhaps.
Added:
test-suite/trunk/MultiSource/Examples/
test-suite/trunk/MultiSource/Examples/Makefile
test-suite/trunk/MultiSource/Examples/MultipleResults/
test-suite/trunk/MultiSource/Examples/MultipleResults/Makefile
test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.c
test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.reference_output
test-suite/trunk/ParseMultipleResults (with props)
Modified:
test-suite/trunk/TEST.simple.Makefile
Added: test-suite/trunk/MultiSource/Examples/Makefile
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/MultiSource/Examples/Makefile?rev=109844&view=auto
==============================================================================
--- test-suite/trunk/MultiSource/Examples/Makefile (added)
+++ test-suite/trunk/MultiSource/Examples/Makefile Thu Jul 29 21:54:33 2010
@@ -0,0 +1,8 @@
+# MultiSource/Examples Makefile: Build all subdirectories automatically
+
+LEVEL = ../..
+
+PARALLEL_DIRS = MultipleResults
+
+include $(LEVEL)/Makefile.config
+include $(LEVEL)/Makefile.programs
Added: test-suite/trunk/MultiSource/Examples/MultipleResults/Makefile
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/MultiSource/Examples/MultipleResults/Makefile?rev=109844&view=auto
==============================================================================
--- test-suite/trunk/MultiSource/Examples/MultipleResults/Makefile (added)
+++ test-suite/trunk/MultiSource/Examples/MultipleResults/Makefile Thu Jul 29 21:54:33 2010
@@ -0,0 +1,10 @@
+LEVEL = ../../../
+PROG = MultipleResults
+LDFLAGS =
+
+include $(LEVEL)/Makefile.config
+
+EXTRA_TEST_RESULTS_FILE := $(PROJ_OBJ_DIR)/Output/MultipleResults.extra-results.txt
+RUN_OPTIONS := $(EXTRA_TEST_RESULTS_FILE)
+
+include ../../Makefile.multisrc
Added: test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.c
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.c?rev=109844&view=auto
==============================================================================
--- test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.c (added)
+++ test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.c Thu Jul 29 21:54:33 2010
@@ -0,0 +1,11 @@
+#include <stdio.h>
+#include <assert.h>
+
+int main(int argc, char **argv) {
+ assert(argc == 1);
+ FILE *f = fopen(argv[1], "w");
+ fprintf(f, "Result-A: %.2f\n", 0.1);
+ fprintf(f, "Result-B: %.2f\n", 0.3);
+ fclose(f);
+ return 0;
+}
Added: test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.reference_output
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.reference_output?rev=109844&view=auto
==============================================================================
--- test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.reference_output (added)
+++ test-suite/trunk/MultiSource/Examples/MultipleResults/MultipleResults.reference_output Thu Jul 29 21:54:33 2010
@@ -0,0 +1 @@
+exit 0
Added: test-suite/trunk/ParseMultipleResults
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/ParseMultipleResults?rev=109844&view=auto
==============================================================================
--- test-suite/trunk/ParseMultipleResults (added)
+++ test-suite/trunk/ParseMultipleResults Thu Jul 29 21:54:33 2010
@@ -0,0 +1,22 @@
+#!/usr/bin/env python
+
+import re
+import sys
+
+def main():
+ _,testname,path = sys.argv
+ data = open(path).read()
+ for result in re.finditer('Result-([^:]*): (.*)', data):
+ name, value = result.groups()
+ value = float(value)
+ print
+ print '-' * 62
+ print ">>> ========= '%s.Subtest.%s' Program " % (testname, name)
+ print '-' * 62
+ print
+ print 'TEST-PASS: exec %s.Subtest.%s' % (testname, name)
+ print 'TEST-RESULT-exec-success: pass'
+ print 'TEST-RESULT-exec-time: program %f' % value
+
+if __name__ == '__main__':
+ main()
Propchange: test-suite/trunk/ParseMultipleResults
------------------------------------------------------------------------------
svn:executable = *
Modified: test-suite/trunk/TEST.simple.Makefile
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/TEST.simple.Makefile?rev=109844&r1=109843&r2=109844&view=diff
==============================================================================
--- test-suite/trunk/TEST.simple.Makefile (original)
+++ test-suite/trunk/TEST.simple.Makefile Thu Jul 29 21:54:33 2010
@@ -50,6 +50,9 @@
fi
@-printf "TEST-RESULT-exec-time: " >> $@
@-grep "^program" Output/$*.out-simple.time >> $@
+ if test -f Output/$*.extra-results.txt; then \
+ $(PROGDIR)/ParseMultipleResults $(RELDIR)/$* Output/$*.extra-results.txt >> $@; \
+ fi
# Overall tests: just run subordinate tests
$(PROGRAMS_TO_TEST:%=Output/%.$(TEST).report.txt): \
More information about the llvm-commits
mailing list