Files
modeling-app/rust/kcl-language-server/client/src/test/suite/index.ts

34 lines
784 B
TypeScript
Raw Normal View History

2025-03-04 22:21:12 -08:00
import * as path from 'path'
const Mocha = require('mocha')
const { glob } = require('glob')
export function run(): Promise<void> {
// Create the mocha test
const mocha = new Mocha({
ui: 'tdd',
})
const testsRoot = path.resolve(__dirname, '..')
return new Promise((c, e) => {
glob('**/**.test.js', { cwd: testsRoot }).then((files: string[]) => {
// Add files to the test suite
files.forEach((f) => mocha.addFile(path.resolve(testsRoot, f)))
try {
// Run the mocha test
mocha.run((failures: any) => {
if (failures > 0) {
e(new Error(`${failures} tests failed.`))
} else {
c()
}
})
} catch (err) {
console.error(err)
e(err)
}
})
})
}