UNPKG

mocha

Version:

Classic, reliable, trusted test framework for Node.js and the browser

80 lines (77 loc) 1.41 kB
/** * @typedef {import('./runnable.js')} Runnable */ /** * Initialize a new `Context`. * * @private */ class Context { constructor() {} /** * Set or get the context `Runnable` to `runnable`. * * @private * @param {Runnable} runnable * @return {Context} context */ runnable(runnable) { if (!arguments.length) { return this._runnable; } this.test = this._runnable = runnable; return this; } /** * Set or get test timeout `ms`. * * @private * @param {number} ms * @return {Context} self */ timeout(ms) { if (!arguments.length) { return this.runnable().timeout(); } this.runnable().timeout(ms); return this; } /** * Set or get test slowness threshold `ms`. * * @private * @param {number} ms * @return {Context} self */ slow(ms) { if (!arguments.length) { return this.runnable().slow(); } this.runnable().slow(ms); return this; } /** * Mark a test as skipped. * * @private * @throws PendingError */ skip() { this.runnable().skip(); } /** * Set or get a number of allowed retries on failed tests * * @private * @param {number} n * @return {Context} self */ retries(n) { if (!arguments.length) { return this.runnable().retries(); } this.runnable().retries(n); return this; } } export { Context };