aboutsummaryrefslogtreecommitdiff
path: root/client/src/test/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/test/index.ts')
-rw-r--r--client/src/test/index.ts43
1 files changed, 43 insertions, 0 deletions
diff --git a/client/src/test/index.ts b/client/src/test/index.ts
new file mode 100644
index 0000000..b9de4dc
--- /dev/null
+++ b/client/src/test/index.ts
@@ -0,0 +1,43 @@
+/* --------------------------------------------------------------------------------------------
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for license information.
+ * ------------------------------------------------------------------------------------------ */
+import * as path from 'path';
+import * as Mocha from 'mocha';
+import * as glob from 'glob';
+
+export function run(): Promise<void> {
+ // Create the mocha test
+ const mocha = new Mocha({
+ ui: 'tdd',
+ color: true
+ });
+ mocha.timeout(100000);
+
+ const testsRoot = __dirname;
+
+ return new Promise((resolve, reject) => {
+ glob('**.test.js', { cwd: testsRoot }, (err, files) => {
+ if (err) {
+ return reject(err);
+ }
+
+ // Add files to the test suite
+ files.forEach(f => mocha.addFile(path.resolve(testsRoot, f)));
+
+ try {
+ // Run the mocha test
+ mocha.run(failures => {
+ if (failures > 0) {
+ reject(new Error(`${failures} tests failed.`));
+ } else {
+ resolve();
+ }
+ });
+ } catch (err) {
+ console.error(err);
+ reject(err);
+ }
+ });
+ });
+} \ No newline at end of file