2017-12-12 22:53:24 +00:00
|
|
|
const fs = require('fs');
|
2020-03-13 23:24:12 +00:00
|
|
|
const path = require('path');
|
2020-03-21 12:39:49 +00:00
|
|
|
const tools = require('../rustdoc-js-common/lib.js');
|
2018-01-07 15:20:25 +00:00
|
|
|
|
2019-02-23 23:08:43 +00:00
|
|
|
function load_files(out_folder, crate) {
|
2020-03-21 12:39:49 +00:00
|
|
|
var mainJs = tools.readFile(out_folder + "/main.js");
|
|
|
|
var aliases = tools.readFile(out_folder + "/aliases.js");
|
|
|
|
var searchIndex = tools.readFile(out_folder + "/search-index.js").split("\n");
|
2018-01-07 15:20:25 +00:00
|
|
|
|
2020-03-21 12:39:49 +00:00
|
|
|
return tools.loadMainJsAndIndex(mainJs, aliases, searchIndex, crate);
|
2019-02-23 23:08:43 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
function main(argv) {
|
2019-02-24 00:04:07 +00:00
|
|
|
if (argv.length < 4) {
|
|
|
|
console.error("USAGE: node tester.js OUT_FOLDER [TESTS]");
|
2019-02-23 23:08:43 +00:00
|
|
|
return 1;
|
|
|
|
}
|
2019-02-24 00:04:07 +00:00
|
|
|
if (argv[2].substr(-1) !== "/") {
|
|
|
|
argv[2] += "/";
|
|
|
|
}
|
|
|
|
const out_folder = argv[2];
|
2018-01-07 15:20:25 +00:00
|
|
|
|
|
|
|
var errors = 0;
|
|
|
|
|
2019-02-24 00:04:07 +00:00
|
|
|
for (var j = 3; j < argv.length; ++j) {
|
2020-03-13 23:24:12 +00:00
|
|
|
const test_file = argv[j];
|
|
|
|
const test_name = path.basename(test_file, ".js");
|
2019-02-23 23:08:43 +00:00
|
|
|
|
2019-02-24 00:04:07 +00:00
|
|
|
process.stdout.write('Checking "' + test_name + '" ... ');
|
2020-03-13 23:24:12 +00:00
|
|
|
if (!fs.existsSync(test_file)) {
|
2019-02-23 23:08:43 +00:00
|
|
|
errors += 1;
|
|
|
|
console.error("FAILED");
|
2019-02-24 00:04:07 +00:00
|
|
|
console.error("==> Missing '" + test_name + ".js' file...");
|
|
|
|
continue;
|
2019-02-23 23:08:43 +00:00
|
|
|
}
|
|
|
|
|
2019-02-24 00:04:07 +00:00
|
|
|
const test_out_folder = out_folder + test_name;
|
|
|
|
|
|
|
|
var [loaded, index] = load_files(test_out_folder, test_name);
|
2020-03-21 12:39:49 +00:00
|
|
|
errors += tools.runChecks(test_file, loaded, index);
|
2019-02-24 00:04:07 +00:00
|
|
|
}
|
2020-03-16 20:50:04 +00:00
|
|
|
return errors > 0 ? 1 : 0;
|
2017-12-12 22:53:24 +00:00
|
|
|
}
|
|
|
|
|
2018-01-07 15:20:25 +00:00
|
|
|
process.exit(main(process.argv));
|