'use strict'; var Runnable = require('./runnable'); var inherits = require('./utils').inherits; /** * Expose `Hook`. */ module.exports = Hook; /** * Initialize a new `Hook` with the given `title` and callback `fn` * * @class * @extends Runnable * @param {String} title * @param {Function} fn */ function Hook(title, fn) { Runnable.call(this, title, fn); this.type = 'hook'; } /** * Inherit from `Runnable.prototype`. */ inherits(Hook, Runnable); /** * Get or set the test `err`. * * @memberof Hook * @public * @param {Error} err * @return {Error} */ Hook.prototype.error = function(err) { if (!arguments.length) { err = this._error; this._error = null; return err; } this._error = err; };