| Index: lib/src/prism/tests/run.js
|
| diff --git a/lib/src/prism/tests/run.js b/lib/src/prism/tests/run.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..a28350d2a45bf9c0e1f72909ef19479cf5572320
|
| --- /dev/null
|
| +++ b/lib/src/prism/tests/run.js
|
| @@ -0,0 +1,37 @@
|
| +"use strict";
|
| +
|
| +var TestDiscovery = require("./helper/test-discovery");
|
| +var TestCase = require("./helper/test-case");
|
| +var path = require("path");
|
| +var argv = require("yargs").argv;
|
| +
|
| +var testSuite;
|
| +if (argv.language) {
|
| + testSuite = TestDiscovery.loadSomeTests(__dirname + "/languages", argv.language);
|
| +} else {
|
| + // load complete test suite
|
| + testSuite = TestDiscovery.loadAllTests(__dirname + "/languages");
|
| +}
|
| +
|
| +// define tests for all tests in all languages in the test suite
|
| +for (var language in testSuite) {
|
| + if (!testSuite.hasOwnProperty(language)) {
|
| + continue;
|
| + }
|
| +
|
| + (function (language, testFiles) {
|
| + describe("Testing language '" + language + "'", function () {
|
| + testFiles.forEach(
|
| + function (filePath) {
|
| + var fileName = path.basename(filePath, path.extname(filePath));
|
| +
|
| + it("– should pass test case '" + fileName + "'",
|
| + function () {
|
| + TestCase.runTestCase(language, filePath);
|
| + }
|
| + );
|
| + }
|
| + );
|
| + });
|
| + })(language, testSuite[language]);
|
| +}
|
|
|