This provides summary results such as the following: % conkeror -q -e 'url_remoting_fn = load;' $PWD/tests/simple/*.js -f walnut-summarize ... Totals: 58 run, 0 failed in 15 suites
--- Previously: http://thread.gmane.org/gmane.comp.mozilla.conkeror/1865/focus=1891 --- modules/walnut.js | 29 ++++++++++++++++++++++++++++- 1 files changed, 28 insertions(+), 1 deletions(-) diff --git a/modules/walnut.js b/modules/walnut.js index cceab15..e122228 100644 --- a/modules/walnut.js +++ b/modules/walnut.js @@ -62,7 +62,33 @@ function assert_objects_equal (got, expect) { function walnut_results () { this.run = 0; this.failed = 0; + this.suites = 0; } +walnut_results.prototype = { + show : function (title) { + dumpln((title ? title + ": " : "") + + this.run + " run, " + this.failed + " failed" + + (this.suites > 1 ? " in " + this.suites + " suites" : "")); + }, + accumulate : function (results) { + this.run += results.run; + this.failed += results.failed; + this.suites += results.suites ? results.suites : 1; + } +} + +var walnut_totals = new walnut_results(); + +function walnut_summarize (keep) { + walnut_totals.show("Totals"); + if (!keep) + walnut_totals = new walnut_results(); +} +interactive("walnut-summarize", + "Print summary of walnut results. With prefix, keep results to " + + "accumulate with future walnut runs. By default results are " + + "discarded.", + function(I) {walnut_summarize(I.P);}); function walnut_run (suite) { var results = new walnut_results(); @@ -88,7 +114,8 @@ function walnut_run (suite) { } if (suite.suite_teardown) suite.suite_teardown(); - dumpln(results.run+" run, "+results.failed+" failed"); + results.show(); + walnut_totals.accumulate(results); return results; } -- 1.7.5.4 _______________________________________________ Conkeror mailing list [email protected] https://www.mozdev.org/mailman/listinfo/conkeror
