Index: test_runner.js |
=================================================================== |
--- a/test_runner.js |
+++ b/test_runner.js |
@@ -16,36 +16,47 @@ |
*/ |
"use strict"; |
let fs = require("fs"); |
let path = require("path"); |
let process = require("process"); |
let nodeunit = require("nodeunit"); |
+let qunit = require("node-qunit-phantomjs"); |
-let files = []; |
+let nodeunitFiles = []; |
+let qunitFiles = []; |
function addTestPaths(testPaths, recurse) |
{ |
for (let testPath of testPaths) |
{ |
let stat = fs.statSync(testPath); |
if (stat.isDirectory()) |
{ |
if (recurse) |
{ |
addTestPaths(fs.readdirSync(testPath).map( |
file => path.join(testPath, file))); |
} |
+ continue; |
} |
- else if (path.extname(testPath) == ".js" && |
- !path.basename(testPath).startsWith("_")) |
+ if (path.basename(testPath).startsWith("_")) |
+ continue; |
+ if (testPath.split(path.sep).includes("browser")) |
{ |
- files.push(testPath); |
+ if (path.extname(testPath) == ".html") |
+ qunitFiles.push(testPath); |
} |
+ else if (path.extname(testPath) == ".js") |
+ nodeunitFiles.push(testPath); |
} |
} |
if (process.argv.length > 2) |
addTestPaths(process.argv.slice(2), true); |
else |
- addTestPaths([path.join(__dirname, "test")], true); |
+ addTestPaths( |
+ [path.join(__dirname, "test"), path.join(__dirname, "test", "browser")], |
+ true); |
-nodeunit.reporters.default.run(files); |
+if (nodeunitFiles.length) |
+ nodeunit.reporters.default.run(nodeunitFiles); |
+qunitFiles.forEach(file => qunit(path.resolve(file))); |