diff --git a/Tests/TKUnit.ts b/Tests/TKUnit.ts index 18e4faa3a..16cb39636 100644 --- a/Tests/TKUnit.ts +++ b/Tests/TKUnit.ts @@ -31,6 +31,8 @@ export var runTestModule = function (module, moduleName) { var totalTests = 0; var totalSuccess = 0; + var errors = new Array(); + for (var testName in module) { var testFunction = module[testName]; if ((typeof (testFunction) === "function") && (testName.substring(0, 4) == "test")) { @@ -46,6 +48,7 @@ export var runTestModule = function (module, moduleName) { runTest(testFunction, testName); totalSuccess++; } catch (e) { + errors.push(e); console.error("--- [" + testName + "] FAILED: " + e.message); } try { @@ -68,6 +71,7 @@ export var runTestModule = function (module, moduleName) { console.timeEnd(moduleName); console.info("--- " + moduleName + " TESTS COMPLETE --- (" + totalSuccess + " of " + totalTests + ") OK, " + (totalTests - totalSuccess) + " failed"); + return { "total": totalTests, "success": totalSuccess, "failed": (totalTests - totalSuccess), "errors": errors }; }; export var assert = function (test: any, message?: string) { diff --git a/Tests/testRunner.ts b/Tests/testRunner.ts index 90d7dd0c6..557d91556 100644 --- a/Tests/testRunner.ts +++ b/Tests/testRunner.ts @@ -10,11 +10,16 @@ allTests["IMAGE SOURCE"] = require("Tests/image-source-tests"); allTests["TIMER"] = require("Tests/timer-tests"); export var runAll = function (moduleName?: string) { + var totalSuccess = 0; + var totalFailed = 0; for (var name in allTests) { if(moduleName && (moduleName.toLowerCase() !== name.toLowerCase())) { continue; } - TKUnit.runTestModule(allTests[name], name); + var result = TKUnit.runTestModule(allTests[name], name); + totalSuccess += result.success; + totalFailed += result.failed; } + console.info("=== ALL TESTS COMPLETE === " + totalSuccess + " OK, " + totalFailed + " failed") }