From 01370a90e435aeaae55458dd9cffe670231bbd66 Mon Sep 17 00:00:00 2001 From: Peter Kay Date: Thu, 12 Sep 2019 09:54:17 -0400 Subject: [PATCH] syncing from original (#1) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * drop node.js v4 support Signed-off-by: Outsider * Update an example for browsers in docs (#3338) * update an example for browsers in docs * fix docs build command * remove jquery in a browser example Signed-off-by: Outsider * Added a "run cycle overview" to documentation (#3455) * run cycle overview * adjust flow format * add to table of contents * code highlighting points of interest * remove highlighting * java code highlighting * fix lint error * language change. swap parse+exec for run * use back-ticks for it + describe. uppercase title. * invoked to executed * add comment, make ui-generic, swap arrows * Swap java back to js as highlighting the same * Update ruby-ffi (#3464) * use latest ruby-ffi * update all deps * Clarify docs for watch that it watches files in the CWD (#3361) * Clarify docs for watch that it watches files in the CWD * s/CWD/current working directory * fix slow test properly fot dot reporter Signed-off-by: Outsider * docs(lib/mocha.js): Update API documentation (#3515) ### Description of the Change Replaced all method headers with more complete documentation, better following recommended styles. Eliminated `@api` tags, as `@access` _should_ imply same. Used `@chainable` to denote class methods returning `this` instance. Renamed a handful of variables, but **no logic changes**! ### Alternate Designs N/A ### Why should this be in core? N/A ### Benefits API documentation will be more useful if more complete. ### Possible Drawbacks N/A ### Applicable issues semver-patch * Improve Contributing Docs (#3525) * docs: improve CONTRIBUTING.md and fix/remove links * docs: link to CONTRIBUTING.md in readme * docs: address PR comments [skip ci] * docs: better wording on PR review wait time [skip ci] * level -> label (#3477) As noted by @plroebuck `level` is not used, should be `label` instead. https://github.com/mochajs/mocha/commit/37193a432119be643b9476f97da557a6f60b7d0f#commitcomment-30530038 * Native types exceptions can crash Mocha (#3471) - Any non-extensible type thrown in an async callback raises an exception in Mocha runner, stopping tests. * 3483: Squelch CI Growl-related spawn errors (#3517) * ci(.travis.yml): Squelch Growl-related spawn errors Installed binary needed for Linux desktop notification support. * ci(appveyor.yml): Squelch Growl-related spawn errors Installed GfW package needed for Windows desktop notification support. Fixes #3483 * test(test/reporters/base.spec.js): Fix Base reporter test failure due to timeout The `Base` reporter's specification verifies reporter can interpret Chai custom error messages. This test takes ~480ms (lightly loaded CPU), which is _way_ too close to the 500ms timeout. Change doubles this timeout. #3524 * Update "commander" to correct display of falsy default values (#3529) Additionally, this includes minor updates to mocha's help output (by rewording text and/or specifying default values). These were then collected into the website documentation. * refactor(bin/options.js): Refactor and improve documentation (#3533) * refactor(json-stream.js): Consistent output stream usage (#3532) ### Description of the Change * Made all output directly use `process.stdout`. * `process.stdout` and `console.log` take different routes to get to same place * Corrected ctor name. * Updated documentation. ### Alternate Designs N/A ### Benefits Consistency. [Don't cross the streams](https://www.youtube.com/watch?v=wyKQe_i9yyo)! ### Possible Drawbacks N/A ### Applicable issues Fixes #3526 Fixes #3521 semver-patch * fix(_mocha): Update '--no-timeouts' argument description (#3546) Previously undocumented that use of `--inspect` would disable timeouts. Fixes #3519 * build(ESLint/Git): Ignore JSDoc output directory (#3544) Prettier-ESLint keeps busying itself with the JSDoc output directory upon any commit, spewing hundreds of errors. This tells both ESLint and Git to ignore the directory. * ci(Travis/Appveyor): Update Node versions in CI matrix (#3543) * ci(.travis.yml,appveyor.yml): Update Node versions in CI matrix Make Node-11 the new default and drop Node-9 from matrix. * update release instructions [ci skip] * fix runner to emit start/end event (#3395) Signed-off-by: Outsider * Warn that suites cannot return a value (#3550) * Give a `DeprecationWarning` on suite callback returning any value. * Deprecation warning: Show a message only once; use `process.nextTick` when falling back to `console.warn` * Add a test for `utils.deprecate` * style: Make prettier happy * test(deprecate.spec.js): Make PR requested changes for approval (per @boneskull) * upgrade jekyll; closes #3548 (#3549) * upgrade jekyll; closes #3548 see https://nvd.nist.gov/vuln/detail/CVE-2018-17567 * add .ruby-version for netlify * Show diff in xunit * Extract `runReporter` to capture output under tests (#3528) While refactoring the `dot` reporter test, we created a method for capturing output from running the reporter. It proved so handy at squelching test "noise" that JeongHoon extracted it and applied it to many of the other reporters. * update list of published files in package.json - this will fix a problem with npm (potentially) publishing certain files which should always be ignored; see npm/npm-packlist#14. - also fixes issue with growl images not getting published! - add `directories` property for metadata PRO TIP: use `npm pack --dry-run` to see what would be included in published tarball. * Prevent timeout value from skirting limit check (#3536) * fix(lib/runnable.js): Prevent timeout value from skirting limit check - Moved the timestring->value translation code to before the limit check. - Found that previous "fix" hadn't actually fixed the correct value, as the wrong upper bound value had been used (off by one error). - Further research indicated that some versions of IE had problems with negative timeout values. New code clamps to nonnegative numbers ending at `INT_MAX`. - Updated the function documentation. * feat(lib/utils.js): Add `clamp` function - New function clamps a numeric value to a given range. * test(unit/runnable.spec.js): Updated tests for `#timeout(ms)` - Restructured `Runnable#timeout` tests to check both numeric/timestamp input values that: - less than lower limit - equal to lower limit - within limits - equal to upper limit - greater than upper limit Closes #1652 * Make TAP reporter TAP13-capable (#3552) * Refactored code to use `TAPProducer` objects to write output. * Added TAP specification 13 output producer. * Version line * Errors and stacktraces inside YAML blocks * Added TAP specification 12 output producer [default]. * Added `reporterOptions.tapVersion` to target TAP producer. * Refactored to make use of `runner.stats` * Refactored to use `process.stdout` stream exclusively. * Updated to test against both specifications and incorporate work from PR #3528. * Added integration tests for specification conformance. * Add ability to query Mocha version programmatically (#3535) * Added new public `version` property to `Mocha`, available in both Node and browser. * Used `browserify` transform to prevent exposing any other package details (for security). * Fix link in changelog (#3566) 'Nuff said... * ms module added instead of internal ms js #3557 (#3563) * Replace internal "./ms js" with npm "ms" module (#3557) * ci(appveyor.yml): Fix Growl install (#3577) Use GitHub URL for downloading GfW installer. * ci(.travis.yml,appveyor.yml): Use current npm version in CI scripts (#3579) The requirement for using npm-5.x was due to npm-6 dropping support for Node-4. Since Mocha now requires Node-6+, we should use the current verion of npm. This will also eliminate npm "Unsupported Node version" warnings when run against Node-11+. * use `--forbid-only in CI * ensure all JS (and JSON) files are prettified pre-commit * add script to automatically dump CLI usage into documentation - rename `scripts/docs-update-toc.js` to reflect that it does more than just that * remove unsupported @api tag in docstrings * Refactor statistics (#3458) * collect stats * update slow description (#3466) Update mocha doc to have more details on the "slow" configuration * Issue/2819 - Fix / Clarify this.skip behavior in before hooks (#3225) * Fix Issue 2819 - this.skip should skip tests in nested suites. Side Effects: - Fixed typo in beforeEach async pending test that was using sync fixture. - Fixed beforeEach async pending test to reflect current behavior. * fixup! Fix Issue 2819 - this.skip should skip tests in nested suites. * docs: Add more details regarding suite-level skip. * test: Update error messages in before hook integration tests. * test: Remove timeout delays from pending tests. * test: Consistently throw errors in pending test fixtures. * lint-staged should ignore package.json and package-lock.json these are formatted by npm and would otherwise cause too much churn * --forbid-only and --forbid-pending now handle suites properly (#3578) * fail-fast when .only encountered in Suite w/ --forbid-only * fail-fast when .skip encountered in Suite w/ --forbid-pending * move importing chai to the top of the file to avoid timeout Signed-off-by: Outsider * use markdown-magic for processing documentation * updates to MAINTAINERS.md [ci skip] - updated stuff about semver-* labels - updated what qualifies as a breaking change - updated some stuff around milestones - and some stuff about branches * fix(cli): Throw error if unable to parse Mocha options file Code now throws an error for any problems (except nonexistent default "test/mocha.opts"). Includes tests. Fixes #3363 Fixes #2576 * use yargs for option parsing and support config files - `-d` is no longer an alias for `--debug` - `--grep` and `--fgrep` are now mutually exclusive - The option formerly known as `--compilers` is now removed from Mocha - `lib/template.html` moved to `lib/browser/template.html` - An error is thrown if a path to `mocha.opts` is specified by the user and the file was not found - `-gc` users should use `--gc-global` - Public API method `getOptions()` in `bin/options.js` is deprecated and currently has no alternative - Users of the `enableTimeouts` option of the `Mocha` constructor should use `timeout` instead. Specify `false` for no timeout - Users of the `useColors` option of the `Mocha` constructor should use `color` instead - Mocha now supports JS, JSON, YAML, or `package.json`-based config. - Any/all configuration, including `mocha.opts` can be used in addition to command-line arguments, and everything will be merged as applicable - Node/V8 flag support: - Support of all available `node` flags on a *per-version* basis - Support of any V8 flag by prepending `--v8-` to the option - These are supported within `mocha.opts` or config files - More flexible command-line parsing including negation of any boolean flag by prepending `--no-` to the name - Better `--help` - Descriptions of interfaces in `--help` text - A useful `Mocha` constructor - Debug-related flags (e.g., `--inspect`) now *imply* `--no-timeouts` - Many bug fixes around CLI option handling, e.g., closes #3475 - Fixes #3363, #2576, #3570 - `--no-timeouts` works - Added new, updated, or rewrote documentation for all non-self-explanatory options - Updated usage text, TOC - Added section on configuration - Added example configuration files in `example/config/` - Updated many dev deps, mostly within existing semver ranges - Removed `commander` - Added production deps: - ansi-colors - color terminal output - findup-sync - find package.json and other config files - js-yaml - parse YAML - log-symbols - visual symbols for success/fail etc. - node-environment-flags - per-version allowed Node.js env flags - object.assign - for IE11 - strip-json-comments - allow comments in JSON config files - wide-align - terminal formatting - yargs - option parser - yargs-parser - for compatible, lightweight parsing of config files - yargs-unparser - for passing config to `bin/_mocha` from `bin/mocha` * backout 02294a3 (via #3362); closes #3569 * make isPromise support null as a parameter (#3518) * fix broken docs - strip ansi stuff - fix old content terminator * use @mocha/contributors; closes #3606 * update assetgraph-builder to latest (#3594) * netlify-headers: Skip unloaded assets when extracting headers * update assetgraph-builder to latest * update svgo * fix postbuild script * screw it, we're going right to a 10s timeout Signed-off-by: Christopher Hiller * update assetgraph-builder to latest (#3611) Signed-off-by: Outsider * update info in docs/README.md [ci skip] * fix typo in docs/README.md [ci skip] * make lib/stats-collector a private API * modified SIGINT handling #3570 (#3602) * Updated SIGINT handler based on comment from #3570 Signed-off-by: jayasankar * adding a "retry" event for a test that fails but can be retried; closes #2529 (#3408) Continuation of #2926. Addresses issue #2529 by allowing reporters to take action on tests that have failed but can be retried * fix wording in enableTimeouts deprecation msg [ci skip] Signed-off-by: Christopher Hiller * remove SIGINT handler for single runs; see #3570 * Dont count xunit failures as errors * upgrade eslint & its ilk - also upgrade `lint-staged`, because it's broken for some reason - reformat - lint - remove `prettier-eslint-cli` - update formatting command to handle JSON & YAML files via prettier, and eslint for everything else - update `.lintstagedrc` to deal as well test file changes are related to deprecations of various `assert` methods * upgrade yargs, husky, nyc, markdownlint-cli also use exact `yargs-unparser` version * update ansi-colors, debug, glob, he, supports-color, through2 * avoid global timers by way of ESLint; closes #3342 (#3374) - Remove unused variables to avoid problems with #237 (and their associated inline ESLint directives) - Use existing ESLint rules (`no-restricted-globals`, `no-restricted-modules` and `no-restricted-syntax`) to disallow global timer access. - Removed "poison pill" tests in `test/unit/runnable.spec.js`. For those rules, our config applies only to `bin/*` and `lib/**/*.js`. - `no-restricted-globals`: Disallow bare references (including calls) to timers like `setTimeout`. - `no-restricted-modules`: Disallow use of Node.js' `timers` module to get around the above restriction. - `no-restricted-syntax`: - Disallow calls of `global.setTimeout` and other timers - Disallow `new global.Date()` - Disallow any expressions involving `global.Date.*`, `global.setTimeout.*` and other timers - add more files to markdown linting - reorg tests, remove `fs` test from jsapi tests * Behavior of after/afterEach hooks with --bail flag (#3617) * runner.js: delete second end emit * tests * documentation * runner.js * tests: corrections closes #3398, closes #3598, closes #3457, closes #3617 * Fix spelling (#3635) Changed spelling to "truthy" * Growl: Web notifications & Desktop prerequisite software check (#3542) Added (minorly brittle) means to verify prerequisite software is installed. Migrated Growl support code to its own file. This implementation's checks are required to enable Growl; failure will write notice to `stderr`. Other modifications based on discussion from Chad Rickman's PR #3311. This also checks for errors from Growl callback. Provided browser notification support as well for modern browsers by replacing the existing noop stub with an implementation for web notifications via the Mocha `growl` pseudo-reporter (when run in browser). Updated user guide and wiki for desktop notification support. Fixes #3111 Signed-off-by: Paul Roebuck * upgrade supports-color; closes #1304 (#3633) Signed-off-by: Christopher Hiller * Fix an error when fn===undefined (#3580) * Fix an error when fn===undefined This change fixes an error that occurs when reporter is 'xunit' and run is called without callback: " /rbd/pnpm-volume/a49b9a7c-c3f0-42ba-ae66-612ead86e96c/node_modules/.registry.npmjs.org/mocha/5.2.0/node_modules/mocha/lib/reporters/xunit.js:126 fn(failures); ^ TypeError: fn is not a function " * Add test `.reporter("xunit").run(fn)` This test has `try catch` block to catch an error if it occurs and write it to the console. * formatting * Update mocha.spec.js * rename "forbid" fixture files to have proper extension; closes #3636 - made fixture helper smart - support empty args in run helpers Signed-off-by: Christopher Hiller * add more tests for utils.deprecate (#3628) * ensure coverage data not cached between execution calls to npm test * wallaby: disable debug mode in and ignore lib/browser/ [ci skip] * refactor utils.deprecate and add tests to get coverage up - `utils.deprecate()` needs a non-empty message - it no longer shims `process.emitWarning`, since we dropped Node v4 support - added tests because coverage * use userland which; closes #3639 - refactor to use modern JS in `lib/growl.js`; update ESLint rules accordingly Signed-off-by: Christopher Hiller * Added custom error objects including code (#3467) * add MochaError and use add missing E add codes to docs how to add new error E_ to ERR_ typo fix fix failing test typo fix * single custom object to multiple custom objects remove generic MochaError Use instance over code lint fix lint fix update references to suffix Error mocfix rebase * Remove custom errors, use factories Signed-off-by: Craig Taub module name Errors remove superfluous error type. * add another reporter error * errors unit test * cleanup documentation * camelCase factories. Use props on errors. Use TypeError * test case use code * use TypeError for type issues * add full documentation. update error names * use code and message for reporter check * add error handling unit test for mocha * CLI to throw invalidArgumentValue error * add data type for MissingArgument error * updated suite test * use const for cli's errors * follow jsdoc for optional params * update CHANGELOG for v6.0.0-0 - add linkifier script - `package-lock.json` updates - use exact version of `supports-color` * fix CHANGELOG issue number and attribution [ci skip] Signed-off-by: Christopher Hiller * fix use of String.prototype.includes * Release v6.0.0-0 * add link to docs for v6.0.0-0 release [ci skip] Signed-off-by: Christopher Hiller * fix missing mocharc.json in published package; see #3556 Signed-off-by: Christopher Hiller * update CHANGELOG for v6.0.0-1 [ci skip] Signed-off-by: Christopher Hiller * Release v6.0.0-1 * Fixed wrong use of to throw that will fail with unexpected v11 I was testing Mocha's compatibility with the upcoming version of Unexpected. For that version we remove support for satisfy against a function as that has confused people. I found one test that will fail with the next version as it was using to throw to satisfy against an error. This test will actually just call TypeError with the throw error, so it wont really check anything. This PR fixes the test to assert that the throw error is a TypeError. * remove teamcity reporter warning (#3634) * Description meta tag * Fix message if no files found (#3650) * error and exit, dont warn * return after error dont exit yet * remove superflous message * update glob tests * update message * use errors only if no tests found * dont use error symbol. * Add test for Runner event order (#3642) * runner: basic events test * tests basic, bail, retries * delete first test * Update documentation concerning fs.readdir (#3657) No order is implied via fs.readdir(). Different OS/filesystem combinations can give different results via readdir(3) which returns directory entries in traversal order (e.g., on macOS, HFS+ uses lexical order and APFS uses filename hash order). * mega-upgrade of .gitignore [ci skip] * fix WallabyJS config [ci skip] Signed-off-by: Christopher Hiller * remove invalid comment; see #1962 Signed-off-by: Christopher Hiller * Set "root" property on Suite correctly (#3632) * suite constructor * tests * suite.js corrections and new tests * fix tests & formatting on windows; closes #3643 * Fix couple errors missing codes (#3666) ### Requirements * Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion. * All new code requires tests to ensure against regressions. ### Description of the Change #3656 added a couple utils for setting `code` on errors. I fixed a couple here and wanted to make sure I was on the right track before making more changes. ### Alternate Designs N/A ### Why should this be in core? Codes help identify errors as mocha errors at a glance without using custom error types, and better DX is always good. ### Benefits :point_up: ### Possible Drawbacks None that I can see ### Applicable issues #3656, #3125. semver-patch * test(integration/reporters.spec.js): Add test for TAP when given invalid reporter option Added test for invalid reporter option for `tapVersion`. * Replace Jekyll with Eleventy (#3652) * Add eleventy as a static site generator * Code syntax highlighting, header anchors and fix fragment id links * Disable line breaks in paragraphs * Make date in footer work * Remove jekyll completely and describe how to use eleventy * Include missing favicon * Unify heading fragment identifier slug generation * Eliminate default layout partials * Autoformat style.css * Remove left over jekyll config * Rework build pipeline to speed things up * Fixed broken fragment identifier link in docs * Add .js extension dotfiles to linting setup. Addresses https://github.com/mochajs/mocha/pull/3652#discussion_r245390157 * Performance improvements. Prefetch google analytics and lazyload images * Performance improvements. Preload opencollective fallback avatar * Update docs/api/index.html Co-Authored-By: Munter * Correct docs readme * Fix wrong syntax in Strict-Transport-Security header and added Referrrer-Policy header * Add image type to ppreload of opencollective fallback avatar * Stop preloading tracking scripts. They mess with the loading order and slow page rendering down * Fix messages for file lookup issues - error scenario (#3654); see #3646 Scenario where multiple files (all) are not found only show a single message. I feel its useful for debugging to keep the message if only 1 file is not found. Happy to remove if others don't agree. No changes where at least 1 is found (still prints msg). See PR https://github.com/mochajs/mocha/pull/3650 for full details ## Scenarios ### Nothing given Command: `mocha` Output: ``` Error: No test files found: "test/" ``` ### Nothing found Command: `mocha -R json-stream --no-config "test/integration/fixtures/glob/**/*-none.js"` Output: ``` Error: No test files found: "test/integration/fixtures/glob/**/*-none.js" ``` ### Multiple not found Command: `mocha -R json-stream --no-config "test/integration/fixtures/glob/**/*-none.js" "test/integration/fixtures/glob/**/*-none-again.js"` New output ``` Error: No test files found ``` Previous output ``` Error: Cannot find any files matching pattern "test/integration/fixtures/glob/**/*-none.js" Error: Cannot find any files matching pattern "test/integration/fixtures/glob/**/*-none-again.js" ``` ## Applicable issues (semver-patch) * pin default Node.js version to v11.6.0 in .travis.yml see https://github.com/istanbuljs/nyc/issues/973 Signed-off-by: Christopher Hiller * do not recursively call `process.exit()` (#3684) * do not recursively call `process.exit()` When inside `process.on('exit')`, calling `process.exit()` stops other `exit` event listeners from being invoked. This has lead to issues with coverage generation with `nyc` because a fallback exit detection mechanism in it that relies on internal Node.js APIs was accidentally disabled in Node v11.7.0, leaving `nyc` with no way to detect process exit. Refs: https://github.com/nodejs/node/issues/25650 * Revert "pin default Node.js version to v11.6.0 in .travis.yml" This reverts commit 1abfef606d7a72c2f73c06805d6c11211315486b. * modify suite retval warning to be more useful * fix bug I should not have pushed by pushing a fix * fix broken suite integration test * Reorder cmdline options top-level test suites lexically (#3674) * refactor(integration/options.spec.js): Reorder top-level test suites lexically Reordered each cmdline option's test suite alphabetically. No code changes. * test(integration/options): Break out tests into option-specific spec files Made individual spec files for various options from the original. * test(options/opts.spec.js): Fix issue on Windows [skip travis] Removed cwd setting as (hopefully) unneeded since the test deals with generating error from nonexistent file. * test(options/help.spec.js): Windows bughunt [skip travis][skip netlify] * test(options/help.spec.js): Fix spawnOpts cwd Must use platform-specific `path.join` for `spawnOpts.cwd`, or it fails on Windows. * test: Modify describe titles for consistency Updated a couple suite descriptions for consistency. * Avoid the 'was called with' assertion It has been deprecated for two years and will soon display warnings or even be removed. https://github.com/unexpectedjs/unexpected-sinon/issues/32 * ensure all CLI options have an assigned type; closes #3683 * ensure invalid arguments are not ignored when using bin/mocha; closes #3687 Signed-off-by: Christopher Hiller * update CONTRIBUTING.md; closes issue/3624 Signed-off-by: Christopher Hiller * Fix Hook Test Names (#3573); closes #1638, closes #3291, closes #2134 ### Description of bug Mocha shows an incorrect test-title if a nested `before` hook fails. For `after` hooks the second part of the message is completely missing. ```js describe('Top-level describe', () => { it('Top-level it', () => { }); // the failing before-hook is pointing to this test describe('Nested describe', () => { before(() => { throw new Error(); }); it('Nested it', () => { }); // but it should point to this test }); }); ``` ``` Top-level describe ✓ Top-level it Nested describe 1) "before all" hook for "Top-level it" << * Fix regexp in utils.stackTraceFilter to prevent ReDoS #3416 (#3686) When the stacktrace begins with a large `Error.message` (single or multi line), Mocha's stack prettifier method (enabled by default) takes a long time to finish due to its regular expression. Certain assertions (e.g., `contains`, `deeplyEqual`) against large objects can trigger this problem. This PR alters the RegExp to skip over the error message portion of the stacktrace. * remove Google Analytics from site; closes #3349 Signed-off-by: Christopher Hiller * test(unit/runner.spec.js): Minor tweeks related to #3686 (#3704) * Refactored portions of tests for increased clarity. * Updated code to run all stacktrace tests on Windows (previously skipped). * Updated/replaced logic for generation of overlong messages used in filter tests. * update usage info in docs [ci skip] * Eliminated variable shadowing from test event listeners (runner.spec.js) (#3712) Made consistent that all listener function arguments were distinct from the variables being passed from emitters. Added some additional assertions. * refactor: use constants for event names instead of string literals - also a few other string literals got replaced, but not error messages nor codes - supporting refactors: - move the suite "GC" function into the `Suite` prototype - move stats collector init to `Mocha#run` due to circular reference with `Runner` - rename a couple fixture files lacking proper extension - rename variable in integration test helpers - add `utils.createMap()` and `utils.defineConstants()` - add `test/integration/fixtures` to `.eslintignore` so no fixture linting occurs whatsoever - consolidated use of `object.assign` polyfill into `utils` module - some docstring fixes/consistency - adds `EVENT_DELAY_END` emitted from `Runner` for reporter use - specifically did NOT refactor event names from Node.js incl. `error` and `uncaughtException` - add custom reporter tutorial to API documentation - automatically injects reporter example into tutorial via `markdown-magic` - add `docs.preprocess.api` script - add JSDoc configuration to support tutorials - sort JSDoc config object because fussy - fix broken custom assertion * fix --inspect and its ilk; closes #3681 (#3699) This seems to make `--inspect` work properly with or without a parameter (`--inspect=0.0.0.0:12345`). The `=` is required, as it's required by `node`. In v6 of Node, `--debug --port=12345` should also work as expected. Due to ignorance, skip Windows for now * Revert 00ca06b0e957ec4f067268c98053782ac5dcb69f; closes #3414 (#3715) - Updates events test to match correct event order - Add test for retries-and-bail case - Split `--invert` test case into its own file * add createInvalidArgumentError(); see #3676 (#3677) - updated error code table in docs - all other changes in docs are from prettier - updated `--compilers` test - rename "not supported" error to "unsupported" error - rename "undefined error" error to "invalid exception" error - remove "invalid argument" factory; use "unsupported" factory - doc fixes - move `utils.getError` to `Runnable.getError`, since it's only used there - remove `utils.undefinedError`; use `createInvalidExceptionError` instead. - add more `Runner` coverage for Coveralls - add my `unexpected-eventemitter` plugin, which helps test `EventEmitter` behavior - fix coverage problems * add all changes since v6.0.0-1 to CHANGELOG.md [ci skip] Signed-off-by: Christopher Hiller * add missing user reference in CHANGELOG.md [ci skip] Signed-off-by: Christopher Hiller * Refactor checkGlobals() error message creation (#3711) * Added sQuote() and dQuote() functions for quoting text inline * Added ngettext() function for message translation for dealing with plurality * Refactored portions of code to use the aforementioned functions * Various fixes to tests * fix --reporter-option to allow comma-separated options; closes #3706 Signed-off-by: Christopher Hiller * Refactor `lookupFiles` and `files` (#3722) * Extract `lookupFile` conditions into functions. * Rename functions/variables to match intent; various scope reductions * Ordered requires (node->third party->project). * Add/Correct JSDoc for various functions. * Replaced `hasMatchingExtname` implementation, providing ~3.5x speedup. * update release steps [ci skip] Signed-off-by: Christopher Hiller * Add ability to unload files from `require` cache (redux) (#3726) * Implemented `Mocha.unloadFile` and `Mocha#unloadFiles`. * Added feature tests, as well as ones for `Mocha#addFiles` and `Mocha#loadFiles`. * Beefed up some unrelated "mocha.js" tests, adding missing chainability tests. * Refactor out usages of Suite#_onlyTests and Suite#_onlyTests (#3689) (#3707) * Refactor out usages of Suite#_onlyTests and Suite#_onlyTests (#3689) * Mark new Suite methods as private * Make hasOnly() and filterOnly() consistently return boolean * Add test coverage for Suite#hasOnly() and Suite#filterOnly() * Refactor tests re: code review comments * Update nyc * Documentation updates (#3728) * Replaced inline URLs with cross-references. * Updated HTML examples * Replaced '--' with em-dashes * Removed incorrect error code * Added additional text concerning globbing * Removed part of testing section concerning using different reporter (which didn't work) * Remove unnecessary post-processing code having no effect; closes #3708 (#3733) The post-processing code `split('\n').join('\n')` does not change nor check anything * Fix `.globals` to remove falsy values (#3737) * Removed falsy values from `.globals` using filter for "undefined"/empty string values. * Added tests for `.globals` * Reordered "mocha.spec.js" option tests lexically * Changed `describe` titles from `.method` to `#method` for Mocha prototypes. * Renamed suite title 'error handling' as '#reporter()' * Reparented '#reporter("xunit")#run(fn)' test suite inside '#run()' test suite. * Uppercased JSON reporter name in `describe` title (#3739) 'Nuff said. * remove "projects" section from MAINTAINERS.md [ci skip] * update changelog for v6.0.0 * grammar updates for changelog v6.0.0 * punctuation updates for changelog v6.0.0 * Release v6.0.0 * Bring the example congfiguration file in line with the documentation. (#3751) * Rename mocharc.js to .mocharc.js * Rename mocharc.json to .mocharc.json * Rename mocharc.yml to .mocharc.yml * fix(cli/run.js): Revert default glob to match Mocha-5.2 The old glob 'test' would allow 'test.js' to be used by default (rather than requiring file be placed inside "test" directory. Fixes #3750 * dev dep upgrades from "npm audit" and "npm upgrade" * fix --ui issues, closes #3746 move all ui-related tests into `test/integration/options/ui.spec.js` * Upgrade docdash version - issue #3663 * fix --watch not finding any files to execute; closes #3748 * backout deprecation of value returned from suite; closes #3744 Signed-off-by: Christopher Hiller * update CHANGELOG.md for v6.0.1 Signed-off-by: Christopher Hiller * Release v6.0.1 * improve issue template. (#3411) * improve issue template. * add api documentation * add MCVE guide * enhance bug report template * apply feedback Signed-off-by: Outsider * Update "karma-browserify" to eliminate Karma middleware warning (#3762) * fix handling of bareword args matching node flags; closes #3761 * fix broken positional arguments in config; ensure positional args are unique; closes #3763 Signed-off-by: Christopher Hiller * update CHANGELOG for v6.0.2 [ci skip] Signed-off-by: Christopher Hiller * Release v6.0.2 * autoformat markdown with prettier; closes #3773 Signed-off-by: Christopher Hiller * Make optional 'options' parameter standard for all reporter constructors (#3766) * Add support for configuration files with ".jsonc" extension (#3760); closes #3753 * Allow passing multiple node flags, closes #3787 (#3788) Fixes support for multiple node flags * Use HTML5 syntax for charset declaration (#3809) * Update devDependencies. The semver compliant ones, i.e. no major version bump. This fixes 68 vulnerabilities (93 -> 25). * Fix this.skip() async calls (#3745) - eat `Pending` errors bubbling up to uncaught handler, as intended - fix cheating tests * Completed website HTML tweaks (#3807) * removed shortcut from favicon, added external tag to hrefs and tweaked logo * made fixes outlined in PR review * changed footer span to footer div * refactor(css/style.css): Put CSS properties in lexical order **No changes - just alphabetized** * style(css/style.css): Add description list declarations Use for "Last updated" redo * docs(_includes/default.html): Fix missing page title * docs(_includes/default.html): Fixed URLs in footer Updated protocol on one, added trailing slash on the other * docs(docs): Remove unneeded div from footer * style(_includes/default.html): Reformatted CC license anchor tag * docs(_includes/default.html): Change to description list for last modified information Placed last modified in time tag, in both machine and human readable formats. * docs(docs): Revert removal of footer div tag Put it back to match look of existing site * set allowUncaught on hooks (#3669); closes #2302 * set allowUncaught on hooks * add test: hooks swallow uncaught exceptions * PR feedback * Add autoprefixer to documentation page CSS * update yargs; closes #3742 * MarkdownMagic script updates (#3815) * Quote `child_process.execSync` executable to allow for embedded spaces in pathname. * guard against undefined timeout option in constructor; closes #3813 Signed-off-by: Christopher Hiller * Upgrade yargs-parser dependency to avoid loading 2 copies of yargs * update package-lock * Remove "package" flag from sample config file because it can only be passes as CLI arg (#3793) * Replace findup-sync with find-up for faster startup (#3830) * Replace findup-sync with find-up, hopefully to increase startup performance * update package-lock.json * runner.js: "self.test" undefined in Browser (#3835) * Delete "/docs/example/chai.js" Removed old [chai-1.0.4](https://github.com/chaijs/chai/blob/40b0eb2268702314cb7577fc1b3c8676a955b23e/chai.js) (released 2012-06-03) from our repository. * Update doc examples "tests.html" (#3811) * Converted URLs to reference current package releases * Update JS-YAML to address security issue (#3845) https://nodesecurity.io/advisories/788 * Fix issue 3714, hide pound icon showing on hover header on docs page (#3850) * Copy Suite property "root" when cloning; closes #3847 (#3848) * Deprecate this.skip() for "after all" hooks (#3719) Print a DeprecationWarning when `this.skip()` is used in `after` hooks. * upgrade deps as per npm audit fix; closes #3854 * Use cwd-relative pathname to load config file (#3829) * update CHANGELOG for v6.1.0 [ci skip] * Release v6.1.0 * Set eol for publishing * update CHANGELOG for v6.1.1 [ci skip] * Release v6.1.1 * update CHANGELOG for v6.1.2 Signed-off-by: Christopher Hiller * Release v6.1.2 * Fix yargs global pollution Yargs exports a global singleton by default. Using it directly will most likely break testing apps using yargs themselves. * Do not pass argv twice * upgrade node-environment-flags; closes #3868 * update CHANGELOG for v6.1.3 [ci skip] Signed-off-by: Christopher Hiller * Release v6.1.3 * Update js-yaml from 3.13.0 to 3.13.1 (#3877) * update CHANGELOG.md for v6.1.4 [ci skip] Signed-off-by: Christopher Hiller * Release v6.1.4 * Remove noise output from JSON reporter test (#3881) * fixed anchors to configuration section (#3841) * Broken links in docs * Use sinon sandbox for reporter tests (#3888) * test(test/reporters): Rework reporter tests Reworked stubs to use sinon. Added logic to (hopefully) rethrow errors when stdout stubbed. Now uses event constants. Various mods for consistency. Now green across the board. * Revert "test(test/reporters): Rework reporter tests" This reverts commit f6b8e898526c908294010ccc31a3ce800c426498. * Adds doc links for mocha-examples (#3889) * add links * link tidy * Fix parsing of config files with "_mocha" (#3894) * Rework reporter tests (#3892) Reworked stubs to use "sinon" package. Added logic to (hopefully) rethrow errors when stdout stubbed. Tests now use event constants. Noise reduction. Various mods for consistency. Now green across the board. * various doc-related fixes (#3790) - ensure `.html` gets hit by prettier - fix order in which docs are generated; let assetgraph process API docs - some auto-generated content in `docs/index.md` updated * rename "exclude" to "ignore" and create alias; closes #3871 (#3872) * fix extension handling; closes #3808 * use yargs-parser options.default utils.js: fix lookupFiles() * preserve-symlinks{-main} flags (#3900) Update unit test for Node-12 compatibility. * Document option to define custom report name for XUnit reporter (#3906) * chore: upgrade (most) depedencies to latest (#3903) * chore: upgrade several depedencies to latest only major is diff@4, which doesn't seem to break mocha's use. * chore: upgrade all devDeps to latest stable replaced coffee-script with coffeescript (fixes deprecation notice) and regenerate package-lock.json * Another round of upgrades now using debug@4, which still supports node@6 * Revert "chore: upgrade (most) depedencies to latest (#3903)" (#3918) This reverts commit 8ce447181f0c6e1312a4d4f1f1c2f3e64e4f30cc. * fix timeout/slow string values and duplicate arguments * coerce function for boolean/string/number types * Fix regression/bug in "lookupFiles()" (#3905) * Extend tests for `--watch` options This commit adds two test cases to test the `--watch` option. We check that touching a test file reruns the tests and we test that touching a file that has a correct extensions reruns the test. This commit adds `fs-extra` as a new dev dependency. * Extract `runWatch` into separate module (#3930) Also remove default values from `runWatch` they are already set by `runMocha`. * Add mocha.min.js file to stacktrace filter (#3922) * ugprades for npm audit * modify Mocha constructor to accept options.global or options.globals (#3914) * consume options.global or options.globals in the constructor. filter unique values * added tests for options.global and options.globals * fixed API doc link * do not fork if no node flags present (#3827) * do not fork if no node flags present * peer review changes, also ensure `lib/cli/cli.js` is executable * update @mocha/docdash to v2.1.1 (#3945) * Update CI config files to use Node-12.x (#3919) * ci(.travis.yml): Update Travis config to use Node-12 Downgrade to Node-10 for browser tests so we can use the pre-built canvas package. * ci(appveyor.yml): Update AppVeyor config to use Node-12 Future-proof install for Node versions to use alternative Node update method if pre-installed version unavailable. * More, improved integration tests for watching (#3929) To extend the test coverage for mocha in watch mode we add the following two tests: * Check that test files are reloaded * Check that watched dependencies are reloaded To support this change we consolidate `runMochaJSONWatchAsync`, `runMochaJSONRawAsync`, and repeated code in tests into `runMochaWatch`. We introduce `invokeMochaAsync` in `test/integration/helpers` as an async alternative to `invokeMocha`. We also eliminate the test for the cursor control character in the output. Its usefulness is dubious as it relies on an implementation detail and the other tests cover the intended behavior. We are also more explicit which test fixtures are used. Instead of setting `this.testFile` in a `beforeEach` hook we do this explicitly for the tests that require it. This prevents interference in tests that do not use the file. * update @mocha/contributors to v1.0.4 (#3944) * Base reporter store ref to console.log (#3725) * add console.log ref * inherit println * unit test change * use static property and fix test * fix base test * rename consoleLog * test include Base.consoleLog check * linter rule so reporters dont console.log * use hooks for stubs with base test * restore stub dont callThrough * fix test + rebase * fix faulty rebase. Removed printLn * remove superfluous base * Collect test files later (#3953) This commit prepares improvements to the watch mode behavior. In the future we want Mocha in watch mode to pick up new test files. This requires that the test files are collected inside `watchRun` instead of before. To accomplish this change we rename `handleFiles` to `collectFiles` and move it to its own module. Instead of calling `collectFiles` in `lib/cli/run` and passing the files on to `watchRun` or `singleRun` we pass down the file collection parameters through `runMocha` and call `collectFiles` in both `watchRun` and `singleRun`. * Fix No Files error when file is passed via --files (#3942) Fixes #3941 * Don't re-initialize grep option on watch re-run (#3960) We remove code that called `mocha.grep(null)` on watch re-runs if the `--grep` option was not supplied. The code seems to serve no purpose and is the cause of #2027. * Hide stacktrace when cli args are missing (#3963) * hide stacktrace when cli args is missing Signed-off-by: Outsider * Update lib/cli/options.js Co-Authored-By: David da Silva * remove unused lines Signed-off-by: Outsider * fix: do not redeclare variable (#3956) * fix: remove duplicate line-height property (#3957) * update CHANGELOG.md for v6.2.0 [ci skip] * Release v6.2.0 * Remove jsdoc index.html placeholder from eleventy file structure and fix broken link in jsdoc tutorial (#3966) * tty.getWindowSize is not a function inside a "worker_threads" worker (#3955) Use "isTTY" instead of tty.isatty(fd) * fix style on mochajs.org (#3886) Signed-off-by: Outsider * Add Matomo to website (#3765) * Added Matomo to index.md * Fixed * Deleted

* Deleted center tag and added style css * Requested changes done * Changed Matomo logo to another file * Changing css and adding aside to html * Fixed height and width * Fixed identations * Deleted footer logo * Requested changes done * Last changes * Trim and eresize matomo image * Remove resizing, it increased image weight * Retain matomo image aspect ratio * Clarify effect of .skip() (#3947) The fact that code inside of a skipped suite is executed, is potentially counter-intuitive. By using alternative phrasing, we make it clear how mocha handles code in skipped suites. Closes #3932 * Remove extraGlobals() (#3970) support of Node v0.9.11 has been dropped years ago. * Drop node.js v6 support (#3885) * Add prefix `list-` to --interfaces and --reporters options (#3962) * Travis: don't run Smoke with Node v6 (#3981) * Update yargs-unparser to v1.6.0 (#3984) * Fix hook pattern of this.skip() in it() tests (#3859) * treat '--require esm' as Node option (#3983) * Update yargs to v13.3.0 (#3986) Update yargs-parser to v13.1.1 * Remove deprecated "getOptions()" and "lib/cli/options.js" (#3967) * Add link checking to docs build step (#3972) * Add link checking to docs build step * Update hyperlink to 4.3.0 * Update @mocha/docdash to 2.1.2 * Fix internal broken fragment links from jsdoc comments to front page * Mark source code line fragment link checks as TODO. They are runtime JS generated and can't be found by hyperlink * Document reporters.Base.prototype.epilogue as a member of the right thing, thus not breaking docs links * Update to hyperlink 4.3.1 * Update to jsdoc 3.6.3 * experiment: add acorn 7 as dev dependency to attempt to fix broken build * Fix broken links from tutorial. Use jsdoc link functionality instead of guessign url's * Make hyperlink skipfilter argument windows compatible * Soft deprecate configuration via "mocha.opts" (#3968) * Adopt the OpenJSF Code of Conduct (#3971) * OJSF coc * update email * Deprecate "debug" and remove "--debug" / "--debug-brk" flags (#3890) * Improved watching with chokidar (#3980) Improved watching with chokidar. This change improves the file watching behavior and fixes #3912. * We introduce the `--watch-files` command line option. This option allows control over which files are and is separate and more powerful than `--extension`. Fixes #2702. * We introduce the `--watch-ignore` command line option that allows control over which files are not watched. Before this was hardcoded to `node_modules` and `.git`. See #2554. * The `chokidar` package now handles file watching. * New test files are picked up by the file watcher and run. Fixes #2176. * Watch hidden files based on extension * add OpenJS Foundation logo to website (#4008) * add OpenJS Foundation logo to website * fix flaky template Signed-off-by: Christopher Hiller --- .editorconfig | 6 - .eleventy.js | 44 + .eslintignore | 8 +- .eslintrc.yaml | 15 - .eslintrc.yml | 90 + .fossaignore | 2 + .gitattributes | 1 + .github/CODE_OF_CONDUCT.md | 61 +- .github/CONTRIBUTING.md | 113 +- .github/ISSUE_TEMPLATE/bug_report.md | 68 + .github/ISSUE_TEMPLATE/feature_request.md | 18 + .github/ISSUE_TEMPLATE/support-question.md | 15 + .github/PULL_REQUEST_TEMPLATE.md | 40 + .github/stale.yml | 29 +- .gitignore | 154 +- .lintstagedrc.json | 10 + .mailmap | 40 +- .markdownlint.json | 10 + .mocharc.yml | 7 + .npmignore | 2 - .npmrc | 2 - .travis.yml | 152 +- .wallaby.js | 65 + CHANGELOG.md | 3049 +-- LICENSE | 2 +- MAINTAINERS.md | 376 + Makefile | 170 - README.md | 189 +- appveyor.yml | 86 +- {images => assets/growl}/error.png | Bin {images => assets/growl}/ok.png | Bin assets/mocha-logo-96.png | Bin 0 -> 4935 bytes assets/opencollective-header.png | Bin 0 -> 74747 bytes bin/_mocha | 570 +- bin/mocha | 195 +- bin/options.js | 41 - bower.json | 38 - browser-entry.js | 40 +- docs/.browserslistrc | 4 + docs/.eleventyignore | 6 + docs/API.md | 20 + docs/CNAME | 1 + docs/LICENSE-CC-BY-4.0 | 395 + docs/README.md | 30 + docs/_headers | 10 + docs/_includes/backers.md | 7 + docs/_includes/default.html | 80 + docs/_includes/sponsors.md | 9 + docs/api-tutorials/custom-reporter.md | 113 + docs/api-tutorials/jsdoc.tutorials.json | 5 + docs/css/normalize.css | 422 + docs/css/prism.css | 148 + docs/css/style.css | 270 + docs/example/Array.js | 74 + docs/example/async-dump.js | 33 + docs/example/debug-hanging-mocha.js | 22 + docs/example/tests.html | 20 + docs/favicon.ico | Bin 0 -> 15086 bytes docs/images/backer-background.svg | 12 + docs/images/emacs.png | Bin 0 -> 605262 bytes docs/images/jetbrains-plugin.png | Bin 0 -> 89142 bytes docs/images/join-chat.svg | 1 + docs/images/link-icon.svg | 13 + docs/images/matomo-logo.png | Bin 0 -> 26528 bytes docs/images/mocha-logo.svg | 125 + docs/images/mocha_side_bar.png | Bin 0 -> 219533 bytes docs/images/openjsf-logo.svg | 68 + docs/images/reporter-doc.png | Bin 0 -> 6762 bytes docs/images/reporter-dot.png | Bin 0 -> 13461 bytes docs/images/reporter-html.png | Bin 0 -> 16764 bytes docs/images/reporter-json-stream.png | Bin 0 -> 6034 bytes docs/images/reporter-json.png | Bin 0 -> 6766 bytes docs/images/reporter-landing-fail.png | Bin 0 -> 6520 bytes docs/images/reporter-landing.png | Bin 0 -> 4229 bytes docs/images/reporter-list.png | Bin 0 -> 5078 bytes docs/images/reporter-min.png | Bin 0 -> 12458 bytes docs/images/reporter-nyan.png | Bin 0 -> 12316 bytes docs/images/reporter-progress.png | Bin 0 -> 4943 bytes docs/images/reporter-spec-duration.png | Bin 0 -> 5658 bytes docs/images/reporter-spec-fail.png | Bin 0 -> 7382 bytes docs/images/reporter-spec.png | Bin 0 -> 5025 bytes docs/images/reporter-string-diffs.png | Bin 0 -> 14558 bytes docs/images/reporter-tap.png | Bin 0 -> 5530 bytes docs/images/test-duration-range.png | Bin 0 -> 5755 bytes docs/images/wallaby.png | Bin 0 -> 49021 bytes docs/index.md | 1939 ++ docs/js/avatars.js | 32 + docs/js/html5shiv.min.js | 4 + .../Snippets/bdd - after each.tmSnippet | 18 - .../Snippets/bdd - after.tmSnippet | 18 - .../Snippets/bdd - before each.tmSnippet | 18 - .../Snippets/bdd - before.tmSnippet | 18 - .../Snippets/bdd - describe.tmSnippet | 18 - .../Snippets/bdd - it.tmSnippet | 18 - .../Snippets/tdd - assert.tmSnippet | 16 - .../Snippets/tdd - assert_deepEqual.tmSnippet | 16 - .../Snippets/tdd - assert_equal.tmSnippet | 16 - .../Snippets/tdd - assert_fail.tmSnippet | 16 - .../tdd - assert_isFunction.tmSnippet | 16 - .../Snippets/tdd - setup.tmSnippet | 18 - .../Snippets/tdd - suite.tmSnippet | 18 - .../Snippets/tdd - teardown.tmSnippet | 18 - .../Snippets/tdd - test.tmSnippet | 18 - editors/JavaScript mocha.tmbundle/info.plist | 19 - example/config/.mocharc.js | 18 + example/config/.mocharc.json | 16 + example/config/.mocharc.jsonc | 17 + example/config/.mocharc.yml | 51 + example/config/README.md | 7 + jsdoc.conf.json | 33 + karma.conf.js | 220 +- lib/browser/.eslintrc.yaml | 4 - lib/browser/debug.js | 7 - lib/browser/events.js | 195 - lib/browser/growl.js | 168 + lib/browser/progress.js | 22 +- lib/{ => browser}/template.html | 6 +- lib/browser/tty.js | 4 +- lib/cli/cli.js | 74 + lib/cli/collect-files.js | 85 + lib/cli/commands.js | 13 + lib/cli/config.js | 101 + lib/cli/index.js | 9 + lib/cli/init.js | 37 + lib/cli/node-flags.js | 86 + lib/cli/one-and-dones.js | 70 + lib/cli/options.js | 331 + lib/cli/run-helpers.js | 180 + lib/cli/run-option-metadata.js | 88 + lib/cli/run.js | 306 + lib/cli/watch-run.js | 185 + lib/context.js | 63 +- lib/errors.js | 141 + lib/growl.js | 136 + lib/hook.js | 16 +- lib/interfaces/bdd.js | 31 +- lib/interfaces/common.js | 73 +- lib/interfaces/exports.js | 13 +- lib/interfaces/qunit.js | 20 +- lib/interfaces/tdd.js | 23 +- lib/mocha.js | 782 +- lib/mocharc.json | 11 + lib/ms.js | 130 - lib/pending.js | 6 +- lib/reporters/base.js | 363 +- lib/reporters/doc.js | 67 +- lib/reporters/dot.js | 49 +- lib/reporters/html.js | 144 +- lib/reporters/json-stream.js | 73 +- lib/reporters/json.js | 79 +- lib/reporters/landing.js | 42 +- lib/reporters/list.js | 53 +- lib/reporters/markdown.js | 45 +- lib/reporters/min.js | 30 +- lib/reporters/nyan.js | 93 +- lib/reporters/progress.js | 51 +- lib/reporters/spec.js | 64 +- lib/reporters/tap.js | 288 +- lib/reporters/xunit.js | 136 +- lib/runnable.js | 315 +- lib/runner.js | 628 +- lib/stats-collector.js | 83 + lib/suite.js | 448 +- lib/test.js | 39 +- lib/to-iso-string/LICENSE | 19 - lib/to-iso-string/index.js | 37 - lib/utils.js | 802 +- media/logo.svg | 7 - mocha.css | 1 - mocha.js | 16248 -------------- netlify.toml | 13 + package-lock.json | 18442 ++++++++++++++++ package-scripts.js | 324 + package.json | 928 +- scripts/dedefine.js | 18 +- scripts/linkify-changelog.js | 25 + scripts/markdown-magic.config.js | 105 + scripts/netlify-headers.js | 119 + scripts/package-json-cullify.js | 17 + scripts/travis-before-install.sh | 19 - scripts/travis-before-script.sh | 3 - test/.eslintrc.yaml | 5 - test/README.md | 15 + test/assertions.js | 323 + test/browser-fixtures/bdd.fixture.js | 8 - test/browser-fixtures/exports.fixture.js | 8 - test/browser-fixtures/qunit.fixture.js | 8 - test/browser-fixtures/tdd.fixture.js | 8 - test/browser-specific/esm.spec.mjs | 5 + .../browser-specific/fixtures/esm.fixture.mjs | 2 + test/browser-specific/mocha.opts | 6 + test/browser-specific/setup.js | 8 + test/browser/README.md | 3 - test/browser/array.spec.js | 39 - test/browser/grep.html | 51 - test/browser/grep.spec.js | 110 - test/browser/index.html | 33 - test/browser/large.html | 24 - test/browser/large.spec.js | 49 - test/browser/multiple-done.spec.js | 18 - test/browser/opts.html | 30 - test/browser/opts.spec.js | 7 - test/browser/stack-trace.html | 24 - test/browser/stack-trace.spec.js | 22 - test/browser/ui.html | 46 - test/browser/ui.spec.js | 33 - test/bundle/amd.spec.js | 16 + .../{foo.js => foo.fixture.js} | 3 +- test/compiler/test.coffee | 2 +- test/integration/color.spec.js | 17 + test/integration/compiler-globbing.spec.js | 36 + test/integration/config.spec.js | 98 + test/integration/deprecate.spec.js | 23 + test/integration/diffs.spec.js | 87 +- test/integration/duplicate-arguments.spec.js | 36 + test/integration/events.spec.js | 97 + test/integration/file-utils.spec.js | 128 + .../fixtures/__default__.fixture.js | 9 + .../fixtures/config/mocha-config/index.js | 9 + .../fixtures/config/mocha-config/package.json | 14 + test/integration/fixtures/config/mocharc.js | 9 + test/integration/fixtures/config/mocharc.json | 7 + test/integration/fixtures/config/mocharc.yaml | 7 + .../fixtures/current-test-title.fixture.js | 47 + .../integration/fixtures/deprecate.fixture.js | 9 + .../fixtures/diffs/diffs.fixture.js | 28 +- test/integration/fixtures/diffs/output | 1 - test/integration/fixtures/exit.fixture.js | 8 + test/integration/fixtures/glob/glob.spec.js | 4 +- .../fixtures/glob/nested/glob.spec.js | 4 +- .../after-hook-deepnested-error.fixture.js | 13 + .../hooks/after-hook-nested-error.fixture.js | 14 + .../before-hook-deepnested-error.fixture.js | 13 + .../hooks/before-hook-nested-error.fixture.js | 11 + .../hooks/before-hook-root-error.fixture.js | 9 + .../multiple-done-with-error.fixture.js | 8 + test/integration/fixtures/no-diff.fixture.js | 8 + .../fixtures/options/bail-async.fixture.js | 23 + .../options/bail-with-after.fixture.js | 57 + .../options/bail-with-afterEach.fixture.js | 57 + .../options/bail-with-before.fixture.js | 44 + .../options/bail-with-beforeEach.fixture.js | 46 + .../options/bail-with-test.fixture.js | 47 + .../fixtures/options/bail.fixture.js | 8 +- .../fixtures/options/delay-only.fixture.js | 24 + .../fixtures/options/delay.fixture.js | 2 +- .../options/extension/test1.fixture.js | 7 + .../options/extension/test2.fixture.coffee | 6 + .../fixtures/options/file-alpha.fixture.js | 13 + .../fixtures/options/file-beta.fixture.js | 11 + .../fixtures/options/file-theta.fixture.js | 7 + .../forbid-only/only-empty-suite.fixture.js | 3 + .../options/forbid-only/only-suite.fixture.js | 5 + .../options/forbid-only/only.fixture.js | 7 + .../fixtures/options/forbid-only/only.js | 7 - .../options/forbid-only/passed.fixture.js | 7 + .../fixtures/options/forbid-only/passed.js | 7 - .../before-this-skip.fixture.js | 8 + .../beforeEach-this-skip.fixture.js | 8 + .../options/forbid-pending/passed.fixture.js | 7 + .../fixtures/options/forbid-pending/passed.js | 7 - .../options/forbid-pending/pending.fixture.js | 7 + .../options/forbid-pending/pending.js | 7 - .../skip-empty-suite.fixture.js | 3 + .../forbid-pending/skip-suite.fixture.js | 5 + .../options/forbid-pending/skip.fixture.js | 7 + .../fixtures/options/forbid-pending/skip.js | 7 - .../forbid-pending/this-skip.fixture.js | 9 + .../fixtures/options/help/test/mocha.opts | 1 + .../fixtures/options/ignore/fail.fixture.js | 7 + .../options/ignore/nested/fail.fixture.js | 7 + .../options/ignore/nested/pass.fixture.js | 5 + .../fixtures/options/ignore/pass.fixture.js | 5 + .../fixtures/options/opts.fixture.js | 5 + .../options/reporter-with-options.fixture.js | 7 + .../fixtures/options/slow-test.fixture.js | 11 + .../options/watch/dependency.fixture.js | 1 + .../options/watch/test-file-change.fixture.js | 8 + .../watch/test-with-dependency.fixture.js | 7 + .../fixtures/passing-async.fixture.js | 7 + .../fixtures/passing-sync.fixture.js | 6 + .../skip-async-before-hooks.fixture.js | 59 + .../skip-async-before-nested.fixture.js | 40 + .../pending/skip-async-before.fixture.js | 29 +- .../pending/skip-async-beforeEach.fixture.js | 16 +- .../pending/skip-async-spec.fixture.js | 24 +- .../pending/skip-hierarchy.fixture.js | 9 + .../pending/skip-shorthand.fixture.js | 7 + .../pending/skip-sync-after.fixture.js | 18 + .../pending/skip-sync-before-hooks.fixture.js | 57 + .../skip-sync-before-nested.fixture.js | 39 + .../pending/skip-sync-before.fixture.js | 23 +- .../pending/skip-sync-beforeEach.fixture.js | 4 +- .../pending/skip-sync-spec.fixture.js | 22 +- .../fixtures/regression/1794/simple-ui.js | 28 - .../fixtures/regression/issue-1417.fixture.js | 4 +- .../integration/fixtures/reporters.fixture.js | 63 + .../fixtures/retries/async.fixture.js | 2 +- .../runner/events-bail-retries.fixture.js | 57 + .../fixtures/runner/events-bail.fixture.js | 52 + .../fixtures/runner/events-basic.fixture.js | 64 + .../fixtures/runner/events-delay.fixture.js | 71 + .../fixtures/runner/events-retries.fixture.js | 56 + test/integration/fixtures/simple-reporter.js | 69 +- .../integration/fixtures/simple-ui.fixture.js | 35 + .../suite/suite-returning-value.fixture.js | 5 + ...xture.js => test-for-simple-ui.fixture.js} | 0 .../fixtures/uncaught-fatal.fixture.js | 11 + test/integration/glob.spec.js | 246 +- test/integration/helpers.js | 304 +- test/integration/hook-err.spec.js | 380 +- test/integration/hooks.spec.js | 39 +- test/integration/init.spec.js | 58 + test/integration/invalid-arguments.spec.js | 22 + test/integration/multiple-done.spec.js | 132 +- test/integration/no-diff.spec.js | 34 + test/integration/only.spec.js | 47 +- test/integration/options.spec.js | 283 - test/integration/options/asyncOnly.spec.js | 37 + test/integration/options/bail.spec.js | 134 + test/integration/options/compilers.spec.js | 21 + test/integration/options/delay.spec.js | 58 + test/integration/options/exit.spec.js | 68 + test/integration/options/extension.spec.js | 31 + test/integration/options/file.spec.js | 67 + test/integration/options/forbidOnly.spec.js | 127 + .../integration/options/forbidPending.spec.js | 91 + test/integration/options/grep.spec.js | 79 + test/integration/options/help.spec.js | 26 + test/integration/options/ignore.spec.js | 75 + test/integration/options/invert.spec.js | 26 + .../options/listInterfaces.spec.js | 37 + .../integration/options/listReporters.spec.js | 40 + test/integration/options/node-flags.spec.js | 19 + test/integration/options/opts.spec.js | 64 + .../options/reporter-option.spec.js | 86 + test/integration/options/retries.spec.js | 24 + test/integration/options/sort.spec.js | 28 + test/integration/options/timeout.spec.js | 52 + test/integration/options/ui.spec.js | 34 + test/integration/options/watch.spec.js | 338 + test/integration/pending.spec.js | 290 +- test/integration/regression.spec.js | 125 +- test/integration/reporters.spec.js | 229 +- test/integration/retries.spec.js | 187 +- test/integration/suite.spec.js | 74 +- test/integration/timeout.spec.js | 14 +- test/integration/uncaught.spec.js | 70 +- test/interfaces/bdd.spec.js | 66 +- test/interfaces/exports.spec.js | 44 +- test/interfaces/qunit.spec.js | 21 +- test/interfaces/tdd.spec.js | 38 +- test/jsapi/index.js | 7 +- test/misc/exit.spec.js | 20 - test/misc/many.spec.js | 29 - test/misc/nontty.spec.js | 11 - test/misc/only/bdd-require.spec.js | 20 - test/misc/only/bdd.spec.js | 127 - test/misc/only/qunit.spec.js | 75 - test/misc/only/tdd.spec.js | 127 - test/node-unit/cli/config.spec.js | 140 + test/node-unit/cli/node-flags.spec.js | 136 + test/node-unit/cli/options.spec.js | 795 + test/node-unit/cli/run-helpers.spec.js | 50 + test/node-unit/cli/run.spec.js | 24 + test/node-unit/color.spec.js | 20 - test/node-unit/file-utils.spec.js | 116 - test/node-unit/fs.spec.js | 22 - test/node-unit/http-meta-2.spec.js | 96 - test/node-unit/http-meta.spec.js | 69 - test/node-unit/http.spec.js | 18 - test/node-unit/mocha.spec.js | 72 + test/node-unit/stack-trace-filter.spec.js | 73 +- test/only/bdd-require.spec.js | 18 + test/only/bdd.spec.js | 127 + test/{misc => }/only/global/bdd.spec.js | 12 +- test/{misc => }/only/global/qunit.spec.js | 12 +- test/{misc => }/only/global/tdd.spec.js | 12 +- test/only/qunit.spec.js | 75 + test/only/tdd.spec.js | 127 + test/{ => opts}/mocha.opts | 9 +- test/opts/opts.spec.js | 11 + test/reporters/base.spec.js | 436 +- test/reporters/doc.spec.js | 394 +- test/reporters/dot.spec.js | 394 +- test/reporters/helpers.js | 242 + test/reporters/json-stream.spec.js | 267 +- test/reporters/json.spec.js | 114 +- test/reporters/landing.spec.js | 243 +- test/reporters/list.spec.js | 429 +- test/reporters/markdown.spec.js | 183 +- test/reporters/min.spec.js | 81 +- test/reporters/nyan.spec.js | 759 +- test/reporters/progress.spec.js | 224 +- test/reporters/spec.spec.js | 253 +- test/reporters/tap.spec.js | 742 +- test/reporters/xunit.spec.js | 658 +- test/require/a.js | 2 +- test/require/c.js | 2 +- test/require/require.spec.js | 12 +- test/sanity/sanity.spec.js | 4 +- test/setup.js | 9 +- test/unit/context.spec.js | 89 +- test/unit/duration.spec.js | 20 +- test/unit/errors.spec.js | 28 + test/unit/globals.spec.js | 18 +- test/unit/grep.spec.js | 50 +- test/unit/hook-async.spec.js | 42 +- test/unit/hook-sync-nested.spec.js | 47 +- test/unit/hook-sync.spec.js | 36 +- test/unit/hook-timeout.spec.js | 4 +- test/unit/mocha.spec.js | 422 +- test/unit/ms.spec.js | 82 - test/unit/overspecified-async.spec.js | 4 +- test/unit/required-tokens.spec.js | 4 +- test/unit/root.spec.js | 8 +- test/unit/runnable.spec.js | 750 +- test/unit/runner.spec.js | 854 +- test/unit/suite.spec.js | 630 +- test/unit/test.spec.js | 68 +- test/unit/throw.spec.js | 144 +- test/unit/timeout.spec.js | 45 +- test/unit/utils.spec.js | 834 +- 423 files changed, 45340 insertions(+), 27911 deletions(-) create mode 100644 .eleventy.js delete mode 100644 .eslintrc.yaml create mode 100644 .eslintrc.yml create mode 100644 .fossaignore create mode 100644 .gitattributes create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/support-question.md create mode 100644 .github/PULL_REQUEST_TEMPLATE.md create mode 100644 .lintstagedrc.json create mode 100644 .markdownlint.json create mode 100644 .mocharc.yml delete mode 100644 .npmignore delete mode 100644 .npmrc create mode 100644 .wallaby.js create mode 100644 MAINTAINERS.md delete mode 100644 Makefile rename {images => assets/growl}/error.png (100%) rename {images => assets/growl}/ok.png (100%) create mode 100644 assets/mocha-logo-96.png create mode 100644 assets/opencollective-header.png delete mode 100644 bin/options.js delete mode 100644 bower.json create mode 100644 docs/.browserslistrc create mode 100644 docs/.eleventyignore create mode 100644 docs/API.md create mode 100644 docs/CNAME create mode 100644 docs/LICENSE-CC-BY-4.0 create mode 100644 docs/README.md create mode 100644 docs/_headers create mode 100644 docs/_includes/backers.md create mode 100644 docs/_includes/default.html create mode 100644 docs/_includes/sponsors.md create mode 100644 docs/api-tutorials/custom-reporter.md create mode 100644 docs/api-tutorials/jsdoc.tutorials.json create mode 100644 docs/css/normalize.css create mode 100644 docs/css/prism.css create mode 100644 docs/css/style.css create mode 100644 docs/example/Array.js create mode 100644 docs/example/async-dump.js create mode 100644 docs/example/debug-hanging-mocha.js create mode 100644 docs/example/tests.html create mode 100644 docs/favicon.ico create mode 100644 docs/images/backer-background.svg create mode 100644 docs/images/emacs.png create mode 100644 docs/images/jetbrains-plugin.png create mode 100644 docs/images/join-chat.svg create mode 100644 docs/images/link-icon.svg create mode 100644 docs/images/matomo-logo.png create mode 100644 docs/images/mocha-logo.svg create mode 100644 docs/images/mocha_side_bar.png create mode 100644 docs/images/openjsf-logo.svg create mode 100644 docs/images/reporter-doc.png create mode 100644 docs/images/reporter-dot.png create mode 100644 docs/images/reporter-html.png create mode 100644 docs/images/reporter-json-stream.png create mode 100644 docs/images/reporter-json.png create mode 100644 docs/images/reporter-landing-fail.png create mode 100644 docs/images/reporter-landing.png create mode 100644 docs/images/reporter-list.png create mode 100644 docs/images/reporter-min.png create mode 100644 docs/images/reporter-nyan.png create mode 100644 docs/images/reporter-progress.png create mode 100644 docs/images/reporter-spec-duration.png create mode 100644 docs/images/reporter-spec-fail.png create mode 100644 docs/images/reporter-spec.png create mode 100644 docs/images/reporter-string-diffs.png create mode 100644 docs/images/reporter-tap.png create mode 100644 docs/images/test-duration-range.png create mode 100644 docs/images/wallaby.png create mode 100644 docs/index.md create mode 100644 docs/js/avatars.js create mode 100644 docs/js/html5shiv.min.js delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/bdd - after each.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/bdd - after.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/bdd - before each.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/bdd - before.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/bdd - describe.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/bdd - it.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - assert.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - assert_deepEqual.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - assert_equal.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - assert_fail.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - assert_isFunction.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - setup.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - suite.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - teardown.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/Snippets/tdd - test.tmSnippet delete mode 100644 editors/JavaScript mocha.tmbundle/info.plist create mode 100644 example/config/.mocharc.js create mode 100644 example/config/.mocharc.json create mode 100644 example/config/.mocharc.jsonc create mode 100644 example/config/.mocharc.yml create mode 100644 example/config/README.md create mode 100644 jsdoc.conf.json delete mode 100644 lib/browser/.eslintrc.yaml delete mode 100644 lib/browser/debug.js delete mode 100644 lib/browser/events.js create mode 100644 lib/browser/growl.js rename lib/{ => browser}/template.html (73%) create mode 100755 lib/cli/cli.js create mode 100644 lib/cli/collect-files.js create mode 100644 lib/cli/commands.js create mode 100644 lib/cli/config.js create mode 100644 lib/cli/index.js create mode 100644 lib/cli/init.js create mode 100644 lib/cli/node-flags.js create mode 100644 lib/cli/one-and-dones.js create mode 100644 lib/cli/options.js create mode 100644 lib/cli/run-helpers.js create mode 100644 lib/cli/run-option-metadata.js create mode 100644 lib/cli/run.js create mode 100644 lib/cli/watch-run.js create mode 100644 lib/errors.js create mode 100644 lib/growl.js create mode 100644 lib/mocharc.json delete mode 100644 lib/ms.js create mode 100644 lib/stats-collector.js delete mode 100644 lib/to-iso-string/LICENSE delete mode 100644 lib/to-iso-string/index.js delete mode 100644 media/logo.svg delete mode 100644 mocha.js create mode 100644 netlify.toml create mode 100644 package-lock.json create mode 100644 package-scripts.js create mode 100644 scripts/linkify-changelog.js create mode 100644 scripts/markdown-magic.config.js create mode 100644 scripts/netlify-headers.js create mode 100644 scripts/package-json-cullify.js delete mode 100755 scripts/travis-before-install.sh delete mode 100755 scripts/travis-before-script.sh delete mode 100644 test/.eslintrc.yaml create mode 100644 test/README.md create mode 100644 test/assertions.js delete mode 100644 test/browser-fixtures/bdd.fixture.js delete mode 100644 test/browser-fixtures/exports.fixture.js delete mode 100644 test/browser-fixtures/qunit.fixture.js delete mode 100644 test/browser-fixtures/tdd.fixture.js create mode 100644 test/browser-specific/esm.spec.mjs create mode 100644 test/browser-specific/fixtures/esm.fixture.mjs create mode 100644 test/browser-specific/mocha.opts create mode 100644 test/browser-specific/setup.js delete mode 100644 test/browser/README.md delete mode 100644 test/browser/array.spec.js delete mode 100644 test/browser/grep.html delete mode 100644 test/browser/grep.spec.js delete mode 100644 test/browser/index.html delete mode 100644 test/browser/large.html delete mode 100644 test/browser/large.spec.js delete mode 100644 test/browser/multiple-done.spec.js delete mode 100644 test/browser/opts.html delete mode 100644 test/browser/opts.spec.js delete mode 100644 test/browser/stack-trace.html delete mode 100644 test/browser/stack-trace.spec.js delete mode 100644 test/browser/ui.html delete mode 100644 test/browser/ui.spec.js create mode 100644 test/bundle/amd.spec.js rename test/compiler-fixtures/{foo.js => foo.fixture.js} (84%) create mode 100644 test/integration/color.spec.js create mode 100644 test/integration/compiler-globbing.spec.js create mode 100644 test/integration/config.spec.js create mode 100644 test/integration/deprecate.spec.js create mode 100644 test/integration/duplicate-arguments.spec.js create mode 100644 test/integration/events.spec.js create mode 100644 test/integration/file-utils.spec.js create mode 100644 test/integration/fixtures/__default__.fixture.js create mode 100644 test/integration/fixtures/config/mocha-config/index.js create mode 100644 test/integration/fixtures/config/mocha-config/package.json create mode 100644 test/integration/fixtures/config/mocharc.js create mode 100644 test/integration/fixtures/config/mocharc.json create mode 100644 test/integration/fixtures/config/mocharc.yaml create mode 100644 test/integration/fixtures/current-test-title.fixture.js create mode 100644 test/integration/fixtures/deprecate.fixture.js create mode 100644 test/integration/fixtures/exit.fixture.js create mode 100644 test/integration/fixtures/hooks/after-hook-deepnested-error.fixture.js create mode 100644 test/integration/fixtures/hooks/after-hook-nested-error.fixture.js create mode 100644 test/integration/fixtures/hooks/before-hook-deepnested-error.fixture.js create mode 100644 test/integration/fixtures/hooks/before-hook-nested-error.fixture.js create mode 100644 test/integration/fixtures/hooks/before-hook-root-error.fixture.js create mode 100644 test/integration/fixtures/multiple-done-with-error.fixture.js create mode 100644 test/integration/fixtures/no-diff.fixture.js create mode 100644 test/integration/fixtures/options/bail-async.fixture.js create mode 100644 test/integration/fixtures/options/bail-with-after.fixture.js create mode 100644 test/integration/fixtures/options/bail-with-afterEach.fixture.js create mode 100644 test/integration/fixtures/options/bail-with-before.fixture.js create mode 100644 test/integration/fixtures/options/bail-with-beforeEach.fixture.js create mode 100644 test/integration/fixtures/options/bail-with-test.fixture.js create mode 100644 test/integration/fixtures/options/delay-only.fixture.js create mode 100644 test/integration/fixtures/options/extension/test1.fixture.js create mode 100644 test/integration/fixtures/options/extension/test2.fixture.coffee create mode 100644 test/integration/fixtures/options/file-alpha.fixture.js create mode 100644 test/integration/fixtures/options/file-beta.fixture.js create mode 100644 test/integration/fixtures/options/file-theta.fixture.js create mode 100644 test/integration/fixtures/options/forbid-only/only-empty-suite.fixture.js create mode 100644 test/integration/fixtures/options/forbid-only/only-suite.fixture.js create mode 100644 test/integration/fixtures/options/forbid-only/only.fixture.js delete mode 100644 test/integration/fixtures/options/forbid-only/only.js create mode 100644 test/integration/fixtures/options/forbid-only/passed.fixture.js delete mode 100644 test/integration/fixtures/options/forbid-only/passed.js create mode 100644 test/integration/fixtures/options/forbid-pending/before-this-skip.fixture.js create mode 100644 test/integration/fixtures/options/forbid-pending/beforeEach-this-skip.fixture.js create mode 100644 test/integration/fixtures/options/forbid-pending/passed.fixture.js delete mode 100644 test/integration/fixtures/options/forbid-pending/passed.js create mode 100644 test/integration/fixtures/options/forbid-pending/pending.fixture.js delete mode 100644 test/integration/fixtures/options/forbid-pending/pending.js create mode 100644 test/integration/fixtures/options/forbid-pending/skip-empty-suite.fixture.js create mode 100644 test/integration/fixtures/options/forbid-pending/skip-suite.fixture.js create mode 100644 test/integration/fixtures/options/forbid-pending/skip.fixture.js delete mode 100644 test/integration/fixtures/options/forbid-pending/skip.js create mode 100644 test/integration/fixtures/options/forbid-pending/this-skip.fixture.js create mode 100644 test/integration/fixtures/options/help/test/mocha.opts create mode 100644 test/integration/fixtures/options/ignore/fail.fixture.js create mode 100644 test/integration/fixtures/options/ignore/nested/fail.fixture.js create mode 100644 test/integration/fixtures/options/ignore/nested/pass.fixture.js create mode 100644 test/integration/fixtures/options/ignore/pass.fixture.js create mode 100644 test/integration/fixtures/options/opts.fixture.js create mode 100644 test/integration/fixtures/options/reporter-with-options.fixture.js create mode 100644 test/integration/fixtures/options/slow-test.fixture.js create mode 100644 test/integration/fixtures/options/watch/dependency.fixture.js create mode 100644 test/integration/fixtures/options/watch/test-file-change.fixture.js create mode 100644 test/integration/fixtures/options/watch/test-with-dependency.fixture.js create mode 100644 test/integration/fixtures/passing-async.fixture.js create mode 100644 test/integration/fixtures/passing-sync.fixture.js create mode 100644 test/integration/fixtures/pending/skip-async-before-hooks.fixture.js create mode 100644 test/integration/fixtures/pending/skip-async-before-nested.fixture.js create mode 100644 test/integration/fixtures/pending/skip-hierarchy.fixture.js create mode 100644 test/integration/fixtures/pending/skip-shorthand.fixture.js create mode 100644 test/integration/fixtures/pending/skip-sync-after.fixture.js create mode 100644 test/integration/fixtures/pending/skip-sync-before-hooks.fixture.js create mode 100644 test/integration/fixtures/pending/skip-sync-before-nested.fixture.js delete mode 100644 test/integration/fixtures/regression/1794/simple-ui.js create mode 100644 test/integration/fixtures/reporters.fixture.js create mode 100644 test/integration/fixtures/runner/events-bail-retries.fixture.js create mode 100644 test/integration/fixtures/runner/events-bail.fixture.js create mode 100644 test/integration/fixtures/runner/events-basic.fixture.js create mode 100644 test/integration/fixtures/runner/events-delay.fixture.js create mode 100644 test/integration/fixtures/runner/events-retries.fixture.js create mode 100644 test/integration/fixtures/simple-ui.fixture.js create mode 100644 test/integration/fixtures/suite/suite-returning-value.fixture.js rename test/integration/fixtures/{regression/1794/issue-1794.fixture.js => test-for-simple-ui.fixture.js} (100%) create mode 100644 test/integration/fixtures/uncaught-fatal.fixture.js create mode 100644 test/integration/init.spec.js create mode 100644 test/integration/invalid-arguments.spec.js create mode 100644 test/integration/no-diff.spec.js delete mode 100644 test/integration/options.spec.js create mode 100644 test/integration/options/asyncOnly.spec.js create mode 100644 test/integration/options/bail.spec.js create mode 100644 test/integration/options/compilers.spec.js create mode 100644 test/integration/options/delay.spec.js create mode 100644 test/integration/options/exit.spec.js create mode 100644 test/integration/options/extension.spec.js create mode 100644 test/integration/options/file.spec.js create mode 100644 test/integration/options/forbidOnly.spec.js create mode 100644 test/integration/options/forbidPending.spec.js create mode 100644 test/integration/options/grep.spec.js create mode 100644 test/integration/options/help.spec.js create mode 100644 test/integration/options/ignore.spec.js create mode 100644 test/integration/options/invert.spec.js create mode 100644 test/integration/options/listInterfaces.spec.js create mode 100644 test/integration/options/listReporters.spec.js create mode 100644 test/integration/options/node-flags.spec.js create mode 100644 test/integration/options/opts.spec.js create mode 100644 test/integration/options/reporter-option.spec.js create mode 100644 test/integration/options/retries.spec.js create mode 100644 test/integration/options/sort.spec.js create mode 100644 test/integration/options/timeout.spec.js create mode 100644 test/integration/options/ui.spec.js create mode 100644 test/integration/options/watch.spec.js delete mode 100644 test/misc/exit.spec.js delete mode 100644 test/misc/many.spec.js delete mode 100644 test/misc/nontty.spec.js delete mode 100644 test/misc/only/bdd-require.spec.js delete mode 100644 test/misc/only/bdd.spec.js delete mode 100644 test/misc/only/qunit.spec.js delete mode 100644 test/misc/only/tdd.spec.js create mode 100644 test/node-unit/cli/config.spec.js create mode 100644 test/node-unit/cli/node-flags.spec.js create mode 100644 test/node-unit/cli/options.spec.js create mode 100644 test/node-unit/cli/run-helpers.spec.js create mode 100644 test/node-unit/cli/run.spec.js delete mode 100644 test/node-unit/color.spec.js delete mode 100644 test/node-unit/file-utils.spec.js delete mode 100644 test/node-unit/fs.spec.js delete mode 100644 test/node-unit/http-meta-2.spec.js delete mode 100644 test/node-unit/http-meta.spec.js delete mode 100644 test/node-unit/http.spec.js create mode 100644 test/node-unit/mocha.spec.js create mode 100644 test/only/bdd-require.spec.js create mode 100644 test/only/bdd.spec.js rename test/{misc => }/only/global/bdd.spec.js (68%) rename test/{misc => }/only/global/qunit.spec.js (66%) rename test/{misc => }/only/global/tdd.spec.js (67%) create mode 100644 test/only/qunit.spec.js create mode 100644 test/only/tdd.spec.js rename test/{ => opts}/mocha.opts (57%) create mode 100644 test/opts/opts.spec.js create mode 100644 test/reporters/helpers.js create mode 100644 test/unit/errors.spec.js delete mode 100644 test/unit/ms.spec.js diff --git a/.editorconfig b/.editorconfig index e3a4859eeb..e09b844f73 100644 --- a/.editorconfig +++ b/.editorconfig @@ -10,9 +10,3 @@ insert_final_newline = true trim_trailing_whitespace = true indent_style = space indent_size = 2 - -[Makefile] -indent_style = tab - -[*.md] -trim_trailing_whitespace = false diff --git a/.eleventy.js b/.eleventy.js new file mode 100644 index 0000000000..934e19bb89 --- /dev/null +++ b/.eleventy.js @@ -0,0 +1,44 @@ +'use strict'; + +module.exports = function(eleventyConfig) { + eleventyConfig.addPassthroughCopy('docs/css'); + eleventyConfig.addPassthroughCopy('docs/js'); + eleventyConfig.addPassthroughCopy('docs/images'); + eleventyConfig.addPassthroughCopy('docs/CNAME'); + eleventyConfig.addPassthroughCopy('docs/_headers'); + eleventyConfig.addPassthroughCopy('docs/favicon.ico'); + + eleventyConfig.addPassthroughCopy('docs/example'); + + /* Markdown Plugins */ + const markdown = require('markdown-it')({ + html: true, + linkify: true + }); + + markdown.use(require('markdown-it-anchor'), { + slugify: require('uslug'), + permalink: true, + permalinkBefore: true, + permalinkClass: 'direct-link', + permalinkSymbol: '#' + }); + + markdown.use(require('markdown-it-attrs'), { + leftDelimiter: '{:', + rightDelimiter: '}' + }); + + markdown.use(require('markdown-it-prism')); + + eleventyConfig.setLibrary('md', markdown); + + return { + passthroughFileCopy: true, + dir: { + input: 'docs', + includes: '_includes', + output: 'docs/_site' + } + }; +}; diff --git a/.eslintignore b/.eslintignore index 1ce4437ab5..d9a508ec53 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,4 +1,8 @@ coverage/ -lib/to-iso-string/**/*.js mocha.js -BUILDTMP +*.fixture.js +docs/ +out/ +!lib/mocha.js +test/integration/fixtures +!.*.js diff --git a/.eslintrc.yaml b/.eslintrc.yaml deleted file mode 100644 index d5673232e7..0000000000 --- a/.eslintrc.yaml +++ /dev/null @@ -1,15 +0,0 @@ -root: true -env: - node: true - browser: true -parserOptions: - ecmaVersion: 5 - sourceType: script -extends: semistandard -rules: - strict: - - error - - safe - linebreak-style: - - error - - unix diff --git a/.eslintrc.yml b/.eslintrc.yml new file mode 100644 index 0000000000..a668139868 --- /dev/null +++ b/.eslintrc.yml @@ -0,0 +1,90 @@ +root: true +extends: + - semistandard + - plugin:prettier/recommended +env: + node: yes + browser: yes +parserOptions: + ecmaVersion: 5 + ecmaFeatures: + globalReturn: no + jsx: no + sourceType: script +rules: + strict: + - error + - safe +overrides: + - files: + - scripts/**/*.js + - package-scripts.js + - karma.conf.js + - .wallaby.js + - .eleventy.js + - bin/* + - lib/cli/**/*.js + - test/node-unit/**/*.js + - test/integration/options/watch.spec.js + - test/integration/helpers.js + - lib/growl.js + parserOptions: + ecmaVersion: 6 + env: + browser: no + + - files: + - test/**/*.{js,mjs} + env: + mocha: yes + globals: + expect: no + - files: + - bin/* + - lib/**/*.js + rules: + no-restricted-globals: + - error + - name: setTimeout + message: &GH-237 See https://github.com/mochajs/mocha/issues/237 + - name: clearTimeout + message: *GH-237 + - name: setInterval + message: *GH-237 + - name: clearInterval + message: *GH-237 + - name: setImmediate + message: *GH-237 + - name: clearImmediate + message: *GH-237 + - name: Date + message: *GH-237 + no-restricted-modules: + - error + - timers + no-restricted-syntax: + - error + # disallow `global.setTimeout()`, `global.setInterval()`, etc. + - selector: 'CallExpression[callee.object.name=global][callee.property.name=/(set|clear)(Timeout|Immediate|Interval)/]' + message: *GH-237 + # disallow `new global.Date()` + - selector: 'NewExpression[callee.object.name=global][callee.property.name=Date]' + message: *GH-237 + # disallow property access of `global..*` + - selector: '*[object.object.name=global][object.property.name=/(Date|(set|clear)(Timeout|Immediate|Interval))/]:expression' + message: *GH-237 + + - files: + - test/**/*.mjs + parserOptions: + ecmaVersion: 6 + sourceType: module + + - files: + - lib/reporters/*.js + rules: + no-restricted-syntax: + - error + # disallow Reporters using `console.log()` + - selector: 'CallExpression[callee.object.name=console][callee.property.name=log]' + message: &GH-3604 See https://github.com/mochajs/mocha/issues/3604 diff --git a/.fossaignore b/.fossaignore new file mode 100644 index 0000000000..db585bd78d --- /dev/null +++ b/.fossaignore @@ -0,0 +1,2 @@ +CONTRIBUTING.md +MAINTAINERS.md diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000..6313b56c57 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* text=auto eol=lf diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md index 4e63d0ac3d..06fc2b30ed 100644 --- a/.github/CODE_OF_CONDUCT.md +++ b/.github/CODE_OF_CONDUCT.md @@ -1,6 +1,7 @@ # Mocha Code of Conduct ## Be friendly and patient + We understand that everyone has different levels of experience or knowledge in many diverse fields, be it technical or non-technical in nature. We also have areas of knowledge we are eager to expand; we want to be a community where people can not only contribute, but feel comfortable to ask questions as well and learn along the way. If someone says something @@ -8,36 +9,41 @@ wrong, or says something accidentally offensive, respond with patience and try t we all were newbies at one point. ## Be welcoming + We strive to be a community that welcomes and supports people of all backgrounds and identities. This includes, but is not limited to, members of any race, ethnicity, culture, national origin, color, immigration status, social and economic class, educational level, sex, sexual orientation, gender identity and expression, age, size, family status, political belief, religion, and mental and physical ability. ## Be considerate + Your work will be used by other people, and you in turn will depend on the work of others. Any decision you make will affect users and colleagues, and you should take those consequences into account when making decisions. Remember that we’re a world-wide community, so you might not be communicating in someone else’s primary language. ## Be respectful + Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners. We might all experience some frustration now and then, but we cannot allow that frustration to turn into a personal attack. It’s important to remember that a community where people feel uncomfortable or threatened is not a productive one. Members of the JS Foundation community should be respectful when dealing with other members as well as with people outside the JS Foundation community. ## Be careful in the words that you choose + We are a community of professionals, and we conduct ourselves professionally. Be kind to others. Do not insult or put down other participants. Harassment and other exclusionary behavior aren’t acceptable. This includes, but is not limited to: -* Violent threats or language directed against another person. -* Discriminatory jokes and language. -* Posting sexually explicit or violent material. -* Posting (or threatening to post) other people’s personally identifying information (“doxing”). -* Personal insults, especially those using racist or sexist terms. -* Unwelcome sexual attention. -* Advocating for, or encouraging, any of the above behavior. -* Repeated harassment of others. In general, if someone asks you to stop, then stop. +- Violent threats or language directed against another person. +- Discriminatory jokes and language. +- Posting sexually explicit or violent material. +- Posting (or threatening to post) other people’s personally identifying information (“doxing”). +- Personal insults, especially those using racist or sexist terms. +- Unwelcome sexual attention. +- Advocating for, or encouraging, any of the above behavior. +- Repeated harassment of others. In general, if someone asks you to stop, then stop. ## When we disagree, try to understand why + Disagreements, both social and technical, happen all the time and JS Foundation projects are no exception. It is important that we resolve disagreements and differing views constructively. Remember that we’re different. The strength of the JS Foundation comes from its varied community, people from a wide range of backgrounds. Different people have different @@ -48,4 +54,41 @@ and learning from mistakes. Original text courtesy of the Speak Up! project and Django Project. ## QUESTIONS? -If you have questions, please see the FAQ. If that doesn’t answer your questions, feel free to email conduct@js.foundation. + +If you have questions, please see the FAQ. If that doesn’t answer your questions, feel free to email report@lists.openjsf.org. + +# OpenJS Foundation Code of Conduct + +The OpenJS Foundation and its member projects use the Contributor +Covenant v1.4.1 as its Code of Conduct. Refer to the following +for the full text: + +- [english](https://www.contributor-covenant.org/version/1/4/code-of-conduct) +- [translations](https://www.contributor-covenant.org/translations) + +Refer to the section on reporting and escalation in this document for the specific emails that can be used to report and escalate issues. + +## Reporting + +### Project Spaces + +For reporting issues in spaces related to a member project please use the email provided by the project for reporting. Projects handle CoC issues related to the spaces that they maintain. Projects maintainers commit to: + +- maintain the confidentiality with regard to the reporter of an incident +- to participate in the path for escalation as outlined in + the section on Escalation when required. + +### Foundation Spaces + +For reporting issues in spaces managed by the OpenJS Foundation, for example, repositories within the OpenJS organization, use the email `report@lists.openjsf.org`. The Cross Project Council (CPC) is responsible for managing these reports and commits to: + +- maintain the confidentiality with regard to the reporter of an incident +- to participate in the path for escalation as outlined in + the section on Escalation when required. + +## Escalation + +The OpenJS Foundation maintains a Code of Conduct Panel (CoCP). This is a foundation-wide team established to manage escalation when a reporter believes that a report to a member project or the CPC has not been properly handled. In order to escalate to the CoCP send an email to `"coc-escalation@lists.openjsf.org`. + +For more information, refer to the full +[Code of Conduct governance document](https://github.com/openjs-foundation/bootstrap/blob/master/proposals/stage-1/CODE_OF_CONDUCT/FOUNDATION_CODE_OF_CONDUCT_REQUIREMENTS.md). diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index b36ef88c3c..027a7f9647 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -8,77 +8,90 @@ If you have a question about using Mocha, please use the [mailing list](https:// ## :bug: I Found a Bug -Sorry! It happens to the best of us. If you've found a bug in Mocha, **please [search](https://github.com/mochajs/mocha/issues/) to see if it's already been reported**. Otherwise, create a [new issue](https://github.com/mochajs/mocha/issues/new). If you can fix the bug yourself, feel free to create a [pull request](#propose-a-change) thereafter. +Sorry! It happens to the best of us. If you've found a bug in Mocha, **please [search](https://github.com/mochajs/mocha/issues/) to see if it's already been reported**. Otherwise, create a [new issue](https://github.com/mochajs/mocha/issues/new). If you can fix the bug yourself, feel free to create a [pull request](#propose-a-change) thereafter. -Please include *as much detail as possible* to help us reproduce and diagnose the bug. Most importantly: +Please include _as much detail as possible_ to help us reproduce and diagnose the bug. Most importantly: -- Let us know *how* you're running Mocha (options, flags, environment, browser or Node.js, etc.) -- Include your test code or file(s). If large, please provide a link to a repository or [gist](https://gist.github.com). +- Let us know _how_ you're running Mocha (options, flags, environment, browser or Node.js, etc.) +- Include your test code or file(s). If large, please provide a link to a repository or [gist](https://gist.github.com). - Please show code in JavaScript only (any version) -If we need more information from you, we'll let you know. If you don't within a reasonable time frame (TBD), your issue will be automatically closed for inactivity. +If we need more information from you, we'll let you know. If you don't within a reasonable time frame (TBD), your issue will be automatically closed for inactivity. ## :exclamation: Propose a Change -Before you get your hands dirty, please [search](https://github.com/mochajs/mocha/issues/) for a related issue, or [create a new one](https://github.com/mochajs/mocha/issues/new). If you wish to contribute a new feature, this is doubly important! Let's discuss your proposed changes first; we don't want you to waste time implementing a change that is at odds with the project's direction. That said, we'll happily consider any contribution, no matter how great or small. +Before you get your hands dirty, please [search](https://github.com/mochajs/mocha/issues/) for a related issue, or [create a new one](https://github.com/mochajs/mocha/issues/new). If you wish to contribute a new feature, this is doubly important! Let's discuss your proposed changes first; we don't want you to waste time implementing a change that is at odds with the project's direction. That said, we'll happily consider any contribution, no matter how great or small. -*This paragraph would contain information about Mocha's roadmap, but it doesn't yet exist.* :poop: +_This paragraph would contain information about Mocha's roadmap, but it doesn't yet exist._ :poop: It's also important to understand some overarching goals of Mocha, detailed below. ### :soccer: About Project Goals -Mocha is a test framework. Developers use it against anything from legacy spaghetti in IE7 to stage-0 TC39 features in Electron. While still staying current, Mocha will only drop support for old platforms as a last resort. If and only if Mocha cannot move forward as a project, support will be dropped. If workarounds exist, they are preferred. +Mocha is a test framework. Developers use it against anything from legacy spaghetti in IE11 to stage-0 TC39 features in Electron. Mocha is committed to providing support for maintained (LTS) versions of Node.js and popular browsers (of which IE11 is still one, as of December 2018). -Mocha adheres strictly to [semantic versioning](https://semver.org). We are *extremely cautious* with changes that have the potential to break; given the size of Mocha's user base, it's *highly unlikely* a breaking change will slide by. +Mocha adheres strictly to [semantic versioning](https://semver.org). We are _extremely cautious_ with changes that have the potential to break; given the size of Mocha's user base, it's _highly unlikely_ a breaking change will slide by. -Mocha's usage far outweighs its resources. If a proposed feature would incur a maintenance penalty, it could be a hard sell. +Mocha's usage far outweighs its resources. If a proposed feature would incur a maintenance penalty, it could be a hard sell. We ask you please keep these goals in mind when making or proposing changes. ### :shoe: Contributing Code: Step-by-Step -Follow these steps to get going. If you are having trouble, don't be afraid to [ask for help](#got-a-question). - -1. [Install Node.js 4.x or newer](https://nodejs.org/download). -1. Install [GNU Make](https://www.gnu.org/software/make/) or equivalent. -1. Follow [Github's documentation](https://help.github.com/articles/fork-a-repo/) on setting up Git, forking and cloning. -1. Create a new branch in your working copy. Give your branch a descriptive name, such as `issue/12345`: `git checkout -b issue/12345`. -1. Execute `npm install` to install the development dependencies. -1. Make your changes and add them via `git add`. - - **Do not modify** the root `mocha.js` file directly; it is automatically generated. - - Your changes will likely be somewhere in `lib/`, `bin/` or `browser-entry.js` if your changes are browser-specific. - - Please add unit and/or integration tests (depending on the nature of your changes). - - Keep your PR focused. Don't fix two things at once, or make formatting changes alongside bug fixes. -1. Before committing, run `npm test`. - - This will run unit tests, Node.js and browser integration tests, and lint the source code. - - The "browser" tests use Mocha to test itself; it will rebuild the root `mocha.js` file with your changes. - - **Please avoid committing changes to `mocha.js`**. - - Ultimately, your pull request will be built on our continuous integration servers ([Travis CI](https://travis-ci.org/mochajs/mocha) and [AppVeyor](https://ci.appveyor.com/project/boneskull/mocha)). The first step to ensuring these checks pass is to test on your own machine. -1. Commit your changes. - - Use a brief message on the first line, referencing a relevant issue (e.g. `#12345`). - - Add detail in subsequent lines. -1. Push your changes to your fork. -1. Navigate to the source repository. You should see a notification about your recent changes in your fork's branch, with a button to create a pull request. Click it. -1. Describe your changes in detail here. Once you're satisfied, submit the form. - - *PRO TIP*: If you've used a multi-line commit message, Github will pre-fill the PR's description with it. -1. If you have not signed our Contributor License Agreement, a friendly robot will prompt you to do so. A CLA (electronic) signature is **required** for all contributions of code to Mocha. -1. CI will run against your changes. - - If the changes fail the checks, you will need to address those before merging. - - You don't need to make a new PR to make changes. Instead, commit on top of your changes, and push these to your fork's branch. The PR will be updated, and CI will re-run. - - Github will indicate if there's a conflict. If this happens, you will need to [rebase](https://help.github.com/articles/about-git-rebase/) your branch onto the `master` branch of the source repository. *Don't merge.* - - It's no longer necessary to "squash" your changes. -1. Be patient while your PR is reviewed. This can take awhile ([why?](https://github.com/orgs/mochajs/projects/4)). We may request changes; don't be afraid to question them. +Follow these steps to get going. If you are having trouble, don't be afraid to [ask for help](#got-a-question). + +> PRO TIP: After `npm install`, run `npm start` to see a list of commands which can be run with `npm start ` (powered by [nps](https://npm.im/nps)). + +1. [Install Node.js 8.x or newer](https://nodejs.org/en/download/). + - If you're new to installing Node, a tool like [nvm](https://github.com/creationix/nvm#install-script) can help you manage multiple version installations. + - You will need [Google Chrome](https://www.google.com/chrome/) to run browser-based tests locally. +1. Follow [Github's documentation](https://help.github.com/articles/fork-a-repo/) on setting up Git, forking and cloning. +1. Create a new branch in your working copy. Give your branch a descriptive name, such as `issue/12345`: `git checkout -b issue/12345`. +1. Execute `npm install` to install the development dependencies. + - Do not use `yarn install`. + - Some optional dependencies may fail; you can safely ignore these unless you are trying to build the documentation. + - If you're sick of seeing the failures, run `npm install --ignore-scripts`. +1. Make your changes and add them via `git add`. + - Your changes will likely be somewhere in `lib/`, `bin/` or `browser-entry.js` (if your changes are browser-specific). + - Unit and/or integration **tests are required** for any code change. These live in `test/`. + - **Do not modify** the root `mocha.js` file directly; it is automatically generated. + - Keep your PR focused. Don't fix two things at once; don't upgrade dependencies unless necessary. +1. Before committing, run `npm start test`. + - This will run both Node.js-based and browser-based tests. + - Ultimately, your pull request will be built on our continuous integration servers ([Travis CI](https://travis-ci.org/mochajs/mocha) and [AppVeyor](https://ci.appveyor.com/project/boneskull/mocha)). The first step to ensuring these checks pass is to test on your own machine. + - A coverage check will be sent to [Coveralls](https://coveralls.io/github/mochajs/mocha). **A drop in code coverage % is considered a failed check**. +1. Commit your changes. + - Use a brief message on the first line, referencing a relevant issue (e.g. `closes #12345`). + - Add detail in subsequent lines. + - A pre-commit hook will run which automatically formats your staged changes (and fixes any problems it can) with ESLint and Prettier. If ESLint fails to fix an issue, your commit will fail and you will need to manually correct the problem. +1. (Optional) Ensure you are up-to-date with Mocha's `master` branch: + - You can add an "upstream" remote repo using `git remote add upstream https://github.com/mochajs/mocha.git && git fetch upstream`. + - Navigate to your `master` branch using `git checkout master`. + - Pull changes from `upstream` using `git pull upstream master`. + - If any changes were pulled in, rebase your branch onto `master` by switching back to your branch (`git checkout `) then rebasing using `git rebase master`. +1. Push your changes to your fork; `git push origin`. +1. In your browser, navigate to [mochajs/mocha](https://github.com/mochajs/mocha). You should see a notification about your recent changes in your fork's branch, with a (green?) button to create a pull request. Click it. +1. Describe your changes in detail here, following the template. Once you're satisfied, submit the form. +1. If you have not signed our [Contributor License Agreement](https://js.foundation/cla), a friendly robot will prompt you to do so. A [CLA](https://cla.js.foundation/mochajs/mocha) (electronic) signature is **required** for all contributions of code to Mocha. +1. Continuous integration checks will run against your changes. The result of these checks will be displayed on your PR. + - If the checks fail, you must address those before the PR is accepted. + - GitHub will indicate if there's a conflict. If this happens, you will need to [rebase](https://help.github.com/articles/about-git-rebase/) your branch onto the `master` branch of the source repository. **Do not `git merge`**. + - (Optional) [Squash](https://help.github.com/articles/about-pull-request-merges/#squash-and-merge-your-pull-request-commits) your changesets. If you have multiple changesets in your PR, they will be squashed upon PR acceptance by the Mocha team. +1. Be patient while your PR is reviewed. This can take a while. We may request changes, but don't be afraid to question them. +1. Your PR might become conflicted with the code in `master`. If this is the case, you will need to [update your PR](#up-to-date) and resolve your conflicts. +1. You don't need to make a new PR to any needed changes. Instead, commit on top of your changes, and push these to your fork's branch. The PR will be updated, and CI will re-run. + +Join us in the [contributors' chat](https://gitter.im/mochajs/contributors)! ## :angel: I Just Want To Help -*Excellent.* Here's how: +_Excellent._ Here's how: -- **Handy with JavaScript?** Please check out the issues labeled [`pr-please`](https://git.io/vXYu2). -- **Can you write good (and do other stuff good too)?** Help with the documentation. See the [issues for our site](https://github.com/mochajs/mochajs.github.io/issues). -- **Design your thing?** [Our site](https://github.com/mochajs/mochajs.github.io) needs your magic touch. -- **Know Mocha's codebase?** We could use your help triaging issues and/or reviewing pull requests. Please contact an [org member](https://github.com/orgs/mochajs/people), and we'll chat. -- **Want to build our community?** Mocha has a *lot* of users. We could use your help bringing everyone together in peace and harmony. Please contact an [org member](https://github.com/mochajs/people). -- **You can sell dirt to worms?** Let's raise Mocha's profile in the JavaScript and OSS communities. Please contact an [org member](https://github.com/mochajs/people)! -- **Wait--you write unit tests for *fun*?** A PR which increases coverage is unlikely to be turned down. -- **Are you experienced?** If you're a seasoned Mocha user, why not help answer some questions in the [chat room](https://gitter.im/mochajs/mocha)? +- **Handy with JavaScript?** Please check out the issues labeled [`help wanted`](https://github.com/mochajs/mocha/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) or [`good-first-issue`](https://github.com/mochajs/mocha/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3Agood-first-issue). Try `npx good-first-issue mocha`! +- **Can you write ~~good~~ well?** The [documentation](https://mochajs.org) almost always needs some love. See the [doc-related issues](https://github.com/mochajs/mocha/issues?q=is%3Aopen+is%3Aissue+label%3Adocumentation). +- **Design your thing?** [Our site](https://mochajs.org) needs your magic touch. +- **Familiar with Mocha's codebase?** We could use your help triaging issues and/or reviewing pull requests. Please contact an [org member](https://github.com/orgs/mochajs/people), and we'll chat. +- **Want to build our community?** Mocha has a _lot_ of users. We could use your help bringing everyone together in peace and harmony. Please contact an [org member](https://github.com/mochajs/people). +- **You can sell dirt to worms?** Let's raise Mocha's profile in the JavaScript and OSS communities. Please contact an [org member](https://github.com/orgs/mochajs/people)! +- **Wait--you write unit tests for _fun_?** A PR which increases coverage is unlikely to be turned down. +- **Are you experienced?** :guitar: If you're a seasoned Mocha user, why not help answer some questions in the [main chat room](https://gitter.im/mochajs/mocha)? diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000000..7491593eb1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,68 @@ +--- +name: Bug report +about: To report a part of mocha not working as expected +title: '' +labels: 'unconfirmed-bug' +--- + + + +### Prerequisites + + + +- [ ] Checked that your issue hasn't already been filed by cross-referencing [issues with the `faq` label](https://github.com/mochajs/mocha/issues?utf8=%E2%9C%93&q=is%3Aissue%20label%3Afaq%20) +- [ ] Checked next-gen ES issues and syntax problems by using the same environment and/or transpiler configuration without Mocha to ensure it isn't just a feature that actually isn't supported in the environment in question or a bug in your code. +- [ ] 'Smoke tested' the code to be tested by running it outside the real test suite to get a better sense of whether the problem is in the code under test, your usage of Mocha, or Mocha itself +- [ ] Ensured that there is no discrepancy between the locally and globally installed versions of Mocha. You can find them with: `node node_modules/.bin/mocha --version`(Local) and `mocha --version`(Global). We recommend that you _not_ install Mocha globally. + +### Description + + + +### Steps to Reproduce + + + +**Expected behavior:** [What you expect to happen] + +**Actual behavior:** [What actually happens] + + +**Reproduces how often:** [What percentage of the time does it reproduce?] + +### Versions + + + +- The output of `mocha --version` and `node node_modules/.bin/mocha --version`: +- The output of `node --version`: +- Your operating system + - name and version: + - architecture (32 or 64-bit): +- Your shell (e.g., bash, zsh, PowerShell, cmd): +- Your browser and version (if running browser tests): +- Any third-party Mocha-related modules (and their versions): +- Any code transpiler (e.g., TypeScript, CoffeeScript, Babel) being used (and its version): + +### Additional Information + + diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000000..8a8343e96f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,18 @@ +--- +name: Feature request +about: Suggest an idea for Mocha +title: '' +labels: 'feature' +--- + +**Is your feature request related to a problem or a nice-to-have?? Please describe.** +A clear and concise description of what the problem is. E.g. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/.github/ISSUE_TEMPLATE/support-question.md b/.github/ISSUE_TEMPLATE/support-question.md new file mode 100644 index 0000000000..93f367cee5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/support-question.md @@ -0,0 +1,15 @@ +--- +name: Support Question +about: If you have a question, please check out our Gitter or StackOverflow! +title: '' +labels: 'question' +--- + + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000000..37271e9cb0 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,40 @@ +### Requirements + +* Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion. +* All new code requires tests to ensure against regressions. + +### Description of the Change + + + +### Alternate Designs + + + +### Why should this be in core? + + + +### Benefits + + + +### Possible Drawbacks + + + +### Applicable issues + + diff --git a/.github/stale.yml b/.github/stale.yml index 748e2845f7..152dd7373e 100644 --- a/.github/stale.yml +++ b/.github/stale.yml @@ -4,28 +4,25 @@ daysUntilStale: 120 daysUntilClose: 14 # Issues with these labels will never be considered stale exemptLabels: - - pr-please - - confirmed - - future - - bug - - chore - - feature - - unconfirmed - - usability - - to-merge - browser - - reporter - - feature + - chore + - confirmed-bug + - developer-experience - documentation - - nice-to-have + - faq + - feature + - future + - good-first-issue + - help wanted - needs-review + - nice-to-have - qa - - usability - - semver-minor + - reporter - semver-major + - semver-minor - semver-patch - - reporter - - common-mistake + - unconfirmed-bug + - usability # Label to use when marking an issue as stale staleLabel: stale # Comment to post when marking an issue as stale. Set to `false` to disable diff --git a/.gitignore b/.gitignore index da8160085d..02634697bf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,17 +1,143 @@ -.DS_Store -node_modules -*.sock -*.sw* -.idea -*.iml -*.patch -*.diff -npm-debug.log* -.envrc +# Mocha-specific +docs/_site +docs/_dist +mocha.js .karma/ +!lib/mocha.js + +######################################### +# NON-MOCHA STUFF GOES BELOW THIS THING # +######################################### + +# Git mergetool +# Use `git config mergetool.keepBackup false` to stop generating these files *.orig -.nyc_output/ -coverage/ -BUILDTMP/ + +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# nyc/istanbul +coverage +.nyc_output + +# Dependencies +node_modules/ + +# npm +.npm +*.tgz + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# dotenv environment variables file +.env +.env.test + +# Yarn yarn.lock -package-lock.json +.yarn-integrity + +# Various temporary files +*~ + +# Emacs +\#*\# +/.emacs.desktop +/.emacs.desktop.lock +*.elc +auto-save-list +tramp +.\#* + +# Vim +[._]*.s[a-v][a-z] +[._]*.sw[a-p] +[._]s[a-rt-v][a-z] +[._]ss[a-gi-z] +[._]sw[a-p] +Session.vim +[._]*.un~ + +# Diff +*.patch +*.diff + +# VSCode +.vscode/ + +# JetBrains' IDEs +.idea/ +*.iws +out/ +.idea_modules/ +atlassian-ide-plugin.xml + +# SourceTree +*_BACKUP_* +*_BASE_* +*_LOCAL_* +*_REMOTE_* + +# SublimeText +*.tmlanguage.cache +*.tmPreferences.cache +*.stTheme.cache +*.sublime-workspace +*.sublime-project +sftp-config.json +Package Control.last-run +Package Control.ca-list +Package Control.ca-bundle +Package Control.system-ca-bundle +Package Control.cache/ +Package Control.ca-certs/ +Package Control.merged-ca-bundle +Package Control.user-ca-bundle +oscrypto-ca-bundle.crt +bh_unicode_properties.cache +GitHub.sublime-settings + +# direnv +.envrc + +# Linux +.fuse_hidden* +.directory +.Trash-* +.nfs* + +# Windows +Thumbs.db +ehthumbs.db +ehthumbs_vista.db +*.stackdump +[Dd]esktop.ini +$RECYCLE.BIN/ +*.cab +*.msi +*.msix +*.msm +*.msp +*.lnk + +# macOS +.DS_Store +.AppleDouble +.LSOverride +._* +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +# SauceConnect +*.sock diff --git a/.lintstagedrc.json b/.lintstagedrc.json new file mode 100644 index 0000000000..14dcdd9302 --- /dev/null +++ b/.lintstagedrc.json @@ -0,0 +1,10 @@ +{ + "linters": { + "(bin/*|*.js|**/*.js)": ["eslint --fix", "git add"], + "(*.{json,yml,md,html}|**/*.{json,yml,md,html})": [ + "prettier --write", + "git add" + ] + }, + "ignore": ["docs/**/*.js", "test/**/*.fixture.js", "package*.json"] +} diff --git a/.mailmap b/.mailmap index 528a26775e..9200a76f02 100644 --- a/.mailmap +++ b/.mailmap @@ -1,12 +1,30 @@ +# see https://www.git-scm.com/docs/git-check-mailmap for formatting info TJ Holowaychuk -Travis Jeffery -Travis Jeffery Dr. Travis Jeffery -Christopher Hiller Christopher Hiller -David da Silva Contín David da Silva -David da Silva Contín David da Silva -David da Silva Contín -Ariel Mashraki Ariel Mashraki -Ariel Mashraki Ariel Mashraki -Forbes Lindesay Forbes Lindesay -Ben Bradley Ben Bradley <[ben.bradley@cigna.com|mailto:ben.bradley@cigna.com]> -Glen Mailer Glen Mailer +Travis Jeffery +Travis Jeffery Dr. Travis Jeffery +Christopher Hiller +David da Silva Contín David da Silva +David da Silva Contín David da Silva +David da Silva Contín +Ariel Mashraki +Ariel Mashraki +Forbes Lindesay +Ben Bradley <[ben.bradley@cigna.com|mailto:ben.bradley@cigna.com]> +Glen Mailer +38elements <38elements@users.noreply.github.com> +Andreas Lind Petersen Andreas Lind +Ben Harris +Can Oztokmak +Will Langstroth +Sulabh Bista +Rustem Mustafin +Rico Sta. Cruz +Pete Hawkins +Raynos <=> +Raynos Raynos (Jake Verbaten) +Markus Tacker +Long Ho +László Bácsi Laszlo Bacsi +Eli Skeggs +Domenic Denicola domenic +Michael Schoonmaker diff --git a/.markdownlint.json b/.markdownlint.json new file mode 100644 index 0000000000..14a5c306e6 --- /dev/null +++ b/.markdownlint.json @@ -0,0 +1,10 @@ +{ + "no-inline-html": false, + "line-length": false, + "no-trailing-punctuation": false, + "no-duplicate-header": false, + "first-header-h1": false, + "first-line-h1": false, + "commands-show-output": false, + "single-h1": false +} diff --git a/.mocharc.yml b/.mocharc.yml new file mode 100644 index 0000000000..fc4c97339c --- /dev/null +++ b/.mocharc.yml @@ -0,0 +1,7 @@ +require: test/setup +ui: bdd +global: + - okGlobalA,okGlobalB + - okGlobalC + - callback* +timeout: 300 diff --git a/.npmignore b/.npmignore deleted file mode 100644 index e3216decb2..0000000000 --- a/.npmignore +++ /dev/null @@ -1,2 +0,0 @@ -assets/ - diff --git a/.npmrc b/.npmrc deleted file mode 100644 index b15cbc2c02..0000000000 --- a/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -package-lock=false - diff --git a/.travis.yml b/.travis.yml index d5c75c269a..5fb2bdb701 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,88 +1,94 @@ -sudo: false +### +### .travis.yml +### -# trust dist provides a modern build chain (as opposed to 'precise' dist) -# which absolves us from having to install compilers and stuff -dist: trusty +# these are executed in order. each must pass for the next to be run +stages: + - smoke # this ensures a "user" install works properly + - precache # warm up cache for default Node.js version + - lint # lint code and docs + - test # all tests +# defaults language: node_js +node_js: '12' +addons: + apt: + packages: + # Growl + - libnotify-bin +# `nvm install` happens before the cache is restored, which means +# we must install our own npm elsewhere (`~/npm`) +before_install: | + [[ ! -x ~/npm/node_modules/.bin/npm ]] && { + # caching feature creates `~/npm` for us + cd ~/npm && npm install npm + cd - + } || true + # avoids bugs around https://github.com/travis-ci/travis-ci/issues/5092 + export PATH=~/npm/node_modules/.bin:$PATH +# this avoids compilation in most cases (where we don't need it) +install: npm ci --ignore-scripts +cache: + directories: + - ~/.npm # cache npm's cache + - ~/npm # cache latest npm -env: - global: - # phantomjs hosts binaries @ bitbucket, which has fairly restrictive - # rate-limiting. pull it from this sketchy site in China instead. - - PHANTOMJS_CDNURL='https://cnpmjs.org/downloads' - -matrix: - fast_finish: true +jobs: include: - - node_js: '8' - env: TARGET=test-node COVERAGE=true - - node_js: '7' - env: TARGET=test-node - - node_js: '6' - env: TARGET=test-node - - node_js: '5' - env: TARGET=test-node - - node_js: '4' - env: TARGET=test-node - - node_js: 'iojs' - env: TARGET=test-node - - node_js: '0.12' - env: TARGET=test-node - - node_js: '0.11' - env: TARGET=test-node - - node_js: '0.10' - env: TARGET=test-node - - node_js: '8' - env: TARGET=lint - # phantomjs - - node_js: '8' - env: TARGET=test-browser - # chrome - - node_js: '8' - env: TARGET=test-browser BROWSER="chrome@latest" PLATFORM="Windows 8" - # edge - - node_js: '8' - env: TARGET=test-browser BROWSER="MicrosoftEdge@latest" PLATFORM="Windows 10" - # ie11 - - node_js: '8' - env: TARGET=test-browser BROWSER="internet explorer@11.0" PLATFORM="Windows 8.1" - # ie10 - - node_js: '8' - env: TARGET=test-browser BROWSER="internet explorer@10.0" PLATFORM="Windows 8" - # ie9 - - node_js: '8' - env: TARGET=test-browser BROWSER="internet explorer@9.0" PLATFORM="Windows 7" - # ie8 - - node_js: '8' - env: TARGET=test-browser BROWSER="internet explorer@8.0" PLATFORM="Windows 7" - # ie7 - - node_js: '8' - env: TARGET=test-browser BROWSER="internet explorer@7.0" PLATFORM="Windows XP" - # firefox - - node_js: '8' - env: TARGET=test-browser BROWSER="firefox@latest" PLATFORM="Windows 8.1" - # safari - - node_js: '8' - env: TARGET=test-browser BROWSER="safari@latest" PLATFORM="OS X 10.11" + - script: COVERAGE=1 npm start test.node + after_success: npm start coveralls + + - &node + script: npm start test.node + node_js: '10' + + - <<: *node + node_js: '8' + + - script: npm start test.bundle test.browser + # XXX: update when canvas supplies a prebuilt binary for Node.js v12.x + node_js: 10 + install: npm ci # we need the native modules here + addons: + artifacts: + paths: + - .karma/ + - ./mocha.js + chrome: stable + sauce_connect: true -before_install: scripts/travis-before-install.sh + - stage: lint + script: npm start lint -before_script: scripts/travis-before-script.sh + # smoke tests use default npm. + - &smoke + stage: smoke + env: null + before_install: true + install: npm install --production -script: make $TARGET + script: ./bin/mocha --no-config --reporter spec test/sanity/sanity.spec.js + cache: + directories: + - ~/.npm + - node_modules # npm install, unlike npm ci, doesn't wipe node_modules -after_success: "npm run postcoverage && { + return { + files: [ + 'index.js', + 'lib/**/*.{js,json}', + 'test/setup.js', + 'test/assertions.js', + { + pattern: 'test/node-unit/**/*.fixture.js', + instrument: false + }, + { + pattern: 'test/unit/**/*.fixture.js', + instrument: false + }, + 'package.json', + 'test/opts/mocha.opts', + 'mocharc.yml' + ], + filesWithNoCoverageCalculated: [ + 'test/**/*.fixture.js', + 'test/setup.js', + 'test/assertions.js', + 'lib/browser/**/*.js' + ], + tests: ['test/unit/**/*.spec.js', 'test/node-unit/**/*.spec.js'], + env: { + type: 'node', + runner: 'node' + }, + workers: {recycle: true}, + testFramework: {type: 'mocha', path: __dirname}, + setup(wallaby) { + // running mocha instance is not the same as mocha under test, + // running mocha is the project's source code mocha, mocha under test is instrumented version of the source code + const runningMocha = wallaby.testFramework; + runningMocha.timeout(200); + // to expose it/describe etc. on the mocha under test + const MochaUnderTest = require('./'); + const mochaUnderTest = new MochaUnderTest(); + mochaUnderTest.suite.emit( + MochaUnderTest.Suite.constants.EVENT_FILE_PRE_REQUIRE, + global, + '', + mochaUnderTest + ); + // to make test/node-unit/color.spec.js pass, we need to run mocha in the project's folder context + const childProcess = require('child_process'); + const execFile = childProcess.execFile; + childProcess.execFile = function() { + let opts = arguments[2]; + if (typeof opts === 'function') { + opts = {}; + Array.prototype.splice.call(arguments, 2, 0, opts); + } + opts.cwd = wallaby.localProjectDir; + return execFile.apply(this, arguments); + }; + require('./test/setup'); + }, + debug: true + }; +}; diff --git a/CHANGELOG.md b/CHANGELOG.md index 66e5aac8a2..f61ff11537 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,52 +1,623 @@ +# 6.2.0 / 2019-07-18 + +## :tada: Enhancements + +- [#3827](https://github.com/mochajs/mocha/issues/3827): Do not fork child-process if no Node flags are present ([**@boneskull**](https://github.com/boneskull)) +- [#3725](https://github.com/mochajs/mocha/issues/3725): Base reporter store ref to console.log, see [mocha/wiki](https://github.com/mochajs/mocha/wiki/HOW-TO:-Correctly-stub-stdout) ([**@craigtaub**](https://github.com/craigtaub)) + +## :bug: Fixes + +- [#3942](https://github.com/mochajs/mocha/issues/3942): Fix "No test files found" Error when file is passed via `--file` ([**@gabegorelick**](https://github.com/gabegorelick)) +- [#3914](https://github.com/mochajs/mocha/issues/3914): Modify Mocha constructor to accept options `global` or `globals` ([**@pascalpp**](https://github.com/pascalpp)) +- [#3894](https://github.com/mochajs/mocha/issues/3894): Fix parsing of config files with `_mocha` binary ([**@juergba**](https://github.com/juergba)) +- [#3834](https://github.com/mochajs/mocha/issues/3834): Fix CLI parsing with default values ([**@boneskull**](https://github.com/boneskull), [**@juergba**](https://github.com/juergba)) +- [#3831](https://github.com/mochajs/mocha/issues/3831): Fix `--timeout`/`--slow` string values and duplicate arguments ([**@boneskull**](https://github.com/boneskull), [**@juergba**](https://github.com/juergba)) + +## :book: Documentation + +- [#3906](https://github.com/mochajs/mocha/issues/3906): Document option to define custom report name for XUnit reporter ([**@pkuczynski**](https://github.com/pkuczynski)) +- [#3889](https://github.com/mochajs/mocha/issues/3889): Adds doc links for mocha-examples ([**@craigtaub**](https://github.com/craigtaub)) +- [#3887](https://github.com/mochajs/mocha/issues/3887): Fix broken links ([**@toyjhlee**](https://github.com/toyjhlee)) +- [#3841](https://github.com/mochajs/mocha/issues/3841): Fix anchors to configuration section ([**@trescube**](https://github.com/trescube)) + +## :mag: Coverage + +- [#3915](https://github.com/mochajs/mocha/issues/3915), [#3929](https://github.com/mochajs/mocha/issues/3929): Increase tests coverage for `--watch` options ([**@geigerzaehler**](https://github.com/geigerzaehler)) + +## :nut_and_bolt: Other + +- [#3953](https://github.com/mochajs/mocha/issues/3953): Collect test files later, prepares improvements to the `--watch` mode behavior ([**@geigerzaehler**](https://github.com/geigerzaehler)) +- [#3939](https://github.com/mochajs/mocha/issues/3939): Upgrade for npm audit ([**@boneskull**](https://github.com/boneskull)) +- [#3930](https://github.com/mochajs/mocha/issues/3930): Extract `runWatch` into separate module ([**@geigerzaehler**](https://github.com/geigerzaehler)) +- [#3922](https://github.com/mochajs/mocha/issues/3922): Add `mocha.min.js` file to stacktrace filter ([**@brian-lagerman**](https://github.com/brian-lagerman)) +- [#3919](https://github.com/mochajs/mocha/issues/3919): Update CI config files to use Node-12.x ([**@plroebuck**](https://github.com/plroebuck)) +- [#3892](https://github.com/mochajs/mocha/issues/3892): Rework reporter tests ([**@plroebuck**](https://github.com/plroebuck)) +- [#3872](https://github.com/mochajs/mocha/issues/3872): Rename `--exclude` to `--ignore` and create alias ([**@boneskull**](https://github.com/boneskull)) +- [#3963](https://github.com/mochajs/mocha/issues/3963): Hide stacktrace when cli args are missing ([**@outsideris**](https://github.com/outsideris)) +- [#3956](https://github.com/mochajs/mocha/issues/3956): Do not redeclare variable in docs array example ([**@DanielRuf**](https://github.com/DanielRuf)) +- [#3957](https://github.com/mochajs/mocha/issues/3957): Remove duplicate line-height property in `mocha.css` ([**@DanielRuf**](https://github.com/DanielRuf)) +- [#3960](https://github.com/mochajs/mocha/issues/3960): Don't re-initialize grep option on watch re-run ([**@geigerzaehler**](https://github.com/geigerzaehler)) + +# 6.1.4 / 2019-04-18 + +## :lock: Security Fixes + +- [#3877](https://github.com/mochajs/mocha/issues/3877): Upgrade [js-yaml](https://npm.im/js-yaml), addressing [code injection vulnerability](https://www.npmjs.com/advisories/813) ([**@bjornstar**](https://github.com/bjornstar)) + +# 6.1.3 / 2019-04-11 + +## :bug: Fixes + +- [#3863](https://github.com/mochajs/mocha/issues/3863): Fix `yargs`-related global scope pollution ([**@inukshuk**](https://github.com/inukshuk)) +- [#3869](https://github.com/mochajs/mocha/issues/3869): Fix failure when installed w/ `pnpm` ([**@boneskull**](https://github.com/boneskull)) + +# 6.1.2 / 2019-04-08 + +## :bug: Fixes + +- [#3867](https://github.com/mochajs/mocha/issues/3867): Re-publish v6.1.1 from POSIX OS to avoid dropped executable flags ([**@boneskull**](https://github.com/boneskull)) + +# 6.1.1 / 2019-04-07 + +## :bug: Fixes + +- [#3866](https://github.com/mochajs/mocha/issues/3866): Fix Windows End-of-Line publishing issue ([**@juergba**](https://github.com/juergba) & [**@cspotcode**](https://github.com/cspotcode)) + +# 6.1.0 / 2019-04-07 + +## :lock: Security Fixes + +- [#3845](https://github.com/mochajs/mocha/issues/3845): Update dependency "js-yaml" to v3.13.0 per npm security advisory ([**@plroebuck**](https://github.com/plroebuck)) + +## :tada: Enhancements + +- [#3766](https://github.com/mochajs/mocha/issues/3766): Make reporter constructor support optional `options` parameter ([**@plroebuck**](https://github.com/plroebuck)) +- [#3760](https://github.com/mochajs/mocha/issues/3760): Add support for config files with `.jsonc` extension ([**@sstephant**](https://github.com/sstephant)) + +## :fax: Deprecations + +These are _soft_-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha: + +- [#3719](https://github.com/mochajs/mocha/issues/3719): Deprecate `this.skip()` for "after all" hooks ([**@juergba**](https://github.com/juergba)) + +## :bug: Fixes + +- [#3829](https://github.com/mochajs/mocha/issues/3829): Use cwd-relative pathname to load config file ([**@plroebuck**](https://github.com/plroebuck)) +- [#3745](https://github.com/mochajs/mocha/issues/3745): Fix async calls of `this.skip()` in "before each" hooks ([**@juergba**](https://github.com/juergba)) +- [#3669](https://github.com/mochajs/mocha/issues/3669): Enable `--allow-uncaught` for uncaught exceptions thrown inside hooks ([**@givanse**](https://github.com/givanse)) + +and some regressions: + +- [#3848](https://github.com/mochajs/mocha/issues/3848): Fix `Suite` cloning by copying `root` property ([**@fatso83**](https://github.com/fatso83)) +- [#3816](https://github.com/mochajs/mocha/issues/3816): Guard against undefined timeout option ([**@boneskull**](https://github.com/boneskull)) +- [#3814](https://github.com/mochajs/mocha/issues/3814): Update "yargs" in order to avoid deprecation message ([**@boneskull**](https://github.com/boneskull)) +- [#3788](https://github.com/mochajs/mocha/issues/3788): Fix support for multiple node flags ([**@aginzberg**](https://github.com/aginzberg)) + +## :book: Documentation + +- [mochajs/mocha-examples](https://github.com/mochajs/mocha-examples): New repository of working examples of common configurations using mocha ([**@craigtaub**](https://github.com/craigtaub)) +- [#3850](https://github.com/mochajs/mocha/issues/3850): Remove pound icon showing on header hover on docs ([**@jd2rogers2**](https://github.com/jd2rogers2)) +- [#3812](https://github.com/mochajs/mocha/issues/3812): Add autoprefixer to documentation page CSS ([**@Munter**](https://github.com/Munter)) +- [#3811](https://github.com/mochajs/mocha/issues/3811): Update doc examples "tests.html" ([**@DavidLi119**](https://github.com/DavidLi119)) +- [#3807](https://github.com/mochajs/mocha/issues/3807): Mocha website HTML tweaks ([**@plroebuck**](https://github.com/plroebuck)) +- [#3793](https://github.com/mochajs/mocha/issues/3793): Update config file example ".mocharc.yml" ([**@cspotcode**](https://github.com/cspotcode)) + +## :nut_and_bolt: Other + +- [#3830](https://github.com/mochajs/mocha/issues/3830): Replace dependency "findup-sync" with "find-up" for faster startup ([**@cspotcode**](https://github.com/cspotcode)) +- [#3799](https://github.com/mochajs/mocha/issues/3799): Update devDependencies to fix many npm vulnerabilities ([**@XhmikosR**](https://github.com/XhmikosR)) + +# 6.0.2 / 2019-02-25 + +## :bug: Fixes + +Two more regressions fixed: + +- [#3768](https://github.com/mochajs/mocha/issues/3768): Test file paths no longer dropped from `mocha.opts` ([**@boneskull**](https://github.com/boneskull)) +- [#3767](https://github.com/mochajs/mocha/issues/3767): `--require` does not break on module names that look like certain `node` flags ([**@boneskull**](https://github.com/boneskull)) + +# 6.0.1 / 2019-02-21 + +The obligatory round of post-major-release bugfixes. + +## :bug: Fixes + +These issues were regressions. + +- [#3754](https://github.com/mochajs/mocha/issues/3754): Mocha again finds `test.js` when run without arguments ([**@plroebuck**](https://github.com/plroebuck)) +- [#3756](https://github.com/mochajs/mocha/issues/3756): Mocha again supports third-party interfaces via `--ui` ([**@boneskull**](https://github.com/boneskull)) +- [#3755](https://github.com/mochajs/mocha/issues/3755): Fix broken `--watch` ([**@boneskull**](https://github.com/boneskull)) +- [#3759](https://github.com/mochajs/mocha/issues/3759): Fix unwelcome deprecation notice when Mocha run against languages (CoffeeScript) with implicit return statements; _returning a non-`undefined` value from a `describe` callback is no longer considered deprecated_ ([**@boneskull**](https://github.com/boneskull)) + +## :book: Documentation + +- [#3738](https://github.com/mochajs/mocha/issues/3738): Upgrade to `@mocha/docdash@2` ([**@tendonstrength**](https://github.com/tendonstrength)) +- [#3751](https://github.com/mochajs/mocha/issues/3751): Use preferred names for example config files ([**@Szauka**](https://github.com/Szauka)) + +# 6.0.0 / 2019-02-18 + +## :tada: Enhancements + +- [#3726](https://github.com/mochajs/mocha/issues/3726): Add ability to unload files from `require` cache ([**@plroebuck**](https://github.com/plroebuck)) + +## :bug: Fixes + +- [#3737](https://github.com/mochajs/mocha/issues/3737): Fix falsy values from options globals ([**@plroebuck**](https://github.com/plroebuck)) +- [#3707](https://github.com/mochajs/mocha/issues/3707): Fix encapsulation issues for `Suite#_onlyTests` and `Suite#_onlySuites` ([**@vkarpov15**](https://github.com/vkarpov15)) +- [#3711](https://github.com/mochajs/mocha/issues/3711): Fix diagnostic messages dealing with plurality and markup of output ([**@plroebuck**](https://github.com/plroebuck)) +- [#3723](https://github.com/mochajs/mocha/issues/3723): Fix "reporter-option" to allow comma-separated options ([**@boneskull**](https://github.com/boneskull)) +- [#3722](https://github.com/mochajs/mocha/issues/3722): Fix code quality and performance of `lookupFiles` and `files` ([**@plroebuck**](https://github.com/plroebuck)) +- [#3650](https://github.com/mochajs/mocha/issues/3650), [#3654](https://github.com/mochajs/mocha/issues/3654): Fix noisy error message when no files found ([**@craigtaub**](https://github.com/craigtaub)) +- [#3632](https://github.com/mochajs/mocha/issues/3632): Tests having an empty title are no longer confused with the "root" suite ([**@juergba**](https://github.com/juergba)) +- [#3666](https://github.com/mochajs/mocha/issues/3666): Fix missing error codes ([**@vkarpov15**](https://github.com/vkarpov15)) +- [#3684](https://github.com/mochajs/mocha/issues/3684): Fix exiting problem in Node.js v11.7.0+ ([**@addaleax**](https://github.com/addaleax)) +- [#3691](https://github.com/mochajs/mocha/issues/3691): Fix `--delay` (and other boolean options) not working in all cases ([**@boneskull**](https://github.com/boneskull)) +- [#3692](https://github.com/mochajs/mocha/issues/3692): Fix invalid command-line argument usage not causing actual errors ([**@boneskull**](https://github.com/boneskull)) +- [#3698](https://github.com/mochajs/mocha/issues/3698), [#3699](https://github.com/mochajs/mocha/issues/3699): Fix debug-related Node.js options not working in all cases ([**@boneskull**](https://github.com/boneskull)) +- [#3700](https://github.com/mochajs/mocha/issues/3700): Growl notifications now show the correct number of tests run ([**@outsideris**](https://github.com/outsideris)) +- [#3686](https://github.com/mochajs/mocha/issues/3686): Avoid potential ReDoS when diffing large objects ([**@cyjake**](https://github.com/cyjake)) +- [#3715](https://github.com/mochajs/mocha/issues/3715): Fix incorrect order of emitted events when used programmatically ([**@boneskull**](https://github.com/boneskull)) +- [#3706](https://github.com/mochajs/mocha/issues/3706): Fix regression wherein `--reporter-option`/`--reporter-options` did not support comma-separated key/value pairs ([**@boneskull**](https://github.com/boneskull)) + +## :book: Documentation + +- [#3652](https://github.com/mochajs/mocha/issues/3652): Switch from Jekyll to Eleventy ([**@Munter**](https://github.com/Munter)) + +## :nut_and_bolt: Other + +- [#3677](https://github.com/mochajs/mocha/issues/3677): Add error objects for createUnsupportedError and createInvalidExceptionError ([**@boneskull**](https://github.com/boneskull)) +- [#3733](https://github.com/mochajs/mocha/issues/3733): Removed unnecessary processing in post-processing hook ([**@wanseob**](https://github.com/wanseob)) +- [#3730](https://github.com/mochajs/mocha/issues/3730): Update nyc to latest version ([**@coreyfarrell**](https://github.com/coreyfarrell)) +- [#3648](https://github.com/mochajs/mocha/issues/3648), [#3680](https://github.com/mochajs/mocha/issues/3680): Fixes to support latest versions of [unexpected](https://npm.im/unexpected) and [unexpected-sinon](https://npm.im/unexpected-sinon) ([**@sunesimonsen**](https://github.com/sunesimonsen)) +- [#3638](https://github.com/mochajs/mocha/issues/3638): Add meta tag to site ([**@MartijnCuppens**](https://github.com/MartijnCuppens)) +- [#3653](https://github.com/mochajs/mocha/issues/3653): Fix parts of test suite failing to run on Windows ([**@boneskull**](https://github.com/boneskull)) + +# 6.0.0-1 / 2019-01-02 + +## :bug: Fixes + +- Fix missing `mocharc.json` in published package ([**@boneskull**](https://github.com/boneskull)) + +# 6.0.0-0 / 2019-01-01 + +**Documentation for this release can be found at [next.mochajs.org](https://next.mochajs.org)**! + +Welcome [**@plroebuck**](https://github.com/plroebuck), [**@craigtaub**](https://github.com/craigtaub), & [**@markowsiak**](https://github.com/markowsiak) to the team! + +## :boom: Breaking Changes + +- [#3149](https://github.com/mochajs/mocha/issues/3149): **Drop Node.js v4.x support** ([**@outsideris**](https://github.com/outsideris)) +- [#3556](https://github.com/mochajs/mocha/issues/3556): Changes to command-line options ([**@boneskull**](https://github.com/boneskull)): + - `--grep` and `--fgrep` are now mutually exclusive; attempting to use both will cause Mocha to fail instead of simply ignoring `--grep` + - `--compilers` is no longer supported; attempting to use will cause Mocha to fail with a link to more information + - `-d` is no longer an alias for `--debug`; `-d` is currently ignored + - [#3275](https://github.com/mochajs/mocha/issues/3275): `--watch-extensions` no longer implies `js`; it must be explicitly added ([**@TheDancingCode**](https://github.com/TheDancingCode)) +- [#2908](https://github.com/mochajs/mocha/issues/2908): `tap` reporter emits error messages ([**@chrmod**](https://github.com/chrmod)) +- [#2819](https://github.com/mochajs/mocha/issues/2819): When conditionally skipping in a `before` hook, subsequent `before` hooks _and_ tests in nested suites are now skipped ([**@bannmoore**](https://github.com/bannmoore)) +- [#627](https://github.com/mochajs/mocha/issues/627): Emit filepath in "timeout exceeded" exceptions where applicable ([**@boneskull**](https://github.com/boneskull)) +- [#3556](https://github.com/mochajs/mocha/issues/3556): `lib/template.html` has moved to `lib/browser/template.html` ([**@boneskull**](https://github.com/boneskull)) +- [#2576](https://github.com/mochajs/mocha/issues/2576): An exception is now thrown if Mocha fails to parse or find a `mocha.opts` at a user-specified path ([**@plroebuck**](https://github.com/plroebuck)) +- [#3458](https://github.com/mochajs/mocha/issues/3458): Instantiating a `Base`-extending reporter without a `Runner` parameter will throw an exception ([**@craigtaub**](https://github.com/craigtaub)) +- [#3125](https://github.com/mochajs/mocha/issues/3125): For consumers of Mocha's programmatic API, all exceptions thrown from Mocha now have a `code` property (and some will have additional metadata). Some `Error` messages have changed. **Please use the `code` property to check `Error` types instead of the `message` property**; these descriptions will be localized in the future. ([**@craigtaub**](https://github.com/craigtaub)) + +## :fax: Deprecations + +These are _soft_-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha: + +- `-gc` users should use `--gc-global` instead +- Consumers of the function exported by `bin/options` should now use the `loadMochaOpts` or `loadOptions` (preferred) functions exported by the `lib/cli/options` module + +Regarding the `Mocha` class constructor (from `lib/mocha`): + +- Use property `color: false` instead of `useColors: false` +- Use property `timeout: false` instead of `enableTimeouts: false` + +All of the above deprecations were introduced by [#3556](https://github.com/mochajs/mocha/issues/3556). + +`mocha.opts` is now considered "legacy"; please prefer RC file or `package.json` over `mocha.opts`. + +## :tada: Enhancements + +Enhancements introduced in [#3556](https://github.com/mochajs/mocha/issues/3556): + +- Mocha now supports "RC" files in JS, JSON, YAML, or `package.json`-based (using `mocha` property) format + + - `.mocharc.js`, `.mocharc.json`, `.mocharc.yaml` or `.mocharc.yml` are valid "rc" file names and will be automatically loaded + - Use `--config /path/to/rc/file` to specify an explicit path + - Use `--package /path/to/package.json` to specify an explicit `package.json` to read the `mocha` prop from + - Use `--no-config` or `--no-package` to completely disable loading of configuration via RC file and `package.json`, respectively + - Configurations are merged as applicable using the priority list: + 1. Command-line arguments + 1. RC file + 1. `package.json` + 1. `mocha.opts` + 1. Mocha's own defaults + - Check out these [example config files](https://github.com/mochajs/mocha/tree/master/example/config) + +- Node/V8 flag support in `mocha` executable: + + - Support all allowed `node` flags as supported by the running version of `node` (also thanks to [**@demurgos**](https://github.com/demurgos)) + - Support any V8 flag by prepending `--v8-` to the flag name + - All flags are also supported via config files, `package.json` properties, or `mocha.opts` + - Debug-related flags (e.g., `--inspect`) now _imply_ `--no-timeouts` + - Use of e.g., `--debug` will automatically invoke `--inspect` if supported by running version of `node` + +- Support negation of any Mocha-specific command-line flag by prepending `--no-` to the flag name + +- Interfaces now have descriptions when listed using `--interfaces` flag + +- `Mocha` constructor supports all options + +- `--extension` is now an alias for `--watch-extensions` and affects _non-watch-mode_ test runs as well. For example, to run _only_ `test/*.coffee` (not `test/*.js`), you can do `mocha --require coffee-script/register --extensions coffee`. + +- [#3552](https://github.com/mochajs/mocha/issues/3552): `tap` reporter is now TAP13-capable ([**@plroebuck**](https://github.com/plroebuck) & [**@mollstam**](https://github.com/mollstam)) + +- [#3535](https://github.com/mochajs/mocha/issues/3535): Mocha's version can now be queried programmatically via public property `Mocha.prototype.version` ([**@plroebuck**](https://github.com/plroebuck)) + +- [#3428](https://github.com/mochajs/mocha/issues/3428): `xunit` reporter shows diffs ([**@mlucool**](https://github.com/mlucool)) + +- [#2529](https://github.com/mochajs/mocha/issues/2529): `Runner` now emits a `retry` event when tests are retried (reporters can listen for this) ([**@catdad**](https://github.com/catdad)) + +- [#2962](https://github.com/mochajs/mocha/issues/2962), [#3111](https://github.com/mochajs/mocha/issues/3111): In-browser notification support; warn about missing prereqs when `--growl` supplied ([**@plroebuck**](https://github.com/plroebuck)) + +## :bug: Fixes + +- [#3356](https://github.com/mochajs/mocha/issues/3356): `--no-timeouts` and `--timeout 0` now does what you'd expect ([**@boneskull**](https://github.com/boneskull)) +- [#3475](https://github.com/mochajs/mocha/issues/3475): Restore `--no-exit` option ([**@boneskull**](https://github.com/boneskull)) +- [#3570](https://github.com/mochajs/mocha/issues/3570): Long-running tests now respect `SIGINT` ([**@boneskull**](https://github.com/boneskull)) +- [#2944](https://github.com/mochajs/mocha/issues/2944): `--forbid-only` and `--forbid-pending` now "fail fast" when encountered on a suite ([**@outsideris**](https://github.com/outsideris)) +- [#1652](https://github.com/mochajs/mocha/issues/1652), [#2951](https://github.com/mochajs/mocha/issues/2951): Fix broken clamping of timeout values ([**@plroebuck**](https://github.com/plroebuck)) +- [#2095](https://github.com/mochajs/mocha/issues/2095), [#3521](https://github.com/mochajs/mocha/issues/3521): Do not log `stdout:` prefix in browser console ([**@Bamieh**](https://github.com/Bamieh)) +- [#3595](https://github.com/mochajs/mocha/issues/3595): Fix mochajs.org deployment problems ([**@papandreou**](https://github.com/papandreou)) +- [#3518](https://github.com/mochajs/mocha/issues/3518): Improve `utils.isPromise()` ([**@fabiosantoscode**](https://github.com/fabiosantoscode)) +- [#3320](https://github.com/mochajs/mocha/issues/3320): Fail gracefully when non-extensible objects are thrown in async tests ([**@fargies**](https://github.com/fargies)) +- [#2475](https://github.com/mochajs/mocha/issues/2475): XUnit does not duplicate test result numbers in "errors" and "failures"; "failures" will **always** be zero ([**@mlucool**](https://github.com/mlucool)) +- [#3398](https://github.com/mochajs/mocha/issues/3398), [#3598](https://github.com/mochajs/mocha/issues/3598), [#3457](https://github.com/mochajs/mocha/issues/3457), [#3617](https://github.com/mochajs/mocha/issues/3617): Fix regression wherein `--bail` would not execute "after" nor "after each" hooks ([**@juergba**](https://github.com/juergba)) +- [#3580](https://github.com/mochajs/mocha/issues/3580): Fix potential exception when using XUnit reporter programmatically ([**@Lana-Light**](https://github.com/Lana-Light)) +- [#1304](https://github.com/mochajs/mocha/issues/1304): Do not output color to `TERM=dumb` ([**@plroebuck**](https://github.com/plroebuck)) + +## :book: Documentation + +- [#3525](https://github.com/mochajs/mocha/issues/3525): Improvements to `.github/CONTRIBUTING.md` ([**@markowsiak**](https://github.com/markowsiak)) +- [#3466](https://github.com/mochajs/mocha/issues/3466): Update description of `slow` option ([**@finfin**](https://github.com/finfin)) +- [#3405](https://github.com/mochajs/mocha/issues/3405): Remove references to bower installations ([**@goteamtim**](https://github.com/goteamtim)) +- [#3361](https://github.com/mochajs/mocha/issues/3361): Improvements to `--watch` docs ([**@benglass**](https://github.com/benglass)) +- [#3136](https://github.com/mochajs/mocha/issues/3136): Improve docs around globbing and shell expansion ([**@akrawchyk**](https://github.com/akrawchyk)) +- [#2819](https://github.com/mochajs/mocha/issues/2819): Update docs around skips and hooks ([**@bannmoore**](https://github.com/bannmoore)) +- Many improvements by [**@outsideris**](https://github.com/outsideris) + +## :nut_and_bolt: Other + +- [#3557](https://github.com/mochajs/mocha/issues/3557): Use `ms` userland module instead of hand-rolled solution ([**@gizemkeser**](https://github.com/gizemkeser)) +- Many CI fixes and other refactors by [**@plroebuck**](https://github.com/plroebuck) +- Test refactors by [**@outsideris**](https://github.com/outsideris) + +# 5.2.0 / 2018-05-18 + +## :tada: Enhancements + +- [#3375](https://github.com/mochajs/mocha/pull/3375): Add support for comments in `mocha.opts` ([@plroebuck](https://github.com/plroebuck)) + +## :bug: Fixes + +- [#3346](https://github.com/mochajs/mocha/pull/3346): Exit correctly from `before` hooks when using `--bail` ([@outsideris](https://github.com/outsideris)) + +## :book: Documentation + +- [#3328](https://github.com/mochajs/mocha/pull/3328): Mocha-flavored [API docs](https://mochajs.org/api/)! ([@Munter](https://github.com/munter)) + +## :nut_and_bolt: Other + +- [#3330](https://github.com/mochajs/mocha/pull/3330): Use `Buffer.from()` ([@harrysarson](https://github.com/harrysarson)) +- [#3295](https://github.com/mochajs/mocha/pull/3295): Remove redundant folder ([@DavNej](https://github.com/DajNev)) +- [#3356](https://github.com/mochajs/mocha/pull/3356): Refactoring ([@plroebuck](https://github.com/plroebuck)) + +# 5.1.1 / 2018-04-18 + +## :bug: Fixes + +- [#3325](https://github.com/mochajs/mocha/issues/3325): Revert change which broke `--watch` ([@boneskull](https://github.com/boneskull)) + +# 5.1.0 / 2018-04-12 + +## :tada: Enhancements + +- [#3210](https://github.com/mochajs/mocha/pull/3210): Add `--exclude` option ([@metalex9](https://github.com/metalex9)) + +## :bug: Fixes + +- [#3318](https://github.com/mochajs/mocha/pull/3318): Fix failures in circular objects in JSON reporter ([@jeversmann](https://github.com/jeversmann), [@boneskull](https://github.com/boneskull)) + +## :book: Documentation + +- [#3323](https://github.com/mochajs/mocha/pull/3323): Publish actual [API documentation](https://mochajs.org/api/)! ([@dfberry](https://github.com/dfberry), [@Munter](https://github.com/munter)) +- [#3299](https://github.com/mochajs/mocha/pull/3299): Improve docs around exclusive tests ([@nicgirault](https://github.com/nicgirault)) + +## :nut_and_bolt: Other + +- [#3302](https://github.com/mochajs/mocha/pull/3302), [#3308](https://github.com/mochajs/mocha/pull/3308), [#3310](https://github.com/mochajs/mocha/pull/3310), [#3315](https://github.com/mochajs/mocha/pull/3315), [#3316](https://github.com/mochajs/mocha/pull/3316): Build matrix improvements ([more info](https://boneskull.com/mocha-and-travis-ci-build-stages/)) ([@outsideris](https://github.com/outsideris), [@boneskull](https://github.com/boneskull)) +- [#3272](https://github.com/mochajs/mocha/pull/3272): Refactor reporter tests ([@jMuzsik](https://github.com/jMuzsik)) + +# 5.0.5 / 2018-03-22 + +Welcome [@outsideris](https://github.com/outsideris) to the team! + +## :bug: Fixes + +- [#3096](https://github.com/mochajs/mocha/issues/3096): Fix `--bail` failing to bail within hooks ([@outsideris](https://github.com/outsideris)) +- [#3184](https://github.com/mochajs/mocha/issues/3184): Don't skip too many suites (using `describe.skip()`) ([@outsideris](https://github.com/outsideris)) + +## :book: Documentation + +- [#3133](https://github.com/mochajs/mocha/issues/3133): Improve docs regarding "pending" behavior ([@ematicipo](https://github.com/ematicipo)) +- [#3276](https://github.com/mochajs/mocha/pull/3276), [#3274](https://github.com/mochajs/mocha/pull/3274): Fix broken stuff in `CHANGELOG.md` ([@tagoro9](https://github.com/tagoro9), [@honzajavorek](https://github.com/honzajavorek)) + +## :nut_and_bolt: Other + +- [#3208](https://github.com/mochajs/mocha/issues/3208): Improve test coverage for AMD users ([@outsideris](https://github.com/outsideris)) +- [#3267](https://github.com/mochajs/mocha/pull/3267): Remove vestiges of PhantomJS from CI ([@anishkny](https://github.com/anishkny)) +- [#2952](https://github.com/mochajs/mocha/issues/2952): Fix a debug message ([@boneskull](https://github.com/boneskull)) + +# 5.0.4 / 2018-03-07 + +## :bug: Fixes + +- [#3265](https://github.com/mochajs/mocha/issues/3265): Fixes regression in "watch" functionality introduced in v5.0.2 ([@outsideris](https://github.com/outsideris)) + +# 5.0.3 / 2018-03-06 + +This patch features a fix to address a potential "low severity" [ReDoS vulnerability](https://snyk.io/vuln/npm:diff:20180305) in the [diff](https://npm.im/diff) package (a dependency of Mocha). + +## :lock: Security Fixes + +- [#3266](https://github.com/mochajs/mocha/pull/3266): Bump `diff` to v3.5.0 ([@anishkny](https://github.com/anishkny)) + +## :nut_and_bolt: Other + +- [#3011](https://github.com/mochajs/mocha/issues/3011): Expose `generateDiff()` in `Base` reporter ([@harrysarson](https://github.com/harrysarson)) + +# 5.0.2 / 2018-03-05 + +This release fixes a class of tests which report as _false positives_. **Certain tests will now break**, though they would have previously been reported as passing. Details below. Sorry for the inconvenience! + +## :bug: Fixes + +- [#3226](https://github.com/mochajs/mocha/issues/3226): Do not swallow errors that are thrown asynchronously from passing tests ([@boneskull](https://github.com/boneskull)). Example: + + \```js + it('should actually fail, sorry!', function (done) { + // passing assertion + assert(true === true); + + // test complete & is marked as passing + done(); + + // ...but something evil lurks within + setTimeout(() => { + throw new Error('chaos!'); + }, 100); + }); + \``` + + Previously to this version, Mocha would have _silently swallowed_ the `chaos!` exception, and you wouldn't know. Well, _now you know_. Mocha cannot recover from this gracefully, so it will exit with a nonzero code. + + **Maintainers of external reporters**: _If_ a test of this class is encountered, the `Runner` instance will emit the `end` event _twice_; you _may_ need to change your reporter to use `runner.once('end')` intead of `runner.on('end')`. + +- [#3093](https://github.com/mochajs/mocha/issues/3093): Fix stack trace reformatting problem ([@outsideris](https://github.com/outsideris)) + +## :nut_and_bolt: Other + +- [#3248](https://github.com/mochajs/mocha/issues/3248): Update `browser-stdout` to v1.3.1 ([@honzajavorek](https://github.com/honzajavorek)) + +# 5.0.1 / 2018-02-07 + +...your garden-variety patch release. + +Special thanks to [Wallaby.js](https://wallabyjs.com) for their continued support! :heart: + +## :bug: Fixes + +- [#1838](https://github.com/mochajs/mocha/issues/1838): `--delay` now works with `.only()` ([@silviom](https://github.com/silviom)) +- [#3119](https://github.com/mochajs/mocha/issues/3119): Plug memory leak present in v8 ([@boneskull](https://github.com/boneskull)) + +## :book: Documentation + +- [#3132](https://github.com/mochajs/mocha/issues/3132), [#3098](https://github.com/mochajs/mocha/issues/3098): Update `--glob` docs ([@outsideris](https://github.com/outsideris)) +- [#3212](https://github.com/mochajs/mocha/pull/3212): Update [Wallaby.js](https://wallabyjs.com)-related docs ([@ArtemGovorov](https://github.com/ArtemGovorov)) +- [#3205](https://github.com/mochajs/mocha/pull/3205): Remove outdated cruft ([@boneskull](https://github.com/boneskull)) + +## :nut_and_bolt: Other + +- [#3224](https://github.com/mochajs/mocha/pull/3224): Add proper Wallaby.js config ([@ArtemGovorov](https://github.com/ArtemGovorov)) +- [#3230](https://github.com/mochajs/mocha/pull/3230): Update copyright year ([@josephlin55555](https://github.com/josephlin55555)) + +# 5.0.0 / 2018-01-17 + +Mocha starts off 2018 right by again dropping support for _unmaintained rubbish_. + +Welcome [@vkarpov15](https://github.com/vkarpov15) to the team! + +## :boom: Breaking Changes + +- **[#3148](https://github.com/mochajs/mocha/issues/3148): Drop support for IE9 and IE10** ([@Bamieh](https://github.com/Bamieh)) + Practically speaking, only code which consumes (through bundling or otherwise) the userland [buffer](https://npm.im/buffer) module should be affected. However, Mocha will no longer test against these browsers, nor apply fixes for them. + +## :tada: Enhancements + +- [#3181](https://github.com/mochajs/mocha/issues/3181): Add useful new `--file` command line argument ([documentation](https://mochajs.org/#--file-file)) ([@hswolff](https://github.com/hswolff)) + +## :bug: Fixes + +- [#3187](https://github.com/mochajs/mocha/issues/3187): Fix inaccurate test duration reporting ([@FND](https://github.com/FND)) +- [#3202](https://github.com/mochajs/mocha/pull/3202): Fix bad markup in HTML reporter ([@DanielRuf](https://github.com/DanielRuf)) + +## :sunglasses: Developer Experience + +- [#2352](https://github.com/mochajs/mocha/issues/2352): Ditch GNU Make for [nps](https://npm.im/nps) to manage scripts ([@TedYav](https://github.com/TedYav)) + +## :book: Documentation + +- [#3137](https://github.com/mochajs/mocha/issues/3137): Add missing `--no-timeouts` docs ([@dfberry](https://github.com/dfberry)) +- [#3134](https://github.com/mochajs/mocha/issues/3134): Improve `done()` callback docs ([@maraisr](https://github.com/maraisr)) +- [#3135](https://github.com/mochajs/mocha/issues/3135): Fix cross-references ([@vkarpov15](https://github.com/vkarpov15)) +- [#3163](https://github.com/mochajs/mocha/pull/3163): Fix tpyos ([@tbroadley](https://github.com/tbroadley)) +- [#3177](https://github.com/mochajs/mocha/pull/3177): Tweak `README.md` organization ([@xxczaki](https://github.com/xxczaki)) +- Misc updates ([@boneskull](https://github.com/boneskull)) + +## :nut_and_bolt: Other + +- [#3118](https://github.com/mochajs/mocha/issues/3118): Move TextMate Integration to [its own repo](https://github.com/mochajs/mocha.tmbundle) ([@Bamieh](https://github.com/Bamieh)) +- [#3185](https://github.com/mochajs/mocha/issues/3185): Add Node.js v9 to build matrix; remove v7 ([@xxczaki](https://github.com/xxczaki)) +- [#3172](https://github.com/mochajs/mocha/issues/3172): Markdown linting ([@boneskull](https://github.com/boneskull)) +- Test & Netlify updates ([@Munter](https://github.com/munter), [@boneskull](https://github.com/boneskull)) + +# 4.1.0 / 2017-12-28 + +This is mainly a "housekeeping" release. + +Welcome [@Bamieh](https://github.com/Bamieh) and [@xxczaki](https://github.com/xxczaki) to the team! + +## :bug: Fixes + +- [#2661](https://github.com/mochajs/mocha/issues/2661): `progress` reporter now accepts reporter options ([@canoztokmak](https://github.com/canoztokmak)) +- [#3142](https://github.com/mochajs/mocha/issues/3142): `xit` in `bdd` interface now properly returns its `Test` object ([@Bamieh](https://github.com/Bamieh)) +- [#3075](https://github.com/mochajs/mocha/pull/3075): Diffs now computed eagerly to avoid misinformation when reported ([@abrady0](https://github.com/abrady0)) +- [#2745](https://github.com/mochajs/mocha/issues/2745): `--help` will now help you even if you have a `mocha.opts` ([@Zarel](https://github.com/Zarel)) + +## :tada: Enhancements + +- [#2514](https://github.com/mochajs/mocha/issues/2514): The `--no-diff` flag will completely disable diff output ([@CapacitorSet](https://github.com/CapacitorSet)) +- [#3058](https://github.com/mochajs/mocha/issues/3058): All "setters" in Mocha's API are now also "getters" if called without arguments ([@makepanic](https://github.com/makepanic)) + +## :book: Documentation + +- [#3170](https://github.com/mochajs/mocha/pull/3170): Optimization and site speed improvements ([@Munter](https://github.com/munter)) +- [#2987](https://github.com/mochajs/mocha/issues/2987): Moved the old [site repo](https://github.com/mochajs/mochajs.github.io) into the main repo under `docs/` ([@boneskull](https://github.com/boneskull)) +- [#2896](https://github.com/mochajs/mocha/issues/2896): Add [maintainer guide](https://github.com/mochajs/mocha/blob/master/MAINTAINERS.md) ([@boneskull](https://github.com/boneskull)) +- Various fixes and updates ([@xxczaki](https://github.com/xxczaki), [@maty21](https://github.com/maty21), [@leedm777](https://github.com/leedm777)) + +## :nut_and_bolt: Other + +- Test improvements and fixes ([@eugenet8k](https://github.com/eugenet8k), [@ngeor](https://github.com/ngeor), [@38elements](https://github.com/38elements), [@Gerhut](https://github.com/Gerhut), [@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull)) +- Refactoring and cruft excision ([@38elements](https://github.com/38elements), [@Bamieh](https://github.com/Bamieh), [@finnigantime](https://github.com/finnigantime), [@boneskull](https://github.com/boneskull)) + +# 4.0.1 / 2017-10-05 + +## :bug: Fixes + +- [#3051](https://github.com/mochajs/mocha/pull/3051): Upgrade Growl to v1.10.3 to fix its [peer dep problems](https://github.com/tj/node-growl/pull/68) ([@dpogue](https://github.com/dpogue)) + +# 4.0.0 / 2017-10-02 + +You might want to read this before filing a new bug! :stuck_out_tongue_closed_eyes: + +## :boom: Breaking Changes + +For more info, please [read this article](https://boneskull.com/mocha-v4-nears-release/). + +### Compatibility + +- [#3016](https://github.com/mochajs/mocha/issues/3016): Drop support for unmaintained versions of Node.js ([@boneskull](https://github.com/boneskull)): + - 0.10.x + - 0.11.x + - 0.12.x + - iojs (any) + - 5.x.x +- [#2979](https://github.com/mochajs/mocha/issues/2979): Drop support for non-ES5-compliant browsers ([@boneskull](https://github.com/boneskull)): + - IE7 + - IE8 + - PhantomJS 1.x +- [#2615](https://github.com/mochajs/mocha/issues/2615): Drop Bower support; old versions (3.x, etc.) will remain available ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull)) + +### Default Behavior + +- [#2879](https://github.com/mochajs/mocha/issues/2879): By default, Mocha will no longer force the process to exit once all tests complete. This means any test code (or code under test) which would normally prevent `node` from exiting will do so when run in Mocha. Supply the `--exit` flag to revert to pre-v4.0.0 behavior ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull)) + +### Reporter Output + +- [#2095](https://github.com/mochajs/mocha/issues/2095): Remove `stdout:` prefix from browser reporter logs ([@skeggse](https://github.com/skeggse)) +- [#2295](https://github.com/mochajs/mocha/issues/2295): Add separator in "unified diff" output ([@olsonpm](https://github.com/olsonpm)) +- [#2686](https://github.com/mochajs/mocha/issues/2686): Print failure message when `--forbid-pending` or `--forbid-only` is specified ([@ScottFreeCode](https://github.com/ScottFreeCode)) +- [#2814](https://github.com/mochajs/mocha/pull/2814): Indent contexts for better readability when reporting failures ([@charlierudolph](https://github.com/charlierudolph)) + +## :-1: Deprecations + +- [#2493](https://github.com/mochajs/mocha/issues/2493): The `--compilers` command-line option is now soft-deprecated and will emit a warning on `STDERR`. Read [this](https://github.com/mochajs/mocha/wiki/compilers-deprecation) for more info and workarounds ([@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull)) + +## :tada: Enhancements + +- [#2628](https://github.com/mochajs/mocha/issues/2628): Allow override of default test suite name in XUnit reporter ([@ngeor](https://github.com/ngeor)) + +## :book: Documentation + +- [#3020](https://github.com/mochajs/mocha/pull/3020): Link to CLA in `README.md` and `CONTRIBUTING.md` ([@skeggse](https://github.com/skeggse)) + +## :nut_and_bolt: Other + +- [#2890](https://github.com/mochajs/mocha/issues/2890): Speed up build by (re-)consolidating SauceLabs tests ([@boneskull](https://github.com/boneskull)) + +# 3.5.3 / 2017-09-11 + +## :bug: Fixes + +- [#3003](https://github.com/mochajs/mocha/pull/3003): Fix invalid entities in xUnit reporter first appearing in v3.5.1 ([@jkrems](https://github.com/jkrems)) + +# 3.5.2 / 2017-09-10 + +## :bug: Fixes + +- [#3001](https://github.com/mochajs/mocha/pull/3001): Fix AMD-related failures first appearing in v3.5.1 ([@boneskull](https://github.com/boneskull)) + +# 3.5.1 / 2017-09-09 + +## :newspaper: News + +- :mega: Mocha is now sponsoring [PDXNode](http://pdxnode.org)! If you're in the [Portland](https://wikipedia.org/wiki/Portland,_Oregon) area, come check out the monthly talks and hack nights! + +## :bug: Fixes + +- [#2997](https://github.com/mochajs/mocha/pull/2997): Fix missing `xit` export for "require" interface ([@solodynamo](https://github.com/solodynamo)) +- [#2957](https://github.com/mochajs/mocha/pull/2957): Fix unicode character handling in XUnit reporter failures ([@jkrems](https://github.com/jkrems)) + +## :nut_and_bolt: Other + +- [#2986](https://github.com/mochajs/mocha/pull/2986): Add issue and PR templates ([@kungapal](https://github.com/kungapal)) +- [#2918](https://github.com/mochajs/mocha/pull/2918): Drop bash dependency for glob-related tests ([@ScottFreeCode](https://github.com/ScottFreeCode)) +- [#2922](https://github.com/mochajs/mocha/pull/2922): Improve `--compilers` coverage ([@ScottFreeCode](https://github.com/ScottFreeCode)) +- [#2981](https://github.com/mochajs/mocha/pull/2981): Fix tpyos and spelling errors ([@jsoref](https://github.com/jsoref)) + # 3.5.0 / 2017-07-31 ## :newspaper: News -- Mocha now has a [code of conduct](https://github.com/mochajs/mocha/blob/master/.github/CODE_OF_CONDUCT.md) (thanks [@kungapal]!). -- Old issues and PRs are now being marked "stale" by [Probot's "Stale" plugin](https://github.com/probot/stale). If an issue is marked as such, and you would like to see it remain open, simply add a new comment to the ticket or PR. +- Mocha now has a [code of conduct](https://github.com/mochajs/mocha/blob/master/.github/CODE_OF_CONDUCT.md) (thanks [@kungapal](https://github.com/kungapal)!). +- Old issues and PRs are now being marked "stale" by [Probot's "Stale" plugin](https://github.com/probot/stale). If an issue is marked as such, and you would like to see it remain open, simply add a new comment to the ticket or PR. - **WARNING**: Support for non-ES5-compliant environments will be dropped starting with version 4.0.0 of Mocha! ## :lock: Security Fixes -- [#2860]: Address [CVE-2015-8315](https://nodesecurity.io/advisories/46) via upgrade of [debug](https://npm.im/debug) ([@boneskull]) +- [#2860](https://github.com/mochajs/mocha/pull/2860): Address [CVE-2015-8315](https://nodesecurity.io/advisories/46) via upgrade of [debug](https://npm.im/debug) ([@boneskull](https://github.com/boneskull)) ## :tada: Enhancements -- [#2696]: Add `--forbid-only` and `--forbid-pending` flags. Use these in CI or hooks to ensure tests aren't accidentally being skipped! ([@charlierudolph]) -- [#2813]: Support Node.js 8's `--napi-modules` flag ([@jupp0r]) +- [#2696](https://github.com/mochajs/mocha/pull/2696): Add `--forbid-only` and `--forbid-pending` flags. Use these in CI or hooks to ensure tests aren't accidentally being skipped! ([@charlierudolph](https://github.com/charlierudolph)) +- [#2813](https://github.com/mochajs/mocha/pull/2813): Support Node.js 8's `--napi-modules` flag ([@jupp0r](https://github.com/jupp0r)) ## :nut_and_bolt: Other -- Various CI-and-test-related fixes and improvements ([@boneskull], [@dasilvacontin], [@PopradiArpad], [@Munter], [@ScottFreeCode]) -- "Officially" support Node.js 8 ([@elergy]) - -[#2860]: https://github.com/mochajs/mocha/pulls/2860 -[#2696]: https://github.com/mochajs/mocha/pulls/2696 -[#2813]: https://github.com/mochajs/mocha/pulls/2813 -[@charlierudolph]: https://github.com/charlierudolph -[@PopradiArpad]: https://github.com/PopradiArpad -[@kungapal]: https://github.com/kungapal -[@elergy]: https://github.com/elergy -[@jupp0r]: https://github.com/jupp0r +- Various CI-and-test-related fixes and improvements ([@boneskull](https://github.com/boneskull), [@dasilvacontin](https://github.com/dasilvacontin), [@PopradiArpad](https://github.com/PopradiArpad), [@Munter](https://github.com/munter), [@ScottFreeCode](https://github.com/ScottFreeCode)) +- "Officially" support Node.js 8 ([@elergy](https://github.com/elergy)) # 3.4.2 / 2017-05-24 ## :bug: Fixes -- [#2802]: Remove call to deprecated `os.tmpDir` ([@makepanic]) -- [#2820]: Eagerly set `process.exitCode` ([@chrisleck]) +- [#2802](https://github.com/mochajs/mocha/issues/2802): Remove call to deprecated `os.tmpDir` ([@makepanic](https://github.com/makepanic)) +- [#2820](https://github.com/mochajs/mocha/pull/2820): Eagerly set `process.exitCode` ([@chrisleck](https://github.com/chrisleck)) ## :nut_and_bolt: Other -- [#2778]: Move linting into an npm script ([@Munter]) - -[@chrisleck]: https://github.com/chrisleck -[@makepanic]: https://github.com/makepanic -[@Munter]: https://github.com/Munter - -[#2778]: https://github.com/mochajs/mocha/pulls/2778 -[#2802]: https://github.com/mochajs/mocha/issues/2802 -[#2820]: https://github.com/mochajs/mocha/pull/2820 +- [#2807](https://github.com/mochajs/mocha/pull/2807): Move linting into an npm script ([@Munter](https://github.com/munter)) # 3.4.1 / 2017-05-14 @@ -63,30 +634,18 @@ This week's highlights: ## :tada: Enhancements -- [#2793], [#2697]: add --allowUncaught to Node.js ([@lrowe]) -- [#2733]: Add `--no-warnings` and `--trace-warnings` flags ([@sonicdoe]) +- [#2793](https://github.com/mochajs/mocha/pull/2793), [#2697](https://github.com/mochajs/mocha/pull/2697): add --allowUncaught to Node.js ([@lrowe](https://github.com/lrowe)) +- [#2733](https://github.com/mochajs/mocha/pull/2733): Add `--no-warnings` and `--trace-warnings` flags ([@sonicdoe](https://github.com/sonicdoe)) ## :bug: Fixes -- [#2793], [#2697]: fix broken allowUncaught ([@lrowe]) +- [#2793](https://github.com/mochajs/mocha/pull/2793), [#2697](https://github.com/mochajs/mocha/pull/2697): fix broken allowUncaught ([@lrowe](https://github.com/lrowe)) ## :nut_and_bolt: Other -- [#2778]: Add license report and scan status ([@xizhao]) -- [#2794]: no special case for macOS running Karma locally ([@boneskull]) -- [#2795]: reverts use of semistandard directly ([#2648]) ([@boneskull]) - -[@lrowe]: https://github.com/lrowe -[@sonicdoe]: https://github.com/sonicdoe -[@xizhao]: https://github.com/xizhao -[@boneskull]: https://github.com/boneskull - -[#2795]: https://github.com/mochajs/mocha/pull/2795 -[#2733]: https://github.com/mochajs/mocha/pull/2733 -[#2793]: https://github.com/mochajs/mocha/pull/2793 -[#2697]: https://github.com/mochajs/mocha/pull/2697 -[#2778]: https://github.com/mochajs/mocha/pull/2778 -[#2794]: https://github.com/mochajs/mocha/pull/2794 +- [#2778](https://github.com/mochajs/mocha/pull/2778): Add license report and scan status ([@xizhao](https://github.com/xizhao)) +- [#2794](https://github.com/mochajs/mocha/pull/2794): no special case for macOS running Karma locally ([@boneskull](https://github.com/boneskull)) +- [#2795](https://github.com/mochajs/mocha/pull/2795): reverts use of semistandard directly ([#2648](https://github.com/mochajs/mocha/pull/2648)) ([@boneskull](https://github.com/boneskull)) # 3.3.0 / 2017-04-24 @@ -95,86 +654,47 @@ Thanks to all our contributors, maintainers, sponsors, and users! ❤️ As highlights: - We've got coverage now! -- Testing is looking less flaky \o/. +- Testing is looking less flaky \\o/. - No more nitpicking about "mocha.js" build on PRs. ## :tada: Enhancements -- [#2659]: Adds support for loading reporter from an absolute or relative path ([@sul4bh]) -- [#2769]: Support `--inspect-brk` on command-line ([@igwejk]) +- [#2659](https://github.com/mochajs/mocha/pull/2659): Adds support for loading reporter from an absolute or relative path ([@sul4bh](https://github.com/sul4bh)) +- [#2769](https://github.com/mochajs/mocha/pull/2769): Support `--inspect-brk` on command-line ([@igwejk](https://github.com/igwejk)) ## :bug: Fixes -- [#2662]: Replace unicode chars w/ hex codes in HTML reporter ([@rotemdan]) +- [#2662](https://github.com/mochajs/mocha/pull/2662): Replace unicode chars w/ hex codes in HTML reporter ([@rotemdan](https://github.com/rotemdan)) ## :mag: Coverage -- [#2672]: Add coverage for node tests ([@c089], [@Munter]) -- [#2680]: Increase tests coverage for base reporter ([@epallerols]) -- [#2690]: Increase tests coverage for doc reporter ([@craigtaub]) -- [#2701]: Increase tests coverage for landing, min, tap and list reporters ([@craigtaub]) -- [#2691]: Increase tests coverage for spec + dot reporters ([@craigtaub]) -- [#2698]: Increase tests coverage for xunit reporter ([@craigtaub]) -- [#2699]: Increase tests coverage for json-stream, markdown and progress reporters ([@craigtaub]) -- [#2703]: Cover .some() function in utils.js with tests ([@seppevs]) -- [#2773]: Add tests for loading reporters w/ relative/absolute paths ([@sul4bh]) +- [#2672](https://github.com/mochajs/mocha/pull/2672): Add coverage for node tests ([@c089](https://github.com/c089), [@Munter](https://github.com/munter)) +- [#2680](https://github.com/mochajs/mocha/pull/2680): Increase tests coverage for base reporter ([@epallerols](https://github.com/epallerols)) +- [#2690](https://github.com/mochajs/mocha/pull/2690): Increase tests coverage for doc reporter ([@craigtaub](https://github.com/craigtaub)) +- [#2701](https://github.com/mochajs/mocha/pull/2701): Increase tests coverage for landing, min, tap and list reporters ([@craigtaub](https://github.com/craigtaub)) +- [#2691](https://github.com/mochajs/mocha/pull/2691): Increase tests coverage for spec + dot reporters ([@craigtaub](https://github.com/craigtaub)) +- [#2698](https://github.com/mochajs/mocha/pull/2698): Increase tests coverage for xunit reporter ([@craigtaub](https://github.com/craigtaub)) +- [#2699](https://github.com/mochajs/mocha/pull/2699): Increase tests coverage for json-stream, markdown and progress reporters ([@craigtaub](https://github.com/craigtaub)) +- [#2703](https://github.com/mochajs/mocha/pull/2703): Cover .some() function in utils.js with tests ([@seppevs](https://github.com/seppevs)) +- [#2773](https://github.com/mochajs/mocha/pull/2773): Add tests for loading reporters w/ relative/absolute paths ([@sul4bh](https://github.com/sul4bh)) ## :nut_and_bolt: Other -- Remove bin/.eslintrc; ensure execs are linted ([@boneskull]) -- [#2542]: Expand CONTRIBUTING.md ([@boneskull]) -- [#2660]: Double timeouts on integration tests ([@Munter]) -- [#2653]: Update copyright year ([@Scottkao85], [@Munter]) -- [#2621]: Update dependencies to enable Greenkeeper ([@boneskull], [@greenkeeper]) -- [#2625]: Use trusty container in travis-ci; use "artifacts" addon ([@boneskull]) -- [#2670]: doc(CONTRIBUTING): fix link to org members ([@coderbyheart]) -- Add Mocha propaganda to README.md ([@boneskull]) -- [#2470]: Avoid test flake in "delay" test ([@boneskull]) -- [#2675]: Limit browser concurrency on sauce ([@boneskull]) -- [#2669]: Use temporary test-only build of mocha.js for browsers tests ([@Munter]) -- Fix "projects" link in README.md ([@boneskull]) -- [#2678]: Chore(Saucelabs): test on IE9, IE10 and IE11 ([@coderbyheart]) -- [#2648]: Use `semistandard` directly ([@kt3k]) -- [#2727]: Make the build reproducible ([@lamby]) - -[@boneskull]: https://github.com/boneskull -[@c089]: https://github.com/c089 -[@coderbyheart]: https://github.com/coderbyheart -[@craigtaub]: https://github.com/craigtaub -[@epallerols]: https://github.com/epallerols -[@greenkeeper]: https://github.com/greenkeeper -[@igwejk]: https://github.com/igwejk -[@kt3k]: https://github.com/kt3k -[@lamby]: https://github.com/lamby -[@Munter]: https://github.com/Munter -[@rotemdan]: https://github.com/rotemdan -[@seppevs]: https://github.com/seppevs -[@sul4bh]: https://github.com/sul4bh - -[#2470]: https://github.com/mochajs/mocha/pull/2470 -[#2542]: https://github.com/mochajs/mocha/issues/2542 -[#2621]: https://github.com/mochajs/mocha/pull/2621 -[#2625]: https://github.com/mochajs/mocha/pull/2625 -[#2648]: https://github.com/mochajs/mocha/pull/2648 -[#2653]: https://github.com/mochajs/mocha/pull/2653 -[#2659]: https://github.com/mochajs/mocha/pull/2659 -[#2660]: https://github.com/mochajs/mocha/pull/2660 -[#2662]: https://github.com/mochajs/mocha/pull/2662 -[#2669]: https://github.com/mochajs/mocha/pull/2669 -[#2670]: https://github.com/mochajs/mocha/pull/2670 -[#2672]: https://github.com/mochajs/mocha/pull/2672 -[#2675]: https://github.com/mochajs/mocha/pull/2675 -[#2678]: https://github.com/mochajs/mocha/pull/2678 -[#2680]: https://github.com/mochajs/mocha/pull/2680 -[#2690]: https://github.com/mochajs/mocha/pull/2690 -[#2691]: https://github.com/mochajs/mocha/pull/2691 -[#2698]: https://github.com/mochajs/mocha/pull/2698 -[#2699]: https://github.com/mochajs/mocha/pull/2699 -[#2701]: https://github.com/mochajs/mocha/pull/2701 -[#2703]: https://github.com/mochajs/mocha/pull/2703 -[#2727]: https://github.com/mochajs/mocha/pull/2727 -[#2769]: https://github.com/mochajs/mocha/pull/2769 -[#2773]: https://github.com/mochajs/mocha/pull/2773 +- Remove bin/.eslintrc; ensure execs are linted ([@boneskull](https://github.com/boneskull)) +- [#2542](https://github.com/mochajs/mocha/issues/2542): Expand CONTRIBUTING.md ([@boneskull](https://github.com/boneskull)) +- [#2660](https://github.com/mochajs/mocha/pull/2660): Double timeouts on integration tests ([@Munter](https://github.com/munter)) +- [#2653](https://github.com/mochajs/mocha/pull/2653): Update copyright year ([@Scottkao85], [@Munter](https://github.com/munter)) +- [#2621](https://github.com/mochajs/mocha/pull/2621): Update dependencies to enable Greenkeeper ([@boneskull](https://github.com/boneskull), [@greenkeeper](https://github.com/greenkeeper)) +- [#2625](https://github.com/mochajs/mocha/pull/2625): Use trusty container in travis-ci; use "artifacts" addon ([@boneskull](https://github.com/boneskull)) +- [#2670](https://github.com/mochajs/mocha/pull/2670): doc(CONTRIBUTING): fix link to org members ([@coderbyheart](https://github.com/coderbyheart)) +- Add Mocha propaganda to README.md ([@boneskull](https://github.com/boneskull)) +- [#2470](https://github.com/mochajs/mocha/pull/2470): Avoid test flake in "delay" test ([@boneskull](https://github.com/boneskull)) +- [#2675](https://github.com/mochajs/mocha/pull/2675): Limit browser concurrency on sauce ([@boneskull](https://github.com/boneskull)) +- [#2669](https://github.com/mochajs/mocha/pull/2669): Use temporary test-only build of mocha.js for browsers tests ([@Munter](https://github.com/munter)) +- Fix "projects" link in README.md ([@boneskull](https://github.com/boneskull)) +- [#2678](https://github.com/mochajs/mocha/pull/2678): Chore(Saucelabs): test on IE9, IE10 and IE11 ([@coderbyheart](https://github.com/coderbyheart)) +- [#2648](https://github.com/mochajs/mocha/pull/2648): Use `semistandard` directly ([@kt3k](https://github.com/kt3k)) +- [#2727](https://github.com/mochajs/mocha/pull/2727): Make the build reproducible ([@lamby](https://github.com/lamby)) # 3.2.0 / 2016-11-24 @@ -182,1486 +702,1115 @@ As highlights: ### Mocha is now a JS Foundation Project! -Mocha is proud to have joined the [JS Foundation](https://js.foundation). For more information, [read the announcement](https://js.foundation/announcements/2016/10/17/Linux-Foundation-Unites-JavaScript-Community-Open-Web-Development/). +Mocha is proud to have joined the [JS Foundation](https://js.foundation). For more information, [read the announcement](https://js.foundation/announcements/2016/10/17/Linux-Foundation-Unites-JavaScript-Community-Open-Web-Development/). ### Contributor License Agreement -Under the foundation, all contributors to Mocha must sign the [JS Foundation CLA](https://js.foundation/CLA/) before their code can be merged. When sending a PR--if you have not already signed the CLA--a friendly bot will ask you to do so. +Under the foundation, all contributors to Mocha must sign the [JS Foundation CLA](https://js.foundation/CLA/) before their code can be merged. When sending a PR--if you have not already signed the CLA--a friendly bot will ask you to do so. Mocha remains licensed under the [MIT license](https://github.com/mochajs/mocha/blob/master/LICENSE). ## :bug: Bug Fix -- [#2535]: Fix crash when `--watch` encounters broken symlinks ([@villesau]) -- [#2593]: Fix (old) regression; incorrect symbol shown in `list` reporter ([@Aldaviva]) -- [#2584]: Fix potential error when running XUnit reporter ([@vobujs]) +- [#2535](https://github.com/mochajs/mocha/issues/2535): Fix crash when `--watch` encounters broken symlinks ([@villesau](https://github.com/villesau)) +- [#2593](https://github.com/mochajs/mocha/pull/2593): Fix (old) regression; incorrect symbol shown in `list` reporter ([@Aldaviva](https://github.com/Aldaviva)) +- [#2584](https://github.com/mochajs/mocha/issues/2584): Fix potential error when running XUnit reporter ([@vobujs](https://github.com/vobujs)) ## :tada: Enhancement -- [#2294]: Improve timeout error messaging ([@jeversmann], [@boneskull]) -- [#2520]: Add info about `--inspect` flag to CLI help ([@ughitsaaron]) +- [#2294](https://github.com/mochajs/mocha/issues/2294): Improve timeout error messaging ([@jeversmann](https://github.com/jeversmann), [@boneskull](https://github.com/boneskull)) +- [#2520](https://github.com/mochajs/mocha/pull/2520): Add info about `--inspect` flag to CLI help ([@ughitsaaron](https://github.com/ughitsaaron)) ## :nut_and_bolt: Other -- [#2570]: Use [karma-mocha](https://npmjs.com/package/karma-mocha) proper ([@boneskull]) -- Licenses updated to reflect new copyright, add link to license and browser matrix to `README.md` ([@boneskull], [@ScottFreeCode], [@dasilvacontin]) +- [#2570](https://github.com/mochajs/mocha/issues/2570): Use [karma-mocha](https://npmjs.com/package/karma-mocha) proper ([@boneskull](https://github.com/boneskull)) +- Licenses updated to reflect new copyright, add link to license and browser matrix to `README.md` ([@boneskull](https://github.com/boneskull), [@ScottFreeCode](https://github.com/ScottFreeCode), [@dasilvacontin](https://github.com/dasilvacontin)) -[#2294]: https://github.com/mochajs/mocha/issues/2294 -[#2535]: https://github.com/mochajs/mocha/issues/2535 -[#2520]: https://github.com/mochajs/mocha/pull/2520 -[#2593]: https://github.com/mochajs/mocha/pull/2593 -[#2584]: https://github.com/mochajs/mocha/issues/2584 -[#2570]: https://github.com/mochajs/mocha/issues/2570 -[@Aldaviva]: https://github.com/Aldaviva -[@jeversmann]: https://github.com/jeversmann -[@ughitsaaron]: https://github.com/ughitsaaron -[@villesau]: https://github.com/villesau -[@vobujs]: https://github.com/vobujs - -Thanks to all our contributors, sponsors and backers! Keep on the lookout for a public roadmap and new contribution guide coming soon. +Thanks to all our contributors, sponsors and backers! Keep on the lookout for a public roadmap and new contribution guide coming soon. # 3.1.2 / 2016-10-10 ## :bug: Bug Fix -- [#2528]: Recovery gracefully if an `Error`'s `stack` property isn't writable ([@boneskull]) - -[#2528]: https://github.com/mochajs/mocha/issues/2528 +- [#2528](https://github.com/mochajs/mocha/issues/2528): Recovery gracefully if an `Error`'s `stack` property isn't writable ([@boneskull](https://github.com/boneskull)) # 3.1.1 / 2016-10-09 ## :bug: Bug Fix -- [#1417]: Don't report `done()` was called multiple times when it wasn't ([@frankleonrose]) - -## :nut_and_bolt: Other +- [#1417](https://github.com/mochajs/mocha/issues/1417): Don't report `done()` was called multiple times when it wasn't ([@frankleonrose](https://github.com/frankleonrose)) -- [#2490]: Lint with [semistandard](https://npmjs.com/package/semistandard) config ([@makepanic]) -- [#2525]: Lint all `.js` files ([@boneskull]) -- [#2524]: Provide workaround for developers unable to run browser tests on macOS Sierra ([@boneskull]) +## :nut_and_bolt: Other -[#1417]: https://github.com/mochajs/mocha/issues/1417 -[#2490]: https://github.com/mochajs/mocha/issues/2490 -[#2525]: https://github.com/mochajs/mocha/issues/2525 -[#2524]: https://github.com/mochajs/mocha/issues/2524 -[@makepanic]: https://github.com/makepanic -[@frankleonrose]: https://github.com/frankleonrose +- [#2490](https://github.com/mochajs/mocha/issues/2490): Lint with [semistandard](https://npmjs.com/package/semistandard) config ([@makepanic](https://github.com/makepanic)) +- [#2525](https://github.com/mochajs/mocha/issues/2525): Lint all `.js` files ([@boneskull](https://github.com/boneskull)) +- [#2524](https://github.com/mochajs/mocha/issues/2524): Provide workaround for developers unable to run browser tests on macOS Sierra ([@boneskull](https://github.com/boneskull)) # 3.1.0 / 2016-09-27 ## :tada: Enhancement -- [#2357]: Support `--inspect` on command-line ([@simov]) -- [#2194]: Human-friendly error if no files are matched on command-line ([@Munter]) -- [#1744]: Human-friendly error if a Suite has no callback (BDD/TDD only) ([@anton]) +- [#2357](https://github.com/mochajs/mocha/issues/2357): Support `--inspect` on command-line ([@simov](https://github.com/simov)) +- [#2194](https://github.com/mochajs/mocha/issues/2194): Human-friendly error if no files are matched on command-line ([@Munter](https://github.com/munter)) +- [#1744](https://github.com/mochajs/mocha/issues/1744): Human-friendly error if a Suite has no callback (BDD/TDD only) ([@anton](https://github.com/anton)) ## :bug: Bug Fix -- [#2488]: Fix case in which *variables beginning with lowercase "D"* may not have been reported properly as global leaks ([@JustATrick]) :laughing: -- [#2465]: Always halt execution in async function when `this.skip()` is called ([@boneskull]) -- [#2445]: Exits with expected code 130 when `SIGINT` encountered; exit code can no longer rollover at 256 ([@Munter]) -- [#2315]: Fix uncaught TypeError thrown from callback stack ([@1999]) -- Fix broken `only()`/`skip()` in IE7/IE8 ([@boneskull]) -- [#2502]: Fix broken stack trace filter on Node.js under Windows ([@boneskull]) -- [#2496]: Fix diff output for objects instantiated with `String` constructor ([more](https://youtrack.jetbrains.com/issue/WEB-23383)) ([@boneskull]) - -[#2496]: https://github.com/mochajs/mocha/issues/2496 -[#2502]: https://github.com/mochajs/mocha/issues/2502 -[#2315]: https://github.com/mochajs/mocha/issues/2315 -[#2445]: https://github.com/mochajs/mocha/pull/2445 -[#2465]: https://github.com/mochajs/mocha/issues/2465 -[#2488]: https://github.com/mochajs/mocha/issues/2488 -[#1744]: https://github.com/mochajs/mocha/issues/1744 -[#2194]: https://github.com/mochajs/mocha/issues/2194 -[#2357]: https://github.com/mochajs/mocha/issues/2357 -[@1999]: https://github.com/1999 -[@JustATrick]: https://github.com/JustATrick -[@anton]: https://github.com/anton -[@simov]: https://github.com/simov +- [#2488](https://github.com/mochajs/mocha/issues/2488): Fix case in which _variables beginning with lowercase "D"_ may not have been reported properly as global leaks ([@JustATrick](https://github.com/JustATrick)) :laughing: +- [#2465](https://github.com/mochajs/mocha/issues/2465): Always halt execution in async function when `this.skip()` is called ([@boneskull](https://github.com/boneskull)) +- [#2445](https://github.com/mochajs/mocha/pull/2445): Exits with expected code 130 when `SIGINT` encountered; exit code can no longer rollover at 256 ([@Munter](https://github.com/munter)) +- [#2315](https://github.com/mochajs/mocha/issues/2315): Fix uncaught TypeError thrown from callback stack ([@1999](https://github.com/1999)) +- Fix broken `only()`/`skip()` in IE7/IE8 ([@boneskull](https://github.com/boneskull)) +- [#2502](https://github.com/mochajs/mocha/issues/2502): Fix broken stack trace filter on Node.js under Windows ([@boneskull](https://github.com/boneskull)) +- [#2496](https://github.com/mochajs/mocha/issues/2496): Fix diff output for objects instantiated with `String` constructor ([more](https://youtrack.jetbrains.com/issue/WEB-23383)) ([@boneskull](https://github.com/boneskull)) # 3.0.2 / 2016-08-08 ## :bug: Bug Fix -- [#2424]: Fix error loading Mocha via Require.js ([@boneskull]) -- [#2417]: Fix execution of *deeply* nested `describe.only()` suites ([@not-an-aardvark]) -- Remove references to `json-cov` and `html-cov` reporters in CLI ([@boneskull]) - -[#2417]: https://github.com/mochajs/mocha/issues/2417 -[#2424]: https://github.com/mochajs/mocha/issues/2424 +- [#2424](https://github.com/mochajs/mocha/issues/2424): Fix error loading Mocha via Require.js ([@boneskull](https://github.com/boneskull)) +- [#2417](https://github.com/mochajs/mocha/issues/2417): Fix execution of _deeply_ nested `describe.only()` suites ([@not-an-aardvark](https://github.com/not-an-aardvark)) +- Remove references to `json-cov` and `html-cov` reporters in CLI ([@boneskull](https://github.com/boneskull)) # 3.0.1 / 2016-08-03 ## :bug: Bug Fix -- [#2406]: Restore execution of nested `describe.only()` suites ([@not-an-aardvark]) - -[#2406]: https://github.com/mochajs/mocha/issues/2406 -[@not-an-aardvark]: https://github.com/not-an-aardvark +- [#2406](https://github.com/mochajs/mocha/issues/2406): Restore execution of nested `describe.only()` suites ([@not-an-aardvark](https://github.com/not-an-aardvark)) # 3.0.0 / 2016-07-31 ## :boom: Breaking Changes - :warning: Due to the increasing difficulty of applying security patches made within its dependency tree, as well as looming incompatibilities with Node.js v7.0, **Mocha no longer supports Node.js v0.8**. -- :warning: **Mocha may no longer be installed by versions of `npm` less than `1.4.0`.** Previously, this requirement only affected Mocha's development dependencies. In short, this allows Mocha to depend on packages which have dependencies fixed to major versions (`^`). + +- :warning: **Mocha may no longer be installed by versions of `npm` less than `1.4.0`.** Previously, this requirement only affected Mocha's development dependencies. In short, this allows Mocha to depend on packages which have dependencies fixed to major versions (`^`). + - `.only()` is no longer "fuzzy", can be used multiple times, and generally just works like you think it should. :joy: -- To avoid common bugs, when a test injects a callback function (suggesting asynchronous execution), calls it, *and* returns a `Promise`, Mocha will now throw an exception: - ```js +- To avoid common bugs, when a test injects a callback function (suggesting asynchronous execution), calls it, _and_ returns a `Promise`, Mocha will now throw an exception: + + \```js const assert = require('assert'); it('should complete this test', function (done) { - return new Promise(function (resolve) { - assert.ok(true); - resolve(); - }) - .then(done); + return new Promise(function (resolve) { + assert.ok(true); + resolve(); + }) + .then(done); }); - ``` + \``` The above test will fail with `Error: Resolution method is overspecified. Specify a callback *or* return a Promise; not both.`. -- When a test timeout value *greater than* `2147483648` is specified in any context (`--timeout`, `mocha.setup()`, per-suite, per-test, etc.), the timeout will be *disabled* and the test(s) will be allowed to run indefinitely. This is equivalent to specifying a timeout value of `0`. See [MDN](https://developer.mozilla.org/docs/Web/API/WindowTimers/setTimeout#Maximum_delay_value) for reasoning. + +- When a test timeout value _greater than_ `2147483648` is specified in any context (`--timeout`, `mocha.setup()`, per-suite, per-test, etc.), the timeout will be _disabled_ and the test(s) will be allowed to run indefinitely. This is equivalent to specifying a timeout value of `0`. See [MDN](https://developer.mozilla.org/docs/Web/API/WindowTimers/setTimeout#Maximum_delay_value) for reasoning. + - The `dot` reporter now uses more visually distinctive characters when indicating "pending" and "failed" tests. + - Mocha no longer supports [component](https://www.npmjs.com/package/component). + - The long-forsaken `HTMLCov` and `JSONCov` reporters--and any relationship to the "node-jscoverage" project--have been removed. + - `spec` reporter now omits leading carriage returns (`\r`) in non-TTY environment. ## :tada: Enhancements -- [#808]: Allow regular-expression-like strings in `--grep` and browser's `grep` querystring; enables flags such as `i` for case-insensitive matches and `u` for unicode. ([@a8m]) -- [#2000]: Use distinctive characters in `dot` reporter; `,` will denote a "pending" test and `!` will denote a "failing" test. ([@elliottcable]) -- [#1632]: Throw a useful exception when a suite or test lacks a title. ([@a8m]) -- [#1481]: Better `.only()` behavior. ([@a8m]) -- [#2334]: Allow `this.skip()` in async tests and hooks. ([@boneskull]) -- [#1320]: Throw a useful exception when test resolution method is overspecified. ([@jugglinmike]) -- [#2364]: Support `--preserve-symlinks`. ([@rosswarren]) +- [#808](https://github.com/mochajs/mocha/issues/808): Allow regular-expression-like strings in `--grep` and browser's `grep` querystring; enables flags such as `i` for case-insensitive matches and `u` for unicode. ([@a8m](https://github.com/a8m)) +- [#2000](https://github.com/mochajs/mocha/pull/2000): Use distinctive characters in `dot` reporter; `,` will denote a "pending" test and `!` will denote a "failing" test. ([@elliottcable](https://github.com/elliottcable)) +- [#1632](https://github.com/mochajs/mocha/issues/1632): Throw a useful exception when a suite or test lacks a title. ([@a8m](https://github.com/a8m)) +- [#1481](https://github.com/mochajs/mocha/issues/1481): Better `.only()` behavior. ([@a8m](https://github.com/a8m)) +- [#2334](https://github.com/mochajs/mocha/issues/2334): Allow `this.skip()` in async tests and hooks. ([@boneskull](https://github.com/boneskull)) +- [#1320](https://github.com/mochajs/mocha/pull/1320): Throw a useful exception when test resolution method is overspecified. ([@jugglinmike](https://github.com/jugglinmike)) +- [#2364](https://github.com/mochajs/mocha/pull/2364): Support `--preserve-symlinks`. ([@rosswarren](https://github.com/rosswarren)) ## :bug: Bug Fixes -- [#2259]: Restore ES3 compatibility. Specifically, support an environment lacking `Date.prototype.toISOString()`, `JSON`, or has a non-standard implementation of `JSON`. ([@ndhoule], [@boneskull]) -- [#2286]: Fix `after()` failing to execute if test skipped using `this.skip()` in `beforeEach()`; no longer marks the entire suite as "pending". ([@dasilvacontin], [@boneskull]) -- [#2208]: Fix function name display in `markdown` and `html` (browser) reporters. ([@ScottFreeCode]) -- [#2299]: Fix progress bar in `html` (browser) reporter. ([@AviVahl]) -- [#2307]: Fix `doc` reporter crashing when test fails. ([@jleyba]) -- [#2323]: Ensure browser entry point (`browser-entry.js`) is published to npm (for use with bundlers). ([@boneskull]) -- [#2310]: Ensure custom reporter with an absolute path works in Windows. ([@silentcloud]) -- [#2311]: Fix problem wherein calling `this.slow()` without a value would blast any previously set value. ([@boneskull]) -- [#1813]: Ensure Mocha's own test suite will run in Windows. ([@tswaters], [@TimothyGu], [@boneskull]) -- [#2317]: Ensure all interfaces are displayed in `--help` on CLI. ([@ScottFreeCode]) -- [#1644]: Don't exhibit undefined behavior when calling `this.timeout()` with very large values ([@callumacrae], [@boneskull]) -- [#2361]: Don't truncate name of thrown anonymous exception. ([@boneskull]) -- [#2367]: Fix invalid CSS. ([@bensontrent]) -- [#2401]: Remove carriage return before each test line in spec reporter. ([@Munter]) +- [#2259](https://github.com/mochajs/mocha/pull/2259): Restore ES3 compatibility. Specifically, support an environment lacking `Date.prototype.toISOString()`, `JSON`, or has a non-standard implementation of `JSON`. ([@ndhoule](https://github.com/ndhoule), [@boneskull](https://github.com/boneskull)) +- [#2286](https://github.com/mochajs/mocha/issues/2286): Fix `after()` failing to execute if test skipped using `this.skip()` in `beforeEach()`; no longer marks the entire suite as "pending". ([@dasilvacontin](https://github.com/dasilvacontin), [@boneskull](https://github.com/boneskull)) +- [#2208](https://github.com/mochajs/mocha/pull/2208): Fix function name display in `markdown` and `html` (browser) reporters. ([@ScottFreeCode](https://github.com/ScottFreeCode)) +- [#2299](https://github.com/mochajs/mocha/pull/2299): Fix progress bar in `html` (browser) reporter. ([@AviVahl](https://github.com/avivahl)) +- [#2307](https://github.com/mochajs/mocha/pull/2307): Fix `doc` reporter crashing when test fails. ([@jleyba](https://github.com/jleyba)) +- [#2323](https://github.com/mochajs/mocha/issues/2323): Ensure browser entry point (`browser-entry.js`) is published to npm (for use with bundlers). ([@boneskull](https://github.com/boneskull)) +- [#2310](https://github.com/mochajs/mocha/issues/2310): Ensure custom reporter with an absolute path works in Windows. ([@silentcloud](https://github.com/silentcloud)) +- [#2311](https://github.com/mochajs/mocha/issues/2311): Fix problem wherein calling `this.slow()` without a value would blast any previously set value. ([@boneskull](https://github.com/boneskull)) +- [#1813](https://github.com/mochajs/mocha/issues/1813): Ensure Mocha's own test suite will run in Windows. ([@tswaters](https://github.com/tswaters), [@TimothyGu](https://github.com/timothygu), [@boneskull](https://github.com/boneskull)) +- [#2317](https://github.com/mochajs/mocha/issues/2317): Ensure all interfaces are displayed in `--help` on CLI. ([@ScottFreeCode](https://github.com/ScottFreeCode)) +- [#1644](https://github.com/mochajs/mocha/issues/1644): Don't exhibit undefined behavior when calling `this.timeout()` with very large values ([@callumacrae](https://github.com/callumacrae), [@boneskull](https://github.com/boneskull)) +- [#2361](https://github.com/mochajs/mocha/pull/2361): Don't truncate name of thrown anonymous exception. ([@boneskull](https://github.com/boneskull)) +- [#2367](https://github.com/mochajs/mocha/pull/2367): Fix invalid CSS. ([@bensontrent](https://github.com/bensontrent)) +- [#2401](https://github.com/mochajs/mocha/pull/2401): Remove carriage return before each test line in spec reporter. ([@Munter](https://github.com/munter)) ## :nut_and_bolt: Other -- Upgrade production dependencies to address security advisories (and because now we can): `glob`, `commander`, `escape-string-regexp`, -and `supports-color`. ([@boneskull], [@RobLoach]) -- Add Windows to CI. ([@boneskull], [@TimothyGu]) -- Ensure appropriate `engines` field in `package.json`. ([@shinnn], [@boneskull]) -- [#2348]: Upgrade ESLint to v2 ([@anthony-redfox]) +- Upgrade production dependencies to address security advisories (and because now we can): `glob`, `commander`, `escape-string-regexp`, and `supports-color`. ([@boneskull](https://github.com/boneskull), [@RobLoach](https://github.com/robloach)) +- Add Windows to CI. ([@boneskull](https://github.com/boneskull), [@TimothyGu](https://github.com/timothygu)) +- Ensure appropriate `engines` field in `package.json`. ([@shinnn](https://github.com/shinnn), [@boneskull](https://github.com/boneskull)) +- [#2348](https://github.com/mochajs/mocha/issues/2348): Upgrade ESLint to v2 ([@anthony-redfox](https://github.com/anthony-redfox)) We :heart: our [backers and sponsors](https://opencollective.com/mochajs)! :shipit: -[#2401]: https://github.com/mochajs/mocha/pull/2401 -[#2348]: https://github.com/mochajs/mocha/issues/2348 -[#808]: https://github.com/mochajs/mocha/issues/808 -[#2361]: https://github.com/mochajs/mocha/pull/2361 -[#2367]: https://github.com/mochajs/mocha/pull/2367 -[#2364]: https://github.com/mochajs/mocha/pull/2364 -[#1320]: https://github.com/mochajs/mocha/pull/1320 -[#2307]: https://github.com/mochajs/mocha/pull/2307 -[#2259]: https://github.com/mochajs/mocha/pull/2259 -[#2208]: https://github.com/mochajs/mocha/pull/2208 -[#2299]: https://github.com/mochajs/mocha/pull/2299 -[#2286]: https://github.com/mochajs/mocha/issues/2286 -[#1644]: https://github.com/mochajs/mocha/issues/1644 -[#2310]: https://github.com/mochajs/mocha/issues/2310 -[#2311]: https://github.com/mochajs/mocha/issues/2311 -[#2323]: https://github.com/mochajs/mocha/issues/2323 -[#2000]: https://github.com/mochajs/mocha/pull/2000 -[#1632]: https://github.com/mochajs/mocha/issues/1632 -[#1813]: https://github.com/mochajs/mocha/issues/1813 -[#2334]: https://github.com/mochajs/mocha/issues/2334 -[#2317]: https://github.com/mochajs/mocha/issues/2317 -[#1481]: https://github.com/mochajs/mocha/issues/1481 -[@elliottcable]: https://github.com/elliottcable -[@RobLoach]: https://github.com/robloach -[@AviVahl]: https://github.com/avivahl -[@silentcloud]: https://github.com/silentcloud -[@tswaters]: https://github.com/tswaters -[@jleyba]: https://github.com/jleyba -[@TimothyGu]: https://github.com/timothygu -[@callumacrae]: https://github.com/callumacrae -[@shinnn]: https://github.com/shinnn -[@bensontrent]: https://github.com/bensontrent -[@jugglinmike]: https://github.com/jugglinmike -[@rosswarren]: https://github.com/rosswarren -[@anthony-redfox]: https://github.com/anthony-redfox -[@Munter]: https://github.com/munter - # 2.5.3 / 2016-05-25 -- [#2112] - Fix HTML reporter regression causing duplicate error output ([@danielstjules] via 6d24063) -- [#2119] - Make HTML reporter failure/passed links preventDefault to avoid SPA's hash navigation ([@jimenglish81] via 9e93efc) - -[@danielstjules]: https://github.com/danielstjules -[@jimenglish81]: https://github.com/jimenglish81 -[#2112]: https://github.com/mochajs/mocha/pull/2112 -[#2119]: https://github.com/mochajs/mocha/pull/2119 +- [#2112](https://github.com/mochajs/mocha/pull/2112) - Fix HTML reporter regression causing duplicate error output ([@danielstjules](https://github.com/danielstjules) via [`6d24063`](https://github.com/mochajs/mocha/commit/6d24063)) +- [#2119](https://github.com/mochajs/mocha/pull/2119) - Make HTML reporter failure/passed links preventDefault to avoid SPA's hash navigation ([@jimenglish81](https://github.com/jimenglish81) via [`9e93efc`](https://github.com/mochajs/mocha/commit/9e93efc)) # 2.5.2 / 2016-05-24 -- [#2178] - Avoid double and triple xUnit XML escaping ([@graingert] via 49b5ff1) - -[@graingert]: https://github.com/graingert -[#2178]: https://github.com/mochajs/mocha/pull/2178 +- [#2178](https://github.com/mochajs/mocha/pull/2178) - Avoid double and triple xUnit XML escaping ([@graingert](https://github.com/graingert) via [`49b5ff1`](https://github.com/mochajs/mocha/commit/49b5ff1)) # 2.5.1 / 2016-05-23 -- Fix [to-iso-string](https://npmjs.com/package/to-iso-string) dependency ([@boneskull] via bd9450b) +- Fix [to-iso-string](https://npmjs.com/package/to-iso-string) dependency ([@boneskull](https://github.com/boneskull) via [`bd9450b`](https://github.com/mochajs/mocha/commit/bd9450b)) -Thanks @entertainyou, @SimenB, @just-paja for the heads-up. +Thanks [**@entertainyou**](https://github.com/entertainyou), [**@SimenB**](https://github.com/SimenB), [**@just-paja**](https://github.com/just-paja) for the heads-up. # 2.5.0 / 2016-05-23 -> This has been awhile coming! We needed to feel confident that the next release wouldn't break browser compatibility (e.g. the last few patch releases). -> -> ### Browser Tests in CI -> -> We now run unit tests against PhantomJS v1.x and an assortment of browsers on [SauceLabs](https://saucelabs.com), including: -> - Internet Explorer v8.0 -> - Chrome (latest) -> - Firefox (latest) -> - Safari (latest) -> - Microsoft Edge (latest) -> -> To accomplish this, we now run Mocha's unit tests (and a handful of integration tests) via [Karma](https://npmjs.com/package/karma) and a modified [karma-mocha](https://npmjs.com/package/karma-mocha). Along the way, we had to solve issue [#880] (apologies to @mderijcke and @sukima who had PRs addressing this), as well as replace most usages of [should](https://npmjs.com/package/should) with [expect.js](https://npmjs.com/package/expect.js) for IE8. -> -> Going forward, when sending PRs, your code will *only* run against PhantomJS v1.x (and not hit SauceLabs) [because security](https://docs.travis-ci.com/user/pull-requests/#Security-Restrictions-when-testing-Pull-Requests). -> -> ### Node.js 6.x -> Node.js 6.x "just worked" before, but now it's in the CI matrix, so it's "officially" supported. Mocha *still retains support* for Node.js 0.8.x. -> -> ### "Minor" Release -> You'll see mostly bug fixes below, but also a couple features--as such, it's a "minor" release. -> -> ### TYVM -> -> Thanks to everyone who contributed, and our fabulous [sponsors and backers](https://opencollective.com/mochajs)! - -- [#2079] - Add browser checks to CI; update [browserify](https://npmjs.com/package/browserify) to v13.0.0 ([@dasilvacontin], [@ScottFreeCode], [@boneskull] via c04c1d7, 0b1e9b3, 0dde0fa, f8a3d86, 9e8cbaa) -- [#880] - Make Mocha browserifyable ([@boneskull] via 524862b) -- [#2121] - Update [glob](https://npmjs.com/package/glob) to v3.2.11 ([@astorije] via 7920fc4) -- [#2126] - Fix dupe error messages in stack trace filter ([@Turbo87] via 4301caa) -- [#2109] - Fix certain diffs when objects cannot be coerced into primitives ([@joshlory] via 61fbb7f) -- [#1827] - Fix TWBS/`mocha.css` collisions ([@irnc] via 0543798) -- [#1760], [#1936] - Fix `this.skip()` in HTML reporter ([@mislav] via cb4248b) -- [#2115] - Fix exceptions thrown from hooks in HTML reporter ([@danielstjules] via e290bc0) -- [#2089] - Handle Symbol values in `util.stringify()` ([@ryym] via ea61d05) -- [#2097] - Fix diff for objects overriding `Object.prototype.hasOwnProperty` ([@mantoni] via b20fdfe) -- [#2101] - Properly handle non-string "messages" thrown from assertion libraries ([@jkimbo] via 9c41051) -- [#2124] - Update [growl](https://npmjs.com/package/growl) ([@benjamine] via 9ae6a85) -- [#2162], [#2205] - JSDoc fixes ([@OlegTsyba] via 8031f20, [@ScottFreeCode] via f83b1d9) -- [#2132] - Remove Growl-related cruft ([@julienw] via 00d6469) -- [#2172] - Add [OpenCollective](https://opencollective.com) badge, sponsors & backers ([@xdamman], [@boneskull] via caee94f) -- [#1841] - Add new logo, banner assets ([@dasilvacontin] via 00fd0e1) -- [#2214] - Update `README.md` header ([@dasilvacontin] via c0f9be2) -- [#2236] - Better checks for Node.js v0.8 compatibility in CI ([@dasilvacontin] via ba5637d) -- [#2239] - Add Node.js v6.x to CI matrix ([@boneskull] via 3904da4) - -[#880]: https://github.com/mochajs/mocha/issues/880 -[#1841]: https://github.com/mochajs/mocha/pull/1841 -[#2239]: https://github.com/mochajs/mocha/issues/2239 -[#2153]: https://github.com/mochajs/mocha/pull/2153 -[#2214]: https://github.com/mochajs/mocha/pull/2214 -[#2236]: https://github.com/mochajs/mocha/pull/2236 -[#2079]: https://github.com/mochajs/mocha/issues/2079 -[#2231]: https://github.com/mochajs/mocha/pull/2231 -[#2089]: https://github.com/mochajs/mocha/issues/2089 -[#2097]: https://github.com/mochajs/mocha/pull/2097 -[#1760]: https://github.com/mochajs/mocha/issues/1760 -[#1936]: https://github.com/mochajs/mocha/issues/1936 -[#2115]: https://github.com/mochajs/mocha/pull/2115 -[#1827]: https://github.com/mochajs/mocha/pull/1827 -[#2101]: https://github.com/mochajs/mocha/pull/2101 -[#2124]: https://github.com/mochajs/mocha/pull/2124 -[#2109]: https://github.com/mochajs/mocha/issues/2109 -[#2162]: https://github.com/mochajs/mocha/pull/2162 -[#2132]: https://github.com/mochajs/mocha/issues/2132 -[#2126]: https://github.com/mochajs/mocha/issues/2126 -[#2121]: https://github.com/mochajs/mocha/issues/2121 -[#2205]: https://github.com/mochajs/mocha/pull/2205 -[#2172]: https://github.com/mochajs/mocha/pull/2172 -[@xdamman]: https://github.com/xdamman -[@Turbo87]: https://github.com/Turbo87 -[@OlegTsyba]: https://github.com/OlegTsyba -[@ryym]: https://github.com/ryym -[@mantoni]: https://github.com/mantoni -[@mislav]: https://github.com/mislav -[@irnc]: https://github.com/irnc -[@jkimbo]: https://github.com/jkimbo -[@benjamine]: https://github.com/benjamine -[@joshlory]: https://github.com/joshlory -[@julienw]: https://github.com/julienw -[@ScottFreeCode]: https://github.com/ScottFreeCode -[@astorije]: https://github.com/astorije -[@dasilvacontin]: https://github.com/dasilvacontin - -2.4.5 / 2016-01-28 -================== - -* [#2080], [#2078], [#2072], [#2073], [#1200] - Revert changes to console colors in changeset [1192914](https://github.com/mochajs/mocha/commit/119291449cd03a11cdeda9e37cf718a69a012896) and subsequent related changes thereafter. Restores compatibility with IE8 & PhantomJS. See also [mantoni/mochify.js#129](https://github.com/mantoni/mochify.js/issues/129) and [openlayers/ol3#4746](https://github.com/openlayers/ol3/pull/4746) ([@boneskull]) -* [#2082] - Fix several test assertions ([@mislav]) - -[#1200]: https://github.com/mochajs/mocha/issues/1200 -[#2082]: https://github.com/mochajs/mocha/pull/2082 - -2.4.4 / 2016-01-27 -================== - -* [#2080] - Fix broken RequireJS compatibility ([@boneskull]) - -[#2080]: https://github.com/mochajs/mocha/issues/2080 - -2.4.3 / 2016-01-27 -================== - -* [#2078] - Fix broken IE8 ([@boneskull]) - -[#2078]: https://github.com/mochajs/mocha/issues/2078 - -2.4.2 / 2016-01-26 -================== - -* [#2053] - Fix web worker compatibility ([@mislav]) -* [#2072] - Fix Windows color output ([@thedark1337]) -* [#2073] - Fix colors in `progress` and `landing` reporters ([@gyandeeps]) - -[#2053]: https://github.com/mochajs/mocha/pull/2053 -[#2072]: https://github.com/mochajs/mocha/pull/2072 -[#2073]: https://github.com/mochajs/mocha/pull/2073 -[@gyandeeps]: https://github.com/gyandeeps -[@thedark1337]: https://github.com/thedark1337 - -2.4.1 / 2016-01-26 -================== - -* [#2067] - Fix HTML/doc reporter regressions ([@danielstjules]) - -[#2067]: https://github.com/mochajs/mocha/pull/2067 - -2.4.0 / 2016-01-25 -================== - -* [#1945] - Correctly skip tests when skipping in suite's before() ([@ryanshawty]) -* [#2056] - chore(license): update license year to 2016 ([@pra85]) -* [#2048] - Fix `this.skip` from spec with HTML reporter ([@mislav]) -* [#2033] - Update tests for newer versions of should.js ([@tomhughes]) -* [#2037] - Fix for memory leak caused by referenced to deferred test ([@bd82]) -* [#2038] - Also run Travis-CI on node.js 4 & 5 ([@bd82]) -* [#2028] - Remove reference to test before afterAll hook runs ([@stonelgh]) -* Bump mkdirp to 0.5.1 to support strict mode ([@danielstjules]) -* [#1977] - safely stringify PhantomJS undefined value ([@ahamid]) -* Add the ability to retry tests ([@@longlho]) -* [#1982] - Enable --log-timer-events option [@Alaneor] -* Fix #1980: Load mocha.opts from bin/mocha and bin/_mocha ([@danielstjules]) -* [#1976] - Simplify function call ([@iclanzan]) -* [#1963] - Add support --perf-basic-prof ([@robraux]) -* [#1981] - Fix HTML reporter handling of done and exceptions ([@Standard8]) -* [#1993] - propagate "file" property for "exports" interface ([@segrey]) -* [#1999] - Add support for strict mode ([@tmont]) -* [#2005] - XUnit Reporter Writes to stdout, falls back to console.log ([@jonnyreeves]) -* [#2021] - Fix non ES5 compliant regexp ([@zetaben]) -* [#1965] - Don't double install BDD UI ([@cowboyd]) -* [#1995] - Make sure the xunit output dir exists before writing to it ([@ianwremmel]) -* Use chalk for the base reporter colors; closes #1200 ([@boneskull]) -* Fix requiring custom interfaces ([@jgkim]) -* [#1967] Silence Bluebird js warnings ([@krisr]) - -[#1945]: https://github.com/mochajs/mocha/pull/1945 -[#2056]: https://github.com/mochajs/mocha/pull/2056 -[#2048]: https://github.com/mochajs/mocha/pull/2048 -[#2033]: https://github.com/mochajs/mocha/pull/2033 -[#2037]: https://github.com/mochajs/mocha/pull/2037 -[#2038]: https://github.com/mochajs/mocha/pull/2038 -[#2028]: https://github.com/mochajs/mocha/pull/2028 -[#1977]: https://github.com/mochajs/mocha/pull/1977 -[#1982]: https://github.com/mochajs/mocha/pull/1982 -[#1976]: https://github.com/mochajs/mocha/pull/1976 -[#1963]: https://github.com/mochajs/mocha/pull/1963 -[#1981]: https://github.com/mochajs/mocha/pull/1981 -[#1993]: https://github.com/mochajs/mocha/pull/1993 -[#1999]: https://github.com/mochajs/mocha/pull/1999 -[#2005]: https://github.com/mochajs/mocha/pull/2005 -[#2021]: https://github.com/mochajs/mocha/pull/2021 -[1965#]: https://github.com/mochajs/mocha/pull/1965 -[#1995]: https://github.com/mochajs/mocha/pull/1995 -[#1967]: https://github.com/mochajs/mocha/pull/1967 -[@ryanshawty]: https://github.com/ryanshawty -[@pra85]: https://github.com/pra85 -[@mislav]: https://github.com/mislav -[@tomhughes]: https://github.com/tomhughes -[@bd82]: https://github.com/bd82 -[@stonelgh]: https://github.com/stonelgh -[@danielstjules]: https://github.com/danielstjules -[@ahamid]: https://github.com/ahamid -[@longlho]: https://github.com/longlho -[@Alaneor]: https://github.com/Alaneor -[@iclanzan]: https://github.com/iclanzan -[@robraux]: https://github.com/robraux -[@Standard8]: https://github.com/Standard8 -[@segrey]: https://github.com/segrey -[@tmont]: https://github.com/tmont -[@jonnyreeves]: https://github.com/jonnyreeves -[@zetaben]: https://github.com/zetaben -[@cowboyd]: https://github.com/cowboyd -[@ianwremmel]: https://github.com/ianwremmel -[@boneskull]: https://github.com/boneskull -[@jgkim]: https://github.com/jgkim -[@krisr]: https://github.com/krisr - -2.3.4 / 2015-11-15 -================== - - * Update debug dependency to 2.2.0 - * remove duplication of mocha.opts on process.argv - * Fix typo in test/reporters/nyan.js - -2.3.3 / 2015-09-19 -================== - - * [#1875] - Fix Markdown reporter exceeds maximum call stack size ([@danielstjules]) - * [#1864] - Fix xunit missing output with --reporter-options output ([@danielstjules]) - * [#1846] - Support all harmony flags ([@danielstjules]) - * Fix fragile xunit reporter spec ([@danielstjules]) - * [#1669] - Fix catch uncaught errors outside test suite execution ([@danielstjules]) - * [#1868] - Revert jade to support npm < v1.3.7 ([@danielstjules]) - * [#1766] - Don't remove modules/components from stack trace in the browser ([@danielstjules]) - * [#1798] - Fix correctly attribute mutiple done err with hooks ([@danielstjules]) - * Fix use utils.reduce for IE8 compatibility ([@wsw0108]) - * Some linting errors fixed by [@danielstjules] - * Call the inspect() function if message is not set ([@kevinburke]) - -[#1875]: https://github.com/mochajs/mocha/issues/1875 -[#1864]: https://github.com/mochajs/mocha/issues/1864 -[#1846]: https://github.com/mochajs/mocha/issues/1846 -[#1669]: https://github.com/mochajs/mocha/issues/1669 -[#1868]: https://github.com/mochajs/mocha/issues/1868 -[#1766]: https://github.com/mochajs/mocha/issues/1766 -[#1798]: https://github.com/mochajs/mocha/issues/1798 -[@danielstjules]: https://github.com/danielstjules -[@wsw0108]: https://github.com/wsw0108 -[@kevinburke]: https://github.com/kevinburke - -2.3.2 / 2015-09-07 -================== - * [#1868] - Fix compatibility with older versions of NPM ([@boneskull]) - - [#1868]: https://github.com/mochajs/mocha/issues/1868 - -2.3.1 / 2015-09-06 -================== - - * [#1812] - Fix: Bail flag causes before() hooks to be run even after a failure ([@aaroncrows]) - - [#1812]: https://github.com/mochajs/mocha/issues/1812 - [aaroncrows]: https://github.com/aaroncrows - -2.3.0 / 2015-08-30 -================== - - * [#553] - added --allowUncaught option ([@amsul]) - * [#1490] - Allow --async-only to be satisfied by returning a promise ([@jlai]) - * [#1829] - support --max-old-space-size ([@gigadude]) - * [#1811] - upgrade Jade dependency ([@outsideris]) - * [#1769] - Fix async hook error handling ([@ajaykodali]) - * [#1230] - More descriptive beforeEach/afterEach messages ([@duncanbeevers]) - * [#1787] - Scope loading behaviour instead of using early return ([@aryeguy]) - * [#1789] - Fix: html-runner crashing ([@sunesimonsen]) - * [#1749] - Fix maximum call stack error on large amount of tests ([@tinganho]) - * [#1230] - Decorate failed hook titles with test title ([@duncanbeevers]) - * [#1260] - Build using Browserify ([@ndhoule]) - * [#1728] - Don't use `__proto__` ([@ndhoule]) - * [#1781] - Fix hook error tests ([@glenjamin]) - * [#1754] - Allow boolean --reporter-options ([@papandreou]) - * [#1766] - Fix overly aggressive stack suppression ([@moll]) - * [#1752] - Avoid potential infinite loop ([@gsilk]) - * [#1761] - Fix problems running under PhantomJS ([@chromakode]) - * [#1700] - Fix more problems running under PhantomJS ([@jbnicolai]) - * [#1774] - Support escaped spaces in CLI options ([@adamgruber]) - * [#1687] - Fix HTML reporter links with special chars ([@benvinegar]) - * [#1359] - Adopt code style and enforce it using ESLint ([@ndhoule] w/ assist from [@jbnicolai] & [@boneskull]) - * various refactors ([@jbnicolai]) - * [#1758] - Add cross-frame compatible Error checking ([@outdooricon]) - * [#1741] - Remove moot `version` property from bower.json ([@kkirsche]) - * [#1739] - Improve `HISTORY.md` ([@rstacruz]) - * [#1730] - Support more io.js flags ([@ryedog]) - * [#1349] - Allow HTML in HTML reporter errors ([@papandreou] / [@sunesimonsen]) - * [#1572] - Prevent default browser behavior for failure/pass links ([@jschilli]) - * [#1630] - Support underscored harmony flags ([@dominicbarnes]) - * [#1718] - Support more harmony flags ([@slyg]) - * [#1689] - Add stack to JSON-stream reporter ([@jonathandelgado]) - * [#1654] - Fix `ReferenceError` "location is not defined" ([@jakemmarsh]) - - [#553]: https://github.com/mochajs/mocha/issues/553 - [#1490]: https://github.com/mochajs/mocha/issues/1490 - [#1829]: https://github.com/mochajs/mocha/issues/1829 - [#1811]: https://github.com/mochajs/mocha/issues/1811 - [#1769]: https://github.com/mochajs/mocha/issues/1769 - [#1230]: https://github.com/mochajs/mocha/issues/1230 - [#1787]: https://github.com/mochajs/mocha/issues/1787 - [#1789]: https://github.com/mochajs/mocha/issues/1789 - [#1749]: https://github.com/mochajs/mocha/issues/1749 - [#1230]: https://github.com/mochajs/mocha/issues/1230 - [#1260]: https://github.com/mochajs/mocha/issues/1260 - [#1728]: https://github.com/mochajs/mocha/issues/1728 - [#1781]: https://github.com/mochajs/mocha/issues/1781 - [#1754]: https://github.com/mochajs/mocha/issues/1754 - [#1766]: https://github.com/mochajs/mocha/issues/1766 - [#1752]: https://github.com/mochajs/mocha/issues/1752 - [#1761]: https://github.com/mochajs/mocha/issues/1761 - [#1700]: https://github.com/mochajs/mocha/issues/1700 - [#1774]: https://github.com/mochajs/mocha/issues/1774 - [#1687]: https://github.com/mochajs/mocha/issues/1687 - [#1359]: https://github.com/mochajs/mocha/issues/1359 - [#1758]: https://github.com/mochajs/mocha/issues/1758 - [#1741]: https://github.com/mochajs/mocha/issues/1741 - [#1739]: https://github.com/mochajs/mocha/issues/1739 - [#1730]: https://github.com/mochajs/mocha/issues/1730 - [#1349]: https://github.com/mochajs/mocha/issues/1349 - [#1572]: https://github.com/mochajs/mocha/issues/1572 - [#1630]: https://github.com/mochajs/mocha/issues/1630 - [#1718]: https://github.com/mochajs/mocha/issues/1718 - [#1689]: https://github.com/mochajs/mocha/issues/1689 - [#1654]: https://github.com/mochajs/mocha/issues/1654 - [@adamgruber]: https://github.com/adamgruber - [@ajaykodali]: https://github.com/ajaykodali - [@amsul]: https://github.com/amsul - [@aryeguy]: https://github.com/aryeguy - [@benvinegar]: https://github.com/benvinegar - [@boneskull]: https://github.com/boneskull - [@chromakode]: https://github.com/chromakode - [@dominicbarnes]: https://github.com/dominicbarnes - [@duncanbeevers]: https://github.com/duncanbeevers - [@gigadude]: https://github.com/gigadude - [@glenjamin]: https://github.com/glenjamin - [@gsilk]: https://github.com/gsilk - [@jakemmarsh]: https://github.com/jakemmarsh - [@jbnicolai]: https://github.com/jbnicolai - [@jlai]: https://github.com/jlai - [@jonathandelgado]: https://github.com/jonathandelgado - [@jschilli]: https://github.com/jschilli - [@kkirsche]: https://github.com/kkirsche - [@moll]: https://github.com/moll - [@ndhoule]: https://github.com/ndhoule - [@outdooricon]: https://github.com/outdooricon - [@outsideris]: https://github.com/outsideris - [@papandreou]: https://github.com/papandreou - [@rstacruz]: https://github.com/rstacruz - [@ryedog]: https://github.com/ryedog - [@slyg]: https://github.com/slyg - [@sunesimonsen]: https://github.com/sunesimonsen - [@tinganho]: https://github.com/tinganho - -2.2.5 / 2015-05-14 -================== - - * [#1699] - Upgrade jsdiff to v1.4.0 ([@nylen]) - * [#1648] - fix diff background colors in the console ([@nylen]) - * [#1327] - fix tests running twice, a regression issue. ([#1686], [@danielstjules]) - * [#1675] - add integration tests ([@danielstjules]) - * [#1682] - use a valid SPDX license identifier in package.json ([@kemitchell]) - * [#1660] - fix assertion of invalid dates ([#1661], [@a8m]) - * [#1241] - fix issue with multiline diffs appearing as single line ([#1655], [@a8m]) - -[#1699]: https://github.com/mochajs/mocha/issues/1699 -[#1648]: https://github.com/mochajs/mocha/issues/1648 -[#1327]: https://github.com/mochajs/mocha/issues/1327 -[#1686]: https://github.com/mochajs/mocha/issues/1686 -[#1675]: https://github.com/mochajs/mocha/issues/1675 -[#1682]: https://github.com/mochajs/mocha/issues/1682 -[#1660]: https://github.com/mochajs/mocha/issues/1660 -[#1661]: https://github.com/mochajs/mocha/issues/1661 -[#1241]: https://github.com/mochajs/mocha/issues/1241 -[#1655]: https://github.com/mochajs/mocha/issues/1655 -[@nylen]: https://github.com/nylen -[@danielstjules]: https://github.com/danielstjules -[@kemitchell]: https://github.com/kemitchell -[@a8m]: https://github.com/a8m - -2.2.4 / 2015-04-08 -================== - - * Load mocha.opts in _mocha for now (close #1645) - -2.2.3 / 2015-04-07 -================== - - * fix(reporter/base): string diff - issue #1241 - * fix(reporter/base): string diff - issue #1241 - * fix(reporter/base): don't show diffs for errors without expectation - * fix(reporter/base): don't assume error message is first line of stack - * improve: dry up reporter/base test - * fix(reporter/base): explicitly ignore showDiff #1614 - * Add iojs to travis build - * Pass `--allow-natives-syntax` flag to node. - * Support --harmony_classes flag for io.js - * Fix 1556: Update utils.clean to handle newlines in func declarations - * Fix 1606: fix err handling in IE <= 8 and non-ES5 browsers - * Fix 1585: make _mocha executable again - * chore(package.json): add a8m as a contributor - * Fixed broken link on html-cov reporter - * support --es_staging flag - * fix issue where menu overlaps content. - * update contributors in package.json - * Remove trailing whitespace from reporter output - * Remove contributors list from readme - * log third-party reporter errors - * [Fix] Exclude not own properties when looping on options - * fix: support node args in mocha.opts (close #1573) - * fix(reporter/base): string diff - issue #1241 - -2.2.1 / 2015-03-09 -================== - - * Fix passing of args intended for node/iojs. - -2.2.0 / 2015-03-06 -================== - - * Update mocha.js - * Add --fgrep. Use grep for RegExp, fgrep for str - * Ignore async global errors after spec resolution - * Fixing errors that prevent mocha.js from loading in the browser - fixes #1558 - * fix(utils): issue #1558 + make - * add ability to delay root suite; closes #362, closes #1124 - * fix insanity in http tests - * update travis: add node 0.12, add gitter, remove slack - * building - * resolve #1548: ensure the environment's "node" executable is used - * reporters/base: use supports-color to detect colorable term - * travis: use docker containers - * small fix: commander option for --expose-gc - * Ignore asynchronous errors after global failure - * Improve error output when a test fails with a non-error - * updated travis badge, uses svg instead of img - * Allow skip from test context for #332 - * [JSHINT] Unnecessary semicolon fixed in bin/_mocha - * Added a reminder about the done() callback to test timeout error messages - * fixes #1496, in Mocha.run(fn), check if fn exists before executing it, added tests too - * Add Harmony Proxy flag for iojs - * test(utils|ms|*): test existing units - * add support for some iojs flags - * fix(utils.stringify): issue #1229, diff viewer - * Remove slack link - * Prevent multiple 'grep=' querystring params in html reporter - * Use grep as regexp (close #1381) - * utils.stringify should handle objects without an Object prototype - * in runnable test, comparing to undefined error's message rather than a literal - * Fix test running output truncation on async STDIO - * ammended for deprecated customFds option in child_process - -2.1.0 / 2014-12-23 -================== - - * showDiff: don’t stringify strings - * Clean up unused module dependencies. - * Filter zero-length strings from mocha.opts - * only write to stdout in reporters - * Revert "only write to stdout in reporters" - * Print colored output only to a tty - * update summary in README.md - * rename Readme.md/History.md to README.md/HISTORY.md because neurotic - * add .mailmap to fix "git shortlog" or "git summary" output - * fixes #1461: nyan-reporter now respects Base.useColors, fixed bug where Base.color would not return a string when str wasn't a string. - * Use existing test URL builder in failed replay links - * modify .travis.yml: use travis_retry; closes #1449 - * fix -t 0 behavior; closes #1446 - * fix tests (whoops) - * improve diff behavior - * Preserve pathname when linking to individual tests - * Fix test - * Tiny typo in comments fixed - * after hooks now being called on failed tests when using bail, fixes #1093 - * fix throwing undefined/null now makes tests fail, fixes #1395 - * compiler extensions are added as watched extensions, removed non-standard extensions from watch regex, resolves #1221 - * prefix/namespace for suite titles in markdown reporter, fixes #554 - * fix more bad markdown in CONTRIBUTING.md - * fix bad markdown in CONTRIBUTING.md - * add setImmediate/clearImmediate to globals; closes #1435 - * Fix buffer diffs (closes #1132, closes #1433) - * add a CONTRIBUTING.md. closes #882 - * fix intermittent build failures (maybe). closes #1407 - * add Slack notification to .travis.yml - * Fix slack link - * Add slack room to readme - * Update maintainers - * update maintainers and contributors - * resolves #1393: kill children with more effort on SIGINT - * xunit reporter support for optionally writing to a file - * if a reporter has a .done method, call it before exiting - * add support for reporter options - * only write to stdout in reporters - -2.0.0 / 2014-10-21 -================== - - * remove: support for node 0.6.x, 0.4.x - * fix: landing reporter with non ansi characters (#211) - * fix: html reporter - preserve query params when navigating to suites/tests (#1358) - * fix: json stream reporter add error message to failed test - * fix: fixes for visionmedia -> mochajs - * fix: use stdio, fixes node deprecation warnings (#1391) - -1.21.5 / 2014-10-11 -================== - - * fix: build for NodeJS v0.6.x - * fix: do not attempt to highlight syntax when non-HTML reporter is used - * update: escape-string-regexp to 1.0.2. - * fix: botched indentation in canonicalize() - * fix: .gitignore: ignore .patch and .diff files - * fix: changed 'Catched' to 'Caught' in uncaught exception error handler messages - * add: `pending` field for json reporter - * fix: Runner.prototype.uncaught: don't double-end runnables that already have a state. - * fix: --recursive, broken by f0facd2e - * update: replaces escapeRegexp with the escape-string-regexp package. - * update: commander to 2.3.0. - * update: diff to 1.0.8. - * fix: ability to disable syntax highlighting (#1329) - * fix: added empty object to errorJSON() call to catch when no error is present - * fix: never time out after calling enableTimeouts(false) - * fix: timeout(0) will work at suite level (#1300) - * Fix for --watch+only() issue (#888 ) - * fix: respect err.showDiff, add Base reporter test (#810) - -1.22.1-3 / 2014-07-27 -================== - - * fix: disabling timeouts with this.timeout(0) (#1301) - -1.22.1-3 / 2014-07-27 -================== - - * fix: local uis and reporters (#1288) - * fix: building 1.21.0's changes in the browser (#1284) - -1.21.0 / 2014-07-23 -================== - - * add: --no-timeouts option (#1262, #1268) - * add: --*- deprecation node flags (#1217) - * add: --watch-extensions argument (#1247) - * change: spec reporter is default (#1228) - * fix: diff output showing incorrect +/- (#1182) - * fix: diffs of circular structures (#1179) - * fix: re-render the progress bar when progress has changed only (#1151) - * fix support for environments with global and window (#1159) - * fix: reverting to previously defined onerror handler (#1178) - * fix: stringify non error objects passed to done() (#1270) - * fix: using local ui, reporters (#1267) - * fix: cleaning es6 arrows (#1176) - * fix: don't include attrs in failure tag for xunit (#1244) - * fix: fail tests that return a promise if promise is rejected w/o a reason (#1224) - * fix: showing failed tests in doc reporter (#1117) - * fix: dot reporter dots being off (#1204) - * fix: catch empty throws (#1219) - * fix: honoring timeout for sync operations (#1242) - * update: growl to 1.8.0 - -1.20.1 / 2014-06-03 -================== - - * update: should dev dependency to ~4.0.0 (#1231) - -1.20.0 / 2014-05-28 -================== - - * add: filenames to suite objects (#1222) - -1.19.0 / 2014-05-17 -================== - - * add: browser script option to package.json - * add: export file in Mocha.Test objects (#1174) - * add: add docs for wrapped node flags - * fix: mocha.run() to return error status in browser (#1216) - * fix: clean() to show failure details (#1205) - * fix: regex that generates html for new keyword (#1201) - * fix: sibling suites have inherited but separate contexts (#1164) - - -1.18.2 / 2014-03-18 -================== - - * fix: html runner was prevented from using #mocha as the default root el (#1162) - -1.18.1 / 2014-03-18 -================== - - * fix: named before/after hooks in bdd, tdd, qunit interfaces (#1161) - -1.18.0 / 2014-03-13 -================== - - * add: promise support (#329) - * add: named before/after hooks (#966) - -1.17.1 / 2014-01-22 -================== - - * fix: expected messages in should.js (should.js#168) - * fix: expect errno global in node versions < v0.9.11 (#1111) - * fix: unreliable checkGlobals optimization (#1110) - -1.17.0 / 2014-01-09 -================== - - * add: able to require globals (describe, it, etc.) through mocha (#1077) - * fix: abort previous run on --watch change (#1100) - * fix: reset context for each --watch triggered run (#1099) - * fix: error when cli can't resolve path or pattern (#799) - * fix: canonicalize objects before stringifying and diffing them (#1079) - * fix: make CR call behave like carriage return for non tty (#1087) - - -1.16.2 / 2013-12-23 -================== - - * fix: couple issues with ie 8 (#1082, #1081) - * fix: issue running the xunit reporter in browsers (#1068) - * fix: issue with firefox < 3.5 (#725) - - -1.16.1 / 2013-12-19 -================== - - * fix: recompiled for missed changes from the last release - - -1.16.0 / 2013-12-19 -================== - - * add: Runnable.globals(arr) for per test global whitelist (#1046) - * add: mocha.throwError(err) for assertion libs to call (#985) - * remove: --watch's spinner (#806) - * fix: duplicate test output for multi-line specs in spec reporter (#1006) - * fix: gracefully exit on SIGINT (#1063) - * fix expose the specified ui only in the browser (#984) - * fix: ensure process exit code is preserved when using --no-exit (#1059) - * fix: return true from window.onerror handler (#868) - * fix: xunit reporter to use process.stdout.write (#1068) - * fix: utils.clean(str) indentation (#761) - * fix: xunit reporter returning test duration a NaN (#1039) - -1.15.1 / 2013-12-03 -================== - - * fix: recompiled for missed changes from the last release - -1.15.0 / 2013-12-02 -================== - - * add: `--no-exit` to prevent `process.exit()` (#1018) - * fix: using inline diffs (#1044) - * fix: show pending test details in xunit reporter (#1051) - * fix: faster global leak detection (#1024) - * fix: yui compression (#1035) - * fix: wrapping long lines in test results (#1030, #1031) - * fix: handle errors in hooks (#1043) - -1.14.0 / 2013-11-02 -================== - - * add: unified diff (#862) - * add: set MOCHA_COLORS env var to use colors (#965) - * add: able to override tests links in html reporters (#776) - * remove: teamcity reporter (#954) - * update: commander dependency to 2.0.0 (#1010) - * fix: mocha --ui will try to require the ui if not built in, as --reporter does (#1022) - * fix: send cursor commands only if isatty (#184, #1003) - * fix: include assertion message in base reporter (#993, #991) - * fix: consistent return of it, it.only, and describe, describe.only (#840) - -1.13.0 / 2013-09-15 -================== - - * add: sort test files with --sort (#813) - * update: diff depedency to 1.0.7 - * update: glob dependency to 3.2.3 (#927) - * fix: diffs show whitespace differences (#976) - * fix: improve global leaks (#783) - * fix: firefox window.getInterface leak - * fix: accessing iframe via window[iframeIndex] leak - * fix: faster global leak checking - * fix: reporter pending css selector (#970) - -1.12.1 / 2013-08-29 -================== - - * remove test.js from .gitignore - * update included version of ms.js - -1.12.0 / 2013-07-01 -================== - - * add: prevent diffs for differing types. Closes #900 - * add `Mocha.process` hack for phantomjs - * fix: use compilers with requires - * fix regexps in diffs. Closes #890 - * fix xunit NaN on failure. Closes #894 - * fix: strip tab indentation in `clean` utility method - * fix: textmate bundle installation - -1.11.0 / 2013-06-12 -================== - - * add --prof support - * add --harmony support - * add --harmony-generators support - * add "Uncaught " prefix to uncaught exceptions - * add web workers support - * add `suite.skip()` - * change to output # of pending / passing even on failures. Closes #872 - * fix: prevent hooks from being called if we are bailing - * fix `this.timeout(0)` - -1.10.0 / 2013-05-21 -================== - - * add add better globbing support for windows via `glob` module - * add support to pass through flags such as --debug-brk=1234. Closes #852 - * add test.only, test.skip to qunit interface - * change to always use word-based diffs for now. Closes #733 - * change `mocha init` tests.html to index.html - * fix `process` global leak in the browser - * fix: use resolve() instead of join() for --require - * fix: filterLeaks() condition to not consider indices in global object as leaks - * fix: restrict mocha.css styling to #mocha id - * fix: save timer references to avoid Sinon interfering in the browser build. - -1.9.0 / 2013-04-03 -================== - - * add improved setImmediate implementation - * replace --ignore-leaks with --check-leaks - * change default of ignoreLeaks to true. Closes #791 - * remove scrolling for HTML reporter - * fix retina support - * fix tmbundle, restrict to js scope - -1.8.2 / 2013-03-11 -================== - - * add `setImmediate` support for 0.10.x - * fix mocha -w spinner on windows - -1.8.1 / 2013-01-09 -================== - - * fix .bail() arity check causing it to default to true - -1.8.0 / 2013-01-08 -================== - - * add Mocha() options bail support - * add `Mocha#bail()` method - * add instanceof check back for inheriting from Error - * add component.json - * add diff.js to browser build - * update growl - * fix TAP reporter failures comment :D - -1.7.4 / 2012-12-06 -================== - - * add total number of passes and failures to TAP - * remove .bind() calls. re #680 - * fix indexOf. Closes #680 - -1.7.3 / 2012-11-30 -================== - - * fix uncaught error support for the browser - * revert uncaught "fix" which breaks node - -1.7.2 / 2012-11-28 -================== - - * fix uncaught errors to expose the original error message - -1.7.0 / 2012-11-07 -================== - - * add `--async-only` support to prevent false positives for missing `done()` - * add sorting by filename in code coverage - * add HTML 5 doctype to browser template. - * add play button to html reporter to rerun a single test - * add `this.timeout(ms)` as Suite#timeout(ms). Closes #599 - * update growl dependency to 1.6.x - * fix encoding of test-case ?grep. Closes #637 - * fix unicode chars on windows - * fix dom globals in Opera/IE. Closes #243 - * fix markdown reporter a tags - * fix `this.timeout("5s")` support - -1.6.0 / 2012-10-02 -================== - - * add object diffs when `err.showDiff` is present - * add hiding of empty suites when pass/failures are toggled - * add faster `.length` checks to `checkGlobals()` before performing the filter - -1.5.0 / 2012-09-21 -================== - - * add `ms()` to `.slow()` and `.timeout()` - * add `Mocha#checkLeaks()` to re-enable global leak checks - * add `this.slow()` option [aheckmann] - * add tab, CR, LF to error diffs for now - * add faster `.checkGlobals()` solution [guille] - * remove `fn.call()` from reduce util - * remove `fn.call()` from filter util - * fix forEach. Closes #582 - * fix relaying of signals [TooTallNate] - * fix TAP reporter grep number - -1.4.2 / 2012-09-01 -================== - - * add support to multiple `Mocha#globals()` calls, and strings - * add `mocha.reporter()` constructor support [jfirebaugh] - * add `mocha.timeout()` - * move query-string parser to utils.js - * move highlight code to utils.js - * fix third-party reporter support [exogen] - * fix client-side API to match node-side [jfirebaugh] - * fix mocha in iframe [joliss] - -1.4.1 / 2012-08-28 -================== - - * add missing `Markdown` export - * fix `Mocha#grep()`, escape regexp strings - * fix reference error when `devicePixelRatio` is not defined. Closes #549 - -1.4.0 / 2012-08-22 -================== - - * add mkdir -p to `mocha init`. Closes #539 - * add `.only()`. Closes #524 - * add `.skip()`. Closes #524 - * change str.trim() to use utils.trim(). Closes #533 - * fix HTML progress indicator retina display - * fix url-encoding of click-to-grep HTML functionality - -1.3.2 / 2012-08-01 -================== - - * fix exports double-execution regression. Closes #531 - -1.3.1 / 2012-08-01 -================== - - * add passes/failures toggling to HTML reporter - * add pending state to `xit()` and `xdescribe()` [Brian Moore] - * add the @charset "UTF-8"; to fix #522 with FireFox. [Jonathan Creamer] - * add border-bottom to #stats links - * add check for runnable in `Runner#uncaught()`. Closes #494 - * add 0.4 and 0.6 back to travis.yml - * add `-E, --growl-errors` to growl on failures only - * add prefixes to debug() names. Closes #497 - * add `Mocha#invert()` to js api - * change dot reporter to use sexy unicode dots - * fix error when clicking pending test in HTML reporter - * fix `make tm` - -1.3.0 / 2012-07-05 -================== - - * add window scrolling to `HTML` reporter - * add v8 `--trace-*` option support - * add support for custom reports via `--reporter MODULE` - * add `--invert` switch to invert `--grep` matches - * fix export of `Nyan` reporter. Closes #495 - * fix escaping of `HTML` suite titles. Closes #486 - * fix `done()` called multiple times with an error test - * change `--grep` - regexp escape the input - -1.2.2 / 2012-06-28 -================== - - * Added 0.8.0 support - -1.2.1 / 2012-06-25 -================== - - * Added `this.test.error(err)` support to after each hooks. Closes #287 - * Added: export top-level suite on global mocha object (mocha.suite). Closes #448 - * Fixed `js` code block format error in markdown reporter - * Fixed deprecation warning when using `path.existsSync` - * Fixed --globals with wildcard - * Fixed chars in nyan when his head moves back - * Remove `--growl` from test/mocha.opts. Closes #289 - -1.2.0 / 2012-06-17 -================== - - * Added `nyan` reporter [Atsuya Takagi] - * Added `mocha init ` to copy client files - * Added "specify" synonym for "it" [domenic] - * Added global leak wildcard support [nathanbowser] - * Fixed runner emitter leak. closes #432 - * Fixed omission of .js extension. Closes #454 - -1.1.0 / 2012-05-30 -================== - - * Added: check each `mocha(1)` arg for directories to walk - * Added `--recursive` [tricknotes] - * Added `context` for BDD [hokaccha] - * Added styling for new clickable titles - * Added clickable suite titles to HTML reporter - * Added warning when strings are thrown as errors - * Changed: green arrows again in HTML reporter styling - * Changed ul/li elements instead of divs for better copy-and-pasting [joliss] - * Fixed issue #325 - add better grep support to js api - * Fixed: save timer references to avoid Sinon interfering. - -1.0.3 / 2012-04-30 -================== - - * Fixed string diff newlines - * Fixed: removed mocha.css target. Closes #401 - -1.0.2 / 2012-04-25 -================== - - * Added HTML reporter duration. Closes #47 - * Fixed: one postMessage event listener [exogen] - * Fixed: allow --globals to be used multiple times. Closes #100 [brendannee] - * Fixed #158: removes jquery include from browser tests - * Fixed grep. Closes #372 [brendannee] - * Fixed #166 - When grepping don't display the empty suites - * Removed test/browser/style.css. Closes #385 - -1.0.1 / 2012-04-04 -================== - - * Fixed `.timeout()` in hooks - * Fixed: allow callback for `mocha.run()` in client version - * Fixed browser hook error display. Closes #361 - -1.0.0 / 2012-03-24 -================== - - * Added js API. Closes #265 - * Added: initial run of tests with `--watch`. Closes #345 - * Added: mark `location` as a global on the CS. Closes #311 - * Added `markdown` reporter (github flavour) - * Added: scrolling menu to coverage.html. Closes #335 - * Added source line to html report for Safari [Tyson Tate] - * Added "min" reporter, useful for `--watch` [Jakub Nešetřil] - * Added support for arbitrary compilers via . Closes #338 [Ian Young] - * Added Teamcity export to lib/reporters/index [Michael Riley] - * Fixed chopping of first char in error reporting. Closes #334 [reported by topfunky] - * Fixed terrible FF / Opera stack traces - -0.14.1 / 2012-03-06 -================== - - * Added lib-cov to _.npmignore_ - * Added reporter to `mocha.run([reporter])` as argument - * Added some margin-top to the HTML reporter - * Removed jQuery dependency - * Fixed `--watch`: purge require cache. Closes #266 - -0.14.0 / 2012-03-01 -================== - - * Added string diff support for terminal reporters - -0.13.0 / 2012-02-23 -================== - - * Added preliminary test coverage support. Closes #5 - * Added `HTMLCov` reporter - * Added `JSONCov` reporter [kunklejr] - * Added `xdescribe()` and `xit()` to the BDD interface. Closes #263 (docs * Changed: make json reporter output pretty json - * Fixed node-inspector support, swapped `--debug` for `debug` to match node. -needed) -Closes #247 - -0.12.1 / 2012-02-14 -================== - - * Added `npm docs mocha` support [TooTallNate] - * Added a `Context` object used for hook and test-case this. Closes #253 - * Fixed `Suite#clone()` `.ctx` reference. Closes #262 - -0.12.0 / 2012-02-02 -================== - - * Added .coffee `--watch` support. Closes #242 - * Added support to `--require` files relative to the CWD. Closes #241 - * Added quick n dirty syntax highlighting. Closes #248 - * Changed: made HTML progress indicator smaller - * Fixed xunit errors attribute [dhendo] - -0.10.2 / 2012-01-21 -================== - - * Fixed suite count in reporter stats. Closes #222 - * Fixed `done()` after timeout error reporting [Phil Sung] - * Changed the 0-based errors to 1 - -0.10.1 / 2012-01-17 -================== - - * Added support for node 0.7.x - * Fixed absolute path support. Closes #215 [kompiro] - * Fixed `--no-colors` option [Jussi Virtanen] - * Fixed Arial CSS typo in the correct file - -0.10.0 / 2012-01-13 -================== - - * Added `-b, --bail` to exit on first exception [guillermo] - * Added support for `-gc` / `--expose-gc` [TooTallNate] - * Added `qunit`-inspired interface - * Added MIT LICENSE. Closes #194 - * Added: `--watch` all .js in the CWD. Closes #139 - * Fixed `self.test` reference in runner. Closes #189 - * Fixed double reporting of uncaught exceptions after timeout. Closes #195 - -0.8.2 / 2012-01-05 -================== - - * Added test-case context support. Closes #113 - * Fixed exit status. Closes #187 - * Update commander. Closes #190 - -0.8.1 / 2011-12-30 -================== +This has been awhile coming! We needed to feel confident that the next release wouldn't break browser compatibility (e.g. the last few patch releases). + +## Browser Tests in CI + +We now run unit tests against PhantomJS v1.x and an assortment of browsers on [SauceLabs](https://saucelabs.com), including: + +- Internet Explorer v8.0 +- Chrome (latest) +- Firefox (latest) +- Safari (latest) +- Microsoft Edge (latest) + +To accomplish this, we now run Mocha's unit tests (and a handful of integration tests) via [Karma](https://npmjs.com/package/karma) and a modified [karma-mocha](https://npmjs.com/package/karma-mocha). Along the way, we had to solve issue [#880](https://github.com/mochajs/mocha/issues/880) (apologies to [**@mderijcke**](https://github.com/mderijcke) and [**@sukima**](https://github.com/sukima) who had PRs addressing this), as well as replace most usages of [should](https://npmjs.com/package/should) with [expect.js](https://npmjs.com/package/expect.js) for IE8. + +Going forward, when sending PRs, your code will _only_ run against PhantomJS v1.x (and not hit SauceLabs) [because security](https://docs.travis-ci.com/user/pull-requests/#Security-Restrictions-when-testing-Pull-Requests). + +## Node.js 6.x + +Node.js 6.x "just worked" before, but now it's in the CI matrix, so it's "officially" supported. Mocha _still retains support_ for Node.js 0.8.x. + +## "Minor" Release + +You'll see mostly bug fixes below, but also a couple features--as such, it's a "minor" release. + +## TYVM + +Thanks to everyone who contributed, and our fabulous [sponsors and backers](https://opencollective.com/mochajs)! + +- [#2079](https://github.com/mochajs/mocha/issues/2079) - Add browser checks to CI; update [browserify](https://npmjs.com/package/browserify) to v13.0.0 ([@dasilvacontin](https://github.com/dasilvacontin), [@ScottFreeCode](https://github.com/ScottFreeCode), [@boneskull](https://github.com/boneskull) via [`c04c1d7`](https://github.com/mochajs/mocha/commit/c04c1d7), [`0b1e9b3`](https://github.com/mochajs/mocha/commit/0b1e9b3), [`0dde0fa`](https://github.com/mochajs/mocha/commit/0dde0fa), [`f8a3d86`](https://github.com/mochajs/mocha/commit/f8a3d86), [`9e8cbaa`](https://github.com/mochajs/mocha/commit/9e8cbaa)) +- [#880](https://github.com/mochajs/mocha/issues/880) - Make Mocha browserifyable ([@boneskull](https://github.com/boneskull) via [`524862b`](https://github.com/mochajs/mocha/commit/524862b)) +- [#2121](https://github.com/mochajs/mocha/issues/2121) - Update [glob](https://npmjs.com/package/glob) to v3.2.11 ([@astorije](https://github.com/astorije) via [`7920fc4`](https://github.com/mochajs/mocha/commit/7920fc4)) +- [#2126](https://github.com/mochajs/mocha/issues/2126) - Fix dupe error messages in stack trace filter ([@Turbo87](https://github.com/Turbo87) via [`4301caa`](https://github.com/mochajs/mocha/commit/4301caa)) +- [#2109](https://github.com/mochajs/mocha/issues/2109) - Fix certain diffs when objects cannot be coerced into primitives ([@joshlory](https://github.com/joshlory) via [`61fbb7f`](https://github.com/mochajs/mocha/commit/61fbb7f)) +- [#1827](https://github.com/mochajs/mocha/pull/1827) - Fix TWBS/`mocha.css` collisions ([@irnc](https://github.com/irnc) via [`0543798`](https://github.com/mochajs/mocha/commit/0543798)) +- [#1760](https://github.com/mochajs/mocha/issues/1760), [#1936](https://github.com/mochajs/mocha/issues/1936) - Fix `this.skip()` in HTML reporter ([@mislav](https://github.com/mislav) via [`cb4248b`](https://github.com/mochajs/mocha/commit/cb4248b)) +- [#2115](https://github.com/mochajs/mocha/pull/2115) - Fix exceptions thrown from hooks in HTML reporter ([@danielstjules](https://github.com/danielstjules) via [`e290bc0`](https://github.com/mochajs/mocha/commit/e290bc0)) +- [#2089](https://github.com/mochajs/mocha/issues/2089) - Handle Symbol values in `util.stringify()` ([@ryym](https://github.com/ryym) via [`ea61d05`](https://github.com/mochajs/mocha/commit/ea61d05)) +- [#2097](https://github.com/mochajs/mocha/pull/2097) - Fix diff for objects overriding `Object.prototype.hasOwnProperty` ([@mantoni](https://github.com/mantoni) via [`b20fdfe`](https://github.com/mochajs/mocha/commit/b20fdfe)) +- [#2101](https://github.com/mochajs/mocha/pull/2101) - Properly handle non-string "messages" thrown from assertion libraries ([@jkimbo](https://github.com/jkimbo) via [`9c41051`](https://github.com/mochajs/mocha/commit/9c41051)) +- [#2124](https://github.com/mochajs/mocha/pull/2124) - Update [growl](https://npmjs.com/package/growl) ([@benjamine](https://github.com/benjamine) via [`9ae6a85`](https://github.com/mochajs/mocha/commit/9ae6a85)) +- [#2162](https://github.com/mochajs/mocha/pull/2162), [#2205](https://github.com/mochajs/mocha/pull/2205) - JSDoc fixes ([@OlegTsyba](https://github.com/OlegTsyba) via [`8031f20`](https://github.com/mochajs/mocha/commit/8031f20), [@ScottFreeCode](https://github.com/ScottFreeCode) via [`f83b1d9`](https://github.com/mochajs/mocha/commit/f83b1d9)) +- [#2132](https://github.com/mochajs/mocha/issues/2132) - Remove Growl-related cruft ([@julienw](https://github.com/julienw) via [`00d6469`](https://github.com/mochajs/mocha/commit/00d6469)) +- [#2172](https://github.com/mochajs/mocha/pull/2172) - Add [OpenCollective](https://opencollective.com) badge, sponsors & backers ([@xdamman](https://github.com/xdamman), [@boneskull](https://github.com/boneskull) via [`caee94f`](https://github.com/mochajs/mocha/commit/caee94f)) +- [#1841](https://github.com/mochajs/mocha/pull/1841) - Add new logo, banner assets ([@dasilvacontin](https://github.com/dasilvacontin) via [`00fd0e1`](https://github.com/mochajs/mocha/commit/00fd0e1)) +- [#2214](https://github.com/mochajs/mocha/pull/2214) - Update `README.md` header ([@dasilvacontin](https://github.com/dasilvacontin) via [`c0f9be2`](https://github.com/mochajs/mocha/commit/c0f9be2)) +- [#2236](https://github.com/mochajs/mocha/pull/2236) - Better checks for Node.js v0.8 compatibility in CI ([@dasilvacontin](https://github.com/dasilvacontin) via [`ba5637d`](https://github.com/mochajs/mocha/commit/ba5637d)) +- [#2239](https://github.com/mochajs/mocha/issues/2239) - Add Node.js v6.x to CI matrix ([@boneskull](https://github.com/boneskull) via [`3904da4`](https://github.com/mochajs/mocha/commit/3904da4)) + +# 2.4.5 / 2016-01-28 + +- [#2080](https://github.com/mochajs/mocha/issues/2080), [#2078](https://github.com/mochajs/mocha/issues/2078), [#2072](https://github.com/mochajs/mocha/pull/2072), [#2073](https://github.com/mochajs/mocha/pull/2073), [#1200](https://github.com/mochajs/mocha/issues/1200) - Revert changes to console colors in changeset [1192914](https://github.com/mochajs/mocha/commit/119291449cd03a11cdeda9e37cf718a69a012896) and subsequent related changes thereafter. Restores compatibility with IE8 & PhantomJS. See also [mantoni/mochify.js#129](https://github.com/mantoni/mochify.js/issues/129) and [openlayers/ol3#4746](https://github.com/openlayers/ol3/pull/4746) ([@boneskull](https://github.com/boneskull)) +- [#2082](https://github.com/mochajs/mocha/pull/2082) - Fix several test assertions ([@mislav](https://github.com/mislav)) + +# 2.4.4 / 2016-01-27 + +- [#2080](https://github.com/mochajs/mocha/issues/2080) - Fix broken RequireJS compatibility ([@boneskull](https://github.com/boneskull)) + +# 2.4.3 / 2016-01-27 + +- [#2078](https://github.com/mochajs/mocha/issues/2078) - Fix broken IE8 ([@boneskull](https://github.com/boneskull)) + +# 2.4.2 / 2016-01-26 + +- [#2053](https://github.com/mochajs/mocha/pull/2053) - Fix web worker compatibility ([@mislav](https://github.com/mislav)) +- [#2072](https://github.com/mochajs/mocha/pull/2072) - Fix Windows color output ([@thedark1337](https://github.com/thedark1337)) +- [#2073](https://github.com/mochajs/mocha/pull/2073) - Fix colors in `progress` and `landing` reporters ([@gyandeeps](https://github.com/gyandeeps)) + +# 2.4.1 / 2016-01-26 + +- [#2067](https://github.com/mochajs/mocha/pull/2067) - Fix HTML/doc reporter regressions ([@danielstjules](https://github.com/danielstjules)) + +# 2.4.0 / 2016-01-25 + +- [#1945](https://github.com/mochajs/mocha/pull/1945) - Correctly skip tests when skipping in suite's before() ([@ryanshawty](https://github.com/ryanshawty)) +- [#2056](https://github.com/mochajs/mocha/pull/2056) - chore(license): update license year to 2016 ([@pra85](https://github.com/pra85)) +- [#2048](https://github.com/mochajs/mocha/pull/2048) - Fix `this.skip` from spec with HTML reporter ([@mislav](https://github.com/mislav)) +- [#2033](https://github.com/mochajs/mocha/pull/2033) - Update tests for newer versions of should.js ([@tomhughes](https://github.com/tomhughes)) +- [#2037](https://github.com/mochajs/mocha/pull/2037) - Fix for memory leak caused by referenced to deferred test ([@bd82](https://github.com/bd82)) +- [#2038](https://github.com/mochajs/mocha/pull/2038) - Also run Travis-CI on node.js 4 & 5 ([@bd82](https://github.com/bd82)) +- [#2028](https://github.com/mochajs/mocha/pull/2028) - Remove reference to test before afterAll hook runs ([@stonelgh](https://github.com/stonelgh)) +- Bump mkdirp to 0.5.1 to support strict mode ([@danielstjules](https://github.com/danielstjules)) +- [#1977](https://github.com/mochajs/mocha/pull/1977) - safely stringify PhantomJS undefined value ([@ahamid](https://github.com/ahamid)) +- Add the ability to retry tests ([@@longlho]) +- [#1982](https://github.com/mochajs/mocha/pull/1982) - Enable --log-timer-events option [@Alaneor](https://github.com/Alaneor) +- Fix [#1980](https://github.com/mochajs/mocha/issues/1980): Load mocha.opts from bin/mocha and bin/\_mocha ([@danielstjules](https://github.com/danielstjules)) +- [#1976](https://github.com/mochajs/mocha/pull/1976) - Simplify function call ([@iclanzan](https://github.com/iclanzan)) +- [#1963](https://github.com/mochajs/mocha/pull/1963) - Add support --perf-basic-prof ([@robraux](https://github.com/robraux)) +- [#1981](https://github.com/mochajs/mocha/pull/1981) - Fix HTML reporter handling of done and exceptions ([@Standard8](https://github.com/Standard8)) +- [#1993](https://github.com/mochajs/mocha/pull/1993) - propagate "file" property for "exports" interface ([@segrey](https://github.com/segrey)) +- [#1999](https://github.com/mochajs/mocha/pull/1999) - Add support for strict mode ([@tmont](https://github.com/tmont)) +- [#2005](https://github.com/mochajs/mocha/pull/2005) - XUnit Reporter Writes to stdout, falls back to console.log ([@jonnyreeves](https://github.com/jonnyreeves)) +- [#2021](https://github.com/mochajs/mocha/pull/2021) - Fix non ES5 compliant regexp ([@zetaben](https://github.com/zetaben)) +- [#1965] - Don't double install BDD UI ([@cowboyd](https://github.com/cowboyd)) +- [#1995](https://github.com/mochajs/mocha/pull/1995) - Make sure the xunit output dir exists before writing to it ([@ianwremmel](https://github.com/ianwremmel)) +- Use chalk for the base reporter colors; closes [#1200](https://github.com/mochajs/mocha/issues/1200) ([@boneskull](https://github.com/boneskull)) +- Fix requiring custom interfaces ([@jgkim](https://github.com/jgkim)) +- [#1967](https://github.com/mochajs/mocha/pull/1967) Silence Bluebird js warnings ([@krisr](https://github.com/krisr)) + +# 2.3.4 / 2015-11-15 + +- Update debug dependency to 2.2.0 +- remove duplication of mocha.opts on process.argv +- Fix typo in test/reporters/nyan.js + +# 2.3.3 / 2015-09-19 + +- [#1875](https://github.com/mochajs/mocha/issues/1875) - Fix Markdown reporter exceeds maximum call stack size ([@danielstjules](https://github.com/danielstjules)) +- [#1864](https://github.com/mochajs/mocha/issues/1864) - Fix xunit missing output with --reporter-options output ([@danielstjules](https://github.com/danielstjules)) +- [#1846](https://github.com/mochajs/mocha/issues/1846) - Support all harmony flags ([@danielstjules](https://github.com/danielstjules)) +- Fix fragile xunit reporter spec ([@danielstjules](https://github.com/danielstjules)) +- [#1669](https://github.com/mochajs/mocha/issues/1669) - Fix catch uncaught errors outside test suite execution ([@danielstjules](https://github.com/danielstjules)) +- [#1868](https://github.com/mochajs/mocha/issues/1868) - Revert jade to support npm < v1.3.7 ([@danielstjules](https://github.com/danielstjules)) +- [#1766](https://github.com/mochajs/mocha/issues/1766) - Don't remove modules/components from stack trace in the browser ([@danielstjules](https://github.com/danielstjules)) +- [#1798](https://github.com/mochajs/mocha/issues/1798) - Fix correctly attribute mutiple done err with hooks ([@danielstjules](https://github.com/danielstjules)) +- Fix use utils.reduce for IE8 compatibility ([@wsw0108](https://github.com/wsw0108)) +- Some linting errors fixed by [@danielstjules](https://github.com/danielstjules) +- Call the inspect() function if message is not set ([@kevinburke](https://github.com/kevinburke)) + +# 2.3.2 / 2015-09-07 + +- [#1868](https://github.com/mochajs/mocha/issues/1868) - Fix compatibility with older versions of NPM ([@boneskull](https://github.com/boneskull)) + +# 2.3.1 / 2015-09-06 + +- [#1812](https://github.com/mochajs/mocha/issues/1812) - Fix: Bail flag causes before() hooks to be run even after a failure ([@aaroncrows]) + +# 2.3.0 / 2015-08-30 + +- [#553](https://github.com/mochajs/mocha/issues/553) - added --allowUncaught option ([@amsul](https://github.com/amsul)) +- [#1490](https://github.com/mochajs/mocha/issues/1490) - Allow --async-only to be satisfied by returning a promise ([@jlai](https://github.com/jlai)) +- [#1829](https://github.com/mochajs/mocha/issues/1829) - support --max-old-space-size ([@gigadude](https://github.com/gigadude)) +- [#1811](https://github.com/mochajs/mocha/issues/1811) - upgrade Jade dependency ([@outsideris](https://github.com/outsideris)) +- [#1769](https://github.com/mochajs/mocha/issues/1769) - Fix async hook error handling ([@ajaykodali](https://github.com/ajaykodali)) +- [#1230](https://github.com/mochajs/mocha/issues/1230) - More descriptive beforeEach/afterEach messages ([@duncanbeevers](https://github.com/duncanbeevers)) +- [#1787](https://github.com/mochajs/mocha/issues/1787) - Scope loading behaviour instead of using early return ([@aryeguy](https://github.com/aryeguy)) +- [#1789](https://github.com/mochajs/mocha/issues/1789) - Fix: html-runner crashing ([@sunesimonsen](https://github.com/sunesimonsen)) +- [#1749](https://github.com/mochajs/mocha/issues/1749) - Fix maximum call stack error on large amount of tests ([@tinganho](https://github.com/tinganho)) +- [#1230](https://github.com/mochajs/mocha/issues/1230) - Decorate failed hook titles with test title ([@duncanbeevers](https://github.com/duncanbeevers)) +- [#1260](https://github.com/mochajs/mocha/issues/1260) - Build using Browserify ([@ndhoule](https://github.com/ndhoule)) +- [#1728](https://github.com/mochajs/mocha/issues/1728) - Don't use `__proto__` ([@ndhoule](https://github.com/ndhoule)) +- [#1781](https://github.com/mochajs/mocha/issues/1781) - Fix hook error tests ([@glenjamin](https://github.com/glenjamin)) +- [#1754](https://github.com/mochajs/mocha/issues/1754) - Allow boolean --reporter-options ([@papandreou](https://github.com/papandreou)) +- [#1766](https://github.com/mochajs/mocha/issues/1766) - Fix overly aggressive stack suppression ([@moll](https://github.com/moll)) +- [#1752](https://github.com/mochajs/mocha/issues/1752) - Avoid potential infinite loop ([@gsilk](https://github.com/gsilk)) +- [#1761](https://github.com/mochajs/mocha/issues/1761) - Fix problems running under PhantomJS ([@chromakode](https://github.com/chromakode)) +- [#1700](https://github.com/mochajs/mocha/issues/1700) - Fix more problems running under PhantomJS ([@jbnicolai](https://github.com/jbnicolai)) +- [#1774](https://github.com/mochajs/mocha/issues/1774) - Support escaped spaces in CLI options ([@adamgruber](https://github.com/adamgruber)) +- [#1687](https://github.com/mochajs/mocha/issues/1687) - Fix HTML reporter links with special chars ([@benvinegar](https://github.com/benvinegar)) +- [#1359](https://github.com/mochajs/mocha/issues/1359) - Adopt code style and enforce it using ESLint ([@ndhoule](https://github.com/ndhoule) w/ assist from [@jbnicolai](https://github.com/jbnicolai) & [@boneskull](https://github.com/boneskull)) +- various refactors ([@jbnicolai](https://github.com/jbnicolai)) +- [#1758](https://github.com/mochajs/mocha/issues/1758) - Add cross-frame compatible Error checking ([@outdooricon](https://github.com/outdooricon)) +- [#1741](https://github.com/mochajs/mocha/issues/1741) - Remove moot `version` property from bower.json ([@kkirsche](https://github.com/kkirsche)) +- [#1739](https://github.com/mochajs/mocha/issues/1739) - Improve `HISTORY.md` ([@rstacruz](https://github.com/rstacruz)) +- [#1730](https://github.com/mochajs/mocha/issues/1730) - Support more io.js flags ([@ryedog](https://github.com/ryedog)) +- [#1349](https://github.com/mochajs/mocha/issues/1349) - Allow HTML in HTML reporter errors ([@papandreou](https://github.com/papandreou) / [@sunesimonsen](https://github.com/sunesimonsen)) +- [#1572](https://github.com/mochajs/mocha/issues/1572) - Prevent default browser behavior for failure/pass links ([@jschilli](https://github.com/jschilli)) +- [#1630](https://github.com/mochajs/mocha/issues/1630) - Support underscored harmony flags ([@dominicbarnes](https://github.com/dominicbarnes)) +- [#1718](https://github.com/mochajs/mocha/issues/1718) - Support more harmony flags ([@slyg](https://github.com/slyg)) +- [#1689](https://github.com/mochajs/mocha/issues/1689) - Add stack to JSON-stream reporter ([@jonathandelgado](https://github.com/jonathandelgado)) +- [#1654](https://github.com/mochajs/mocha/issues/1654) - Fix `ReferenceError` "location is not defined" ([@jakemmarsh](https://github.com/jakemmarsh)) + +# 2.2.5 / 2015-05-14 + +- [#1699](https://github.com/mochajs/mocha/issues/1699) - Upgrade jsdiff to v1.4.0 ([@nylen](https://github.com/nylen)) +- [#1648](https://github.com/mochajs/mocha/issues/1648) - fix diff background colors in the console ([@nylen](https://github.com/nylen)) +- [#1327](https://github.com/mochajs/mocha/issues/1327) - fix tests running twice, a regression issue. ([#1686](https://github.com/mochajs/mocha/issues/1686), [@danielstjules](https://github.com/danielstjules)) +- [#1675](https://github.com/mochajs/mocha/issues/1675) - add integration tests ([@danielstjules](https://github.com/danielstjules)) +- [#1682](https://github.com/mochajs/mocha/issues/1682) - use a valid SPDX license identifier in package.json ([@kemitchell](https://github.com/kemitchell)) +- [#1660](https://github.com/mochajs/mocha/issues/1660) - fix assertion of invalid dates ([#1661](https://github.com/mochajs/mocha/issues/1661), [@a8m](https://github.com/a8m)) +- [#1241](https://github.com/mochajs/mocha/issues/1241) - fix issue with multiline diffs appearing as single line ([#1655](https://github.com/mochajs/mocha/issues/1655), [@a8m](https://github.com/a8m)) + +# 2.2.4 / 2015-04-08 + +- Load mocha.opts in \_mocha for now (close [#1645](https://github.com/mochajs/mocha/issues/1645)) + +# 2.2.3 / 2015-04-07 + +- fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241) +- fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241) +- fix(reporter/base): don't show diffs for errors without expectation +- fix(reporter/base): don't assume error message is first line of stack +- improve: dry up reporter/base test +- fix(reporter/base): explicitly ignore showDiff [#1614](https://github.com/mochajs/mocha/issues/1614) +- Add iojs to travis build +- Pass `--allow-natives-syntax` flag to node. +- Support --harmony_classes flag for io.js +- Fix 1556: Update utils.clean to handle newlines in func declarations +- Fix 1606: fix err handling in IE <= 8 and non-ES5 browsers +- Fix 1585: make \_mocha executable again +- chore(package.json): add a8m as a contributor +- Fixed broken link on html-cov reporter +- support --es_staging flag +- fix issue where menu overlaps content. +- update contributors in package.json +- Remove trailing whitespace from reporter output +- Remove contributors list from readme +- log third-party reporter errors +- [Fix] Exclude not own properties when looping on options +- fix: support node args in mocha.opts (close [#1573](https://github.com/mochajs/mocha/issues/1573)) +- fix(reporter/base): string diff - issue [#1241](https://github.com/mochajs/mocha/issues/1241) + +# 2.2.1 / 2015-03-09 + +- Fix passing of args intended for node/iojs. + +# 2.2.0 / 2015-03-06 + +- Update mocha.js +- Add --fgrep. Use grep for RegExp, fgrep for str +- Ignore async global errors after spec resolution +- Fixing errors that prevent mocha.js from loading in the browser - fixes [#1558](https://github.com/mochajs/mocha/issues/1558) +- fix(utils): issue [#1558](https://github.com/mochajs/mocha/issues/1558) + make +- add ability to delay root suite; closes [#362](https://github.com/mochajs/mocha/issues/362), closes [#1124](https://github.com/mochajs/mocha/issues/1124) +- fix insanity in http tests +- update travis: add node 0.12, add gitter, remove slack +- building +- resolve [#1548](https://github.com/mochajs/mocha/issues/1548): ensure the environment's "node" executable is used +- reporters/base: use supports-color to detect colorable term +- travis: use docker containers +- small fix: commander option for --expose-gc +- Ignore asynchronous errors after global failure +- Improve error output when a test fails with a non-error +- updated travis badge, uses svg instead of img +- Allow skip from test context for [#332](https://github.com/mochajs/mocha/issues/332) +- [JSHINT] Unnecessary semicolon fixed in bin/\_mocha +- Added a reminder about the done() callback to test timeout error messages +- fixes [#1496](https://github.com/mochajs/mocha/issues/1496), in Mocha.run(fn), check if fn exists before executing it, added tests too +- Add Harmony Proxy flag for iojs +- test(utils|ms|\*): test existing units +- add support for some iojs flags +- fix(utils.stringify): issue [#1229](https://github.com/mochajs/mocha/issues/1229), diff viewer +- Remove slack link +- Prevent multiple 'grep=' querystring params in html reporter +- Use grep as regexp (close [#1381](https://github.com/mochajs/mocha/issues/1381)) +- utils.stringify should handle objects without an Object prototype +- in runnable test, comparing to undefined error's message rather than a literal +- Fix test running output truncation on async STDIO +- amended for deprecated customFds option in child_process + +# 2.1.0 / 2014-12-23 + +- showDiff: don’t stringify strings +- Clean up unused module dependencies. +- Filter zero-length strings from mocha.opts +- only write to stdout in reporters +- Revert "only write to stdout in reporters" +- Print colored output only to a tty +- update summary in README.md +- rename Readme.md/History.md to README.md/HISTORY.md because neurotic +- add .mailmap to fix "git shortlog" or "git summary" output +- fixes [#1461](https://github.com/mochajs/mocha/issues/1461): nyan-reporter now respects Base.useColors, fixed bug where Base.color would not return a string when str wasn't a string. +- Use existing test URL builder in failed replay links +- modify .travis.yml: use travis_retry; closes [#1449](https://github.com/mochajs/mocha/issues/1449) +- fix -t 0 behavior; closes [#1446](https://github.com/mochajs/mocha/issues/1446) +- fix tests (whoops) +- improve diff behavior +- Preserve pathname when linking to individual tests +- Fix test +- Tiny typo in comments fixed +- after hooks now being called on failed tests when using bail, fixes [#1093](https://github.com/mochajs/mocha/issues/1093) +- fix throwing undefined/null now makes tests fail, fixes [#1395](https://github.com/mochajs/mocha/issues/1395) +- compiler extensions are added as watched extensions, removed non-standard extensions from watch regex, resolves [#1221](https://github.com/mochajs/mocha/issues/1221) +- prefix/namespace for suite titles in markdown reporter, fixes [#554](https://github.com/mochajs/mocha/issues/554) +- fix more bad markdown in CONTRIBUTING.md +- fix bad markdown in CONTRIBUTING.md +- add setImmediate/clearImmediate to globals; closes [#1435](https://github.com/mochajs/mocha/issues/1435) +- Fix buffer diffs (closes [#1132](https://github.com/mochajs/mocha/issues/1132), closes [#1433](https://github.com/mochajs/mocha/issues/1433)) +- add a CONTRIBUTING.md. closes [#882](https://github.com/mochajs/mocha/issues/882) +- fix intermittent build failures (maybe). closes [#1407](https://github.com/mochajs/mocha/issues/1407) +- add Slack notification to .travis.yml +- Fix slack link +- Add slack room to readme +- Update maintainers +- update maintainers and contributors +- resolves [#1393](https://github.com/mochajs/mocha/issues/1393): kill children with more effort on SIGINT +- xunit reporter support for optionally writing to a file +- if a reporter has a .done method, call it before exiting +- add support for reporter options +- only write to stdout in reporters + +# 2.0.0 / 2014-10-21 + +- remove: support for node 0.6.x, 0.4.x +- fix: landing reporter with non ansi characters ([#211](https://github.com/mochajs/mocha/issues/211)) +- fix: html reporter - preserve query params when navigating to suites/tests ([#1358](https://github.com/mochajs/mocha/issues/1358)) +- fix: json stream reporter add error message to failed test +- fix: fixes for visionmedia -> mochajs +- fix: use stdio, fixes node deprecation warnings ([#1391](https://github.com/mochajs/mocha/issues/1391)) + +# 1.21.5 / 2014-10-11 + +- fix: build for NodeJS v0.6.x +- fix: do not attempt to highlight syntax when non-HTML reporter is used +- update: escape-string-regexp to 1.0.2. +- fix: botched indentation in canonicalize() +- fix: .gitignore: ignore .patch and .diff files +- fix: changed 'Catched' to 'Caught' in uncaught exception error handler messages +- add: `pending` field for json reporter +- fix: Runner.prototype.uncaught: don't double-end runnables that already have a state. +- fix: --recursive, broken by [`f0facd2`](https://github.com/mochajs/mocha/commit/f0facd2e) +- update: replaces escapeRegexp with the escape-string-regexp package. +- update: commander to 2.3.0. +- update: diff to 1.0.8. +- fix: ability to disable syntax highlighting ([#1329](https://github.com/mochajs/mocha/issues/1329)) +- fix: added empty object to errorJSON() call to catch when no error is present +- fix: never time out after calling enableTimeouts(false) +- fix: timeout(0) will work at suite level ([#1300](https://github.com/mochajs/mocha/issues/1300)) +- Fix for --watch+only() issue ([#888](https://github.com/mochajs/mocha/issues/888) ) +- fix: respect err.showDiff, add Base reporter test ([#810](https://github.com/mochajs/mocha/issues/810)) + +# 1.22.1-3 / 2014-07-27 + +- fix: disabling timeouts with this.timeout(0) ([#1301](https://github.com/mochajs/mocha/issues/1301)) + +# 1.22.1-3 / 2014-07-27 + +- fix: local uis and reporters ([#1288](https://github.com/mochajs/mocha/issues/1288)) +- fix: building 1.21.0's changes in the browser ([#1284](https://github.com/mochajs/mocha/issues/1284)) + +# 1.21.0 / 2014-07-23 + +- add: --no-timeouts option ([#1262](https://github.com/mochajs/mocha/issues/1262), [#1268](https://github.com/mochajs/mocha/issues/1268)) +- add: --\*- deprecation node flags ([#1217](https://github.com/mochajs/mocha/issues/1217)) +- add: --watch-extensions argument ([#1247](https://github.com/mochajs/mocha/issues/1247)) +- change: spec reporter is default ([#1228](https://github.com/mochajs/mocha/issues/1228)) +- fix: diff output showing incorrect +/- ([#1182](https://github.com/mochajs/mocha/issues/1182)) +- fix: diffs of circular structures ([#1179](https://github.com/mochajs/mocha/issues/1179)) +- fix: re-render the progress bar when progress has changed only ([#1151](https://github.com/mochajs/mocha/issues/1151)) +- fix support for environments with global and window ([#1159](https://github.com/mochajs/mocha/issues/1159)) +- fix: reverting to previously defined onerror handler ([#1178](https://github.com/mochajs/mocha/issues/1178)) +- fix: stringify non error objects passed to done() ([#1270](https://github.com/mochajs/mocha/issues/1270)) +- fix: using local ui, reporters ([#1267](https://github.com/mochajs/mocha/issues/1267)) +- fix: cleaning es6 arrows ([#1176](https://github.com/mochajs/mocha/issues/1176)) +- fix: don't include attrs in failure tag for xunit ([#1244](https://github.com/mochajs/mocha/issues/1244)) +- fix: fail tests that return a promise if promise is rejected w/o a reason ([#1224](https://github.com/mochajs/mocha/issues/1224)) +- fix: showing failed tests in doc reporter ([#1117](https://github.com/mochajs/mocha/issues/1117)) +- fix: dot reporter dots being off ([#1204](https://github.com/mochajs/mocha/issues/1204)) +- fix: catch empty throws ([#1219](https://github.com/mochajs/mocha/issues/1219)) +- fix: honoring timeout for sync operations ([#1242](https://github.com/mochajs/mocha/issues/1242)) +- update: growl to 1.8.0 + +# 1.20.1 / 2014-06-03 + +- update: should dev dependency to ~4.0.0 ([#1231](https://github.com/mochajs/mocha/issues/1231)) + +# 1.20.0 / 2014-05-28 + +- add: filenames to suite objects ([#1222](https://github.com/mochajs/mocha/issues/1222)) + +# 1.19.0 / 2014-05-17 + +- add: browser script option to package.json +- add: export file in Mocha.Test objects ([#1174](https://github.com/mochajs/mocha/issues/1174)) +- add: add docs for wrapped node flags +- fix: mocha.run() to return error status in browser ([#1216](https://github.com/mochajs/mocha/issues/1216)) +- fix: clean() to show failure details ([#1205](https://github.com/mochajs/mocha/issues/1205)) +- fix: regex that generates html for new keyword ([#1201](https://github.com/mochajs/mocha/issues/1201)) +- fix: sibling suites have inherited but separate contexts ([#1164](https://github.com/mochajs/mocha/issues/1164)) + +# 1.18.2 / 2014-03-18 + +- fix: html runner was prevented from using #mocha as the default root el ([#1162](https://github.com/mochajs/mocha/issues/1162)) + +# 1.18.1 / 2014-03-18 + +- fix: named before/after hooks in bdd, tdd, qunit interfaces ([#1161](https://github.com/mochajs/mocha/issues/1161)) + +# 1.18.0 / 2014-03-13 + +- add: promise support ([#329](https://github.com/mochajs/mocha/issues/329)) +- add: named before/after hooks ([#966](https://github.com/mochajs/mocha/issues/966)) + +# 1.17.1 / 2014-01-22 + +- fix: expected messages in should.js (should.js#168) +- fix: expect errno global in node versions < v0.9.11 ([#1111](https://github.com/mochajs/mocha/issues/1111)) +- fix: unreliable checkGlobals optimization ([#1110](https://github.com/mochajs/mocha/issues/1110)) + +# 1.17.0 / 2014-01-09 + +- add: able to require globals (describe, it, etc.) through mocha ([#1077](https://github.com/mochajs/mocha/issues/1077)) +- fix: abort previous run on --watch change ([#1100](https://github.com/mochajs/mocha/issues/1100)) +- fix: reset context for each --watch triggered run ([#1099](https://github.com/mochajs/mocha/issues/1099)) +- fix: error when cli can't resolve path or pattern ([#799](https://github.com/mochajs/mocha/issues/799)) +- fix: canonicalize objects before stringifying and diffing them ([#1079](https://github.com/mochajs/mocha/issues/1079)) +- fix: make CR call behave like carriage return for non tty ([#1087](https://github.com/mochajs/mocha/issues/1087)) + +# 1.16.2 / 2013-12-23 + +- fix: couple issues with ie 8 ([#1082](https://github.com/mochajs/mocha/issues/1082), [#1081](https://github.com/mochajs/mocha/issues/1081)) +- fix: issue running the xunit reporter in browsers ([#1068](https://github.com/mochajs/mocha/issues/1068)) +- fix: issue with firefox < 3.5 ([#725](https://github.com/mochajs/mocha/issues/725)) + +# 1.16.1 / 2013-12-19 + +- fix: recompiled for missed changes from the last release + +# 1.16.0 / 2013-12-19 + +- add: Runnable.globals(arr) for per test global whitelist ([#1046](https://github.com/mochajs/mocha/issues/1046)) +- add: mocha.throwError(err) for assertion libs to call ([#985](https://github.com/mochajs/mocha/issues/985)) +- remove: --watch's spinner ([#806](https://github.com/mochajs/mocha/issues/806)) +- fix: duplicate test output for multi-line specs in spec reporter ([#1006](https://github.com/mochajs/mocha/issues/1006)) +- fix: gracefully exit on SIGINT ([#1063](https://github.com/mochajs/mocha/issues/1063)) +- fix expose the specified ui only in the browser ([#984](https://github.com/mochajs/mocha/issues/984)) +- fix: ensure process exit code is preserved when using --no-exit ([#1059](https://github.com/mochajs/mocha/issues/1059)) +- fix: return true from window.onerror handler ([#868](https://github.com/mochajs/mocha/issues/868)) +- fix: xunit reporter to use process.stdout.write ([#1068](https://github.com/mochajs/mocha/issues/1068)) +- fix: utils.clean(str) indentation ([#761](https://github.com/mochajs/mocha/issues/761)) +- fix: xunit reporter returning test duration a NaN ([#1039](https://github.com/mochajs/mocha/issues/1039)) + +# 1.15.1 / 2013-12-03 + +- fix: recompiled for missed changes from the last release + +# 1.15.0 / 2013-12-02 + +- add: `--no-exit` to prevent `process.exit()` ([#1018](https://github.com/mochajs/mocha/issues/1018)) +- fix: using inline diffs ([#1044](https://github.com/mochajs/mocha/issues/1044)) +- fix: show pending test details in xunit reporter ([#1051](https://github.com/mochajs/mocha/issues/1051)) +- fix: faster global leak detection ([#1024](https://github.com/mochajs/mocha/issues/1024)) +- fix: yui compression ([#1035](https://github.com/mochajs/mocha/issues/1035)) +- fix: wrapping long lines in test results ([#1030](https://github.com/mochajs/mocha/issues/1030), [#1031](https://github.com/mochajs/mocha/issues/1031)) +- fix: handle errors in hooks ([#1043](https://github.com/mochajs/mocha/issues/1043)) + +# 1.14.0 / 2013-11-02 + +- add: unified diff ([#862](https://github.com/mochajs/mocha/issues/862)) +- add: set MOCHA_COLORS env var to use colors ([#965](https://github.com/mochajs/mocha/issues/965)) +- add: able to override tests links in html reporters ([#776](https://github.com/mochajs/mocha/issues/776)) +- remove: teamcity reporter ([#954](https://github.com/mochajs/mocha/issues/954)) +- update: commander dependency to 2.0.0 ([#1010](https://github.com/mochajs/mocha/issues/1010)) +- fix: mocha --ui will try to require the ui if not built in, as --reporter does ([#1022](https://github.com/mochajs/mocha/issues/1022)) +- fix: send cursor commands only if isatty ([#184](https://github.com/mochajs/mocha/issues/184), [#1003](https://github.com/mochajs/mocha/issues/1003)) +- fix: include assertion message in base reporter ([#993](https://github.com/mochajs/mocha/issues/993), [#991](https://github.com/mochajs/mocha/issues/991)) +- fix: consistent return of it, it.only, and describe, describe.only ([#840](https://github.com/mochajs/mocha/issues/840)) + +# 1.13.0 / 2013-09-15 + +- add: sort test files with --sort ([#813](https://github.com/mochajs/mocha/issues/813)) +- update: diff dependency to 1.0.7 +- update: glob dependency to 3.2.3 ([#927](https://github.com/mochajs/mocha/issues/927)) +- fix: diffs show whitespace differences ([#976](https://github.com/mochajs/mocha/issues/976)) +- fix: improve global leaks ([#783](https://github.com/mochajs/mocha/issues/783)) +- fix: firefox window.getInterface leak +- fix: accessing iframe via window[iframeIndex] leak +- fix: faster global leak checking +- fix: reporter pending css selector ([#970](https://github.com/mochajs/mocha/issues/970)) + +# 1.12.1 / 2013-08-29 + +- remove test.js from .gitignore +- update included version of ms.js + +# 1.12.0 / 2013-07-01 + +- add: prevent diffs for differing types. Closes [#900](https://github.com/mochajs/mocha/issues/900) +- add `Mocha.process` hack for phantomjs +- fix: use compilers with requires +- fix regexps in diffs. Closes [#890](https://github.com/mochajs/mocha/issues/890) +- fix xunit NaN on failure. Closes [#894](https://github.com/mochajs/mocha/issues/894) +- fix: strip tab indentation in `clean` utility method +- fix: textmate bundle installation + +# 1.11.0 / 2013-06-12 + +- add --prof support +- add --harmony support +- add --harmony-generators support +- add "Uncaught " prefix to uncaught exceptions +- add web workers support +- add `suite.skip()` +- change to output # of pending / passing even on failures. Closes [#872](https://github.com/mochajs/mocha/issues/872) +- fix: prevent hooks from being called if we are bailing +- fix `this.timeout(0)` + +# 1.10.0 / 2013-05-21 + +- add add better globbing support for windows via `glob` module +- add support to pass through flags such as --debug-brk=1234. Closes [#852](https://github.com/mochajs/mocha/issues/852) +- add test.only, test.skip to qunit interface +- change to always use word-based diffs for now. Closes [#733](https://github.com/mochajs/mocha/issues/733) +- change `mocha init` tests.html to index.html +- fix `process` global leak in the browser +- fix: use resolve() instead of join() for --require +- fix: filterLeaks() condition to not consider indices in global object as leaks +- fix: restrict mocha.css styling to #mocha id +- fix: save timer references to avoid Sinon interfering in the browser build. + +# 1.9.0 / 2013-04-03 + +- add improved setImmediate implementation +- replace --ignore-leaks with --check-leaks +- change default of ignoreLeaks to true. Closes [#791](https://github.com/mochajs/mocha/issues/791) +- remove scrolling for HTML reporter +- fix retina support +- fix tmbundle, restrict to js scope + +# 1.8.2 / 2013-03-11 + +- add `setImmediate` support for 0.10.x +- fix mocha -w spinner on windows + +# 1.8.1 / 2013-01-09 + +- fix .bail() arity check causing it to default to true + +# 1.8.0 / 2013-01-08 + +- add Mocha() options bail support +- add `Mocha#bail()` method +- add instanceof check back for inheriting from Error +- add component.json +- add diff.js to browser build +- update growl +- fix TAP reporter failures comment :D + +# 1.7.4 / 2012-12-06 + +- add total number of passes and failures to TAP +- remove .bind() calls. re [#680](https://github.com/mochajs/mocha/issues/680) +- fix indexOf. Closes [#680](https://github.com/mochajs/mocha/issues/680) + +# 1.7.3 / 2012-11-30 + +- fix uncaught error support for the browser +- revert uncaught "fix" which breaks node + +# 1.7.2 / 2012-11-28 + +- fix uncaught errors to expose the original error message + +# 1.7.0 / 2012-11-07 + +- add `--async-only` support to prevent false positives for missing `done()` +- add sorting by filename in code coverage +- add HTML 5 doctype to browser template. +- add play button to html reporter to rerun a single test +- add `this.timeout(ms)` as Suite#timeout(ms). Closes [#599](https://github.com/mochajs/mocha/issues/599) +- update growl dependency to 1.6.x +- fix encoding of test-case ?grep. Closes [#637](https://github.com/mochajs/mocha/issues/637) +- fix unicode chars on windows +- fix dom globals in Opera/IE. Closes [#243](https://github.com/mochajs/mocha/issues/243) +- fix markdown reporter a tags +- fix `this.timeout("5s")` support + +# 1.6.0 / 2012-10-02 + +- add object diffs when `err.showDiff` is present +- add hiding of empty suites when pass/failures are toggled +- add faster `.length` checks to `checkGlobals()` before performing the filter + +# 1.5.0 / 2012-09-21 + +- add `ms()` to `.slow()` and `.timeout()` +- add `Mocha#checkLeaks()` to re-enable global leak checks +- add `this.slow()` option [aheckmann] +- add tab, CR, LF to error diffs for now +- add faster `.checkGlobals()` solution [guille] +- remove `fn.call()` from reduce util +- remove `fn.call()` from filter util +- fix forEach. Closes [#582](https://github.com/mochajs/mocha/issues/582) +- fix relaying of signals [TooTallNate] +- fix TAP reporter grep number + +# 1.4.2 / 2012-09-01 + +- add support to multiple `Mocha#globals()` calls, and strings +- add `mocha.reporter()` constructor support [jfirebaugh] +- add `mocha.timeout()` +- move query-string parser to utils.js +- move highlight code to utils.js +- fix third-party reporter support [exogen] +- fix client-side API to match node-side [jfirebaugh] +- fix mocha in iframe [joliss] + +# 1.4.1 / 2012-08-28 + +- add missing `Markdown` export +- fix `Mocha#grep()`, escape regexp strings +- fix reference error when `devicePixelRatio` is not defined. Closes [#549](https://github.com/mochajs/mocha/issues/549) + +# 1.4.0 / 2012-08-22 + +- add mkdir -p to `mocha init`. Closes [#539](https://github.com/mochajs/mocha/issues/539) +- add `.only()`. Closes [#524](https://github.com/mochajs/mocha/issues/524) +- add `.skip()`. Closes [#524](https://github.com/mochajs/mocha/issues/524) +- change str.trim() to use utils.trim(). Closes [#533](https://github.com/mochajs/mocha/issues/533) +- fix HTML progress indicator retina display +- fix url-encoding of click-to-grep HTML functionality + +# 1.3.2 / 2012-08-01 + +- fix exports double-execution regression. Closes [#531](https://github.com/mochajs/mocha/issues/531) + +# 1.3.1 / 2012-08-01 + +- add passes/failures toggling to HTML reporter +- add pending state to `xit()` and `xdescribe()` [Brian Moore] +- add the [**@charset**](https://github.com/charset) "UTF-8"; to fix [#522](https://github.com/mochajs/mocha/issues/522) with FireFox. [Jonathan Creamer] +- add border-bottom to #stats links +- add check for runnable in `Runner#uncaught()`. Closes [#494](https://github.com/mochajs/mocha/issues/494) +- add 0.4 and 0.6 back to travis.yml +- add `-E, --growl-errors` to growl on failures only +- add prefixes to debug() names. Closes [#497](https://github.com/mochajs/mocha/issues/497) +- add `Mocha#invert()` to js api +- change dot reporter to use sexy unicode dots +- fix error when clicking pending test in HTML reporter +- fix `make tm` + +# 1.3.0 / 2012-07-05 + +- add window scrolling to `HTML` reporter +- add v8 `--trace-*` option support +- add support for custom reports via `--reporter MODULE` +- add `--invert` switch to invert `--grep` matches +- fix export of `Nyan` reporter. Closes [#495](https://github.com/mochajs/mocha/issues/495) +- fix escaping of `HTML` suite titles. Closes [#486](https://github.com/mochajs/mocha/issues/486) +- fix `done()` called multiple times with an error test +- change `--grep` - regexp escape the input + +# 1.2.2 / 2012-06-28 + +- Added 0.8.0 support + +# 1.2.1 / 2012-06-25 + +- Added `this.test.error(err)` support to after each hooks. Closes [#287](https://github.com/mochajs/mocha/issues/287) +- Added: export top-level suite on global mocha object (mocha.suite). Closes [#448](https://github.com/mochajs/mocha/issues/448) +- Fixed `js` code block format error in markdown reporter +- Fixed deprecation warning when using `path.existsSync` +- Fixed --globals with wildcard +- Fixed chars in nyan when his head moves back +- Remove `--growl` from test/mocha.opts. Closes [#289](https://github.com/mochajs/mocha/issues/289) + +# 1.2.0 / 2012-06-17 + +- Added `nyan` reporter [Atsuya Takagi] +- Added `mocha init ` to copy client files +- Added "specify" synonym for "it" [domenic] +- Added global leak wildcard support [nathanbowser] +- Fixed runner emitter leak. closes [#432](https://github.com/mochajs/mocha/issues/432) +- Fixed omission of .js extension. Closes [#454](https://github.com/mochajs/mocha/issues/454) + +# 1.1.0 / 2012-05-30 + +- Added: check each `mocha(1)` arg for directories to walk +- Added `--recursive` [tricknotes] +- Added `context` for BDD [hokaccha] +- Added styling for new clickable titles +- Added clickable suite titles to HTML reporter +- Added warning when strings are thrown as errors +- Changed: green arrows again in HTML reporter styling +- Changed ul/li elements instead of divs for better copy-and-pasting [joliss] +- Fixed issue [#325](https://github.com/mochajs/mocha/issues/325) - add better grep support to js api +- Fixed: save timer references to avoid Sinon interfering. + +# 1.0.3 / 2012-04-30 + +- Fixed string diff newlines +- Fixed: removed mocha.css target. Closes [#401](https://github.com/mochajs/mocha/issues/401) + +# 1.0.2 / 2012-04-25 + +- Added HTML reporter duration. Closes [#47](https://github.com/mochajs/mocha/issues/47) +- Fixed: one postMessage event listener [exogen] +- Fixed: allow --globals to be used multiple times. Closes [#100](https://github.com/mochajs/mocha/issues/100) [brendannee] +- Fixed [#158](https://github.com/mochajs/mocha/issues/158): removes jquery include from browser tests +- Fixed grep. Closes [#372](https://github.com/mochajs/mocha/issues/372) [brendannee] +- Fixed [#166](https://github.com/mochajs/mocha/issues/166) - When grepping don't display the empty suites +- Removed test/browser/style.css. Closes [#385](https://github.com/mochajs/mocha/issues/385) + +# 1.0.1 / 2012-04-04 + +- Fixed `.timeout()` in hooks +- Fixed: allow callback for `mocha.run()` in client version +- Fixed browser hook error display. Closes [#361](https://github.com/mochajs/mocha/issues/361) + +# 1.0.0 / 2012-03-24 + +- Added js API. Closes [#265](https://github.com/mochajs/mocha/issues/265) +- Added: initial run of tests with `--watch`. Closes [#345](https://github.com/mochajs/mocha/issues/345) +- Added: mark `location` as a global on the CS. Closes [#311](https://github.com/mochajs/mocha/issues/311) +- Added `markdown` reporter (github flavour) +- Added: scrolling menu to coverage.html. Closes [#335](https://github.com/mochajs/mocha/issues/335) +- Added source line to html report for Safari [Tyson Tate] +- Added "min" reporter, useful for `--watch` [Jakub Nešetřil] +- Added support for arbitrary compilers via . Closes [#338](https://github.com/mochajs/mocha/issues/338) [Ian Young] +- Added Teamcity export to lib/reporters/index [Michael Riley] +- Fixed chopping of first char in error reporting. Closes [#334](https://github.com/mochajs/mocha/issues/334) [reported by topfunky] +- Fixed terrible FF / Opera stack traces + +# 0.14.1 / 2012-03-06 + +- Added lib-cov to _.npmignore_ +- Added reporter to `mocha.run([reporter])` as argument +- Added some margin-top to the HTML reporter +- Removed jQuery dependency +- Fixed `--watch`: purge require cache. Closes [#266](https://github.com/mochajs/mocha/issues/266) + +# 0.14.0 / 2012-03-01 + +- Added string diff support for terminal reporters + +# 0.13.0 / 2012-02-23 + +- Added preliminary test coverage support. Closes [#5](https://github.com/mochajs/mocha/issues/5) +- Added `HTMLCov` reporter +- Added `JSONCov` reporter [kunklejr] +- Added `xdescribe()` and `xit()` to the BDD interface. Closes [#263](https://github.com/mochajs/mocha/issues/263) (docs \* Changed: make json reporter output pretty json +- Fixed node-inspector support, swapped `--debug` for `debug` to match node. Closes [#247](https://github.com/mochajs/mocha/issues/247) + +# 0.12.1 / 2012-02-14 + +- Added `npm docs mocha` support [TooTallNate] +- Added a `Context` object used for hook and test-case this. Closes [#253](https://github.com/mochajs/mocha/issues/253) +- Fixed `Suite#clone()` `.ctx` reference. Closes [#262](https://github.com/mochajs/mocha/issues/262) + +# 0.12.0 / 2012-02-02 + +- Added .coffee `--watch` support. Closes [#242](https://github.com/mochajs/mocha/issues/242) +- Added support to `--require` files relative to the CWD. Closes [#241](https://github.com/mochajs/mocha/issues/241) +- Added quick n dirty syntax highlighting. Closes [#248](https://github.com/mochajs/mocha/issues/248) +- Changed: made HTML progress indicator smaller +- Fixed xunit errors attribute [dhendo] + +# 0.10.2 / 2012-01-21 + +- Fixed suite count in reporter stats. Closes [#222](https://github.com/mochajs/mocha/issues/222) +- Fixed `done()` after timeout error reporting [Phil Sung] +- Changed the 0-based errors to 1 + +# 0.10.1 / 2012-01-17 + +- Added support for node 0.7.x +- Fixed absolute path support. Closes [#215](https://github.com/mochajs/mocha/issues/215) [kompiro] +- Fixed `--no-colors` option [Jussi Virtanen] +- Fixed Arial CSS typo in the correct file + +# 0.10.0 / 2012-01-13 + +- Added `-b, --bail` to exit on first exception [guillermo] +- Added support for `-gc` / `--expose-gc` [TooTallNate] +- Added `qunit`-inspired interface +- Added MIT LICENSE. Closes [#194](https://github.com/mochajs/mocha/issues/194) +- Added: `--watch` all .js in the CWD. Closes [#139](https://github.com/mochajs/mocha/issues/139) +- Fixed `self.test` reference in runner. Closes [#189](https://github.com/mochajs/mocha/issues/189) +- Fixed double reporting of uncaught exceptions after timeout. Closes [#195](https://github.com/mochajs/mocha/issues/195) + +# 0.8.2 / 2012-01-05 + +- Added test-case context support. Closes [#113](https://github.com/mochajs/mocha/issues/113) +- Fixed exit status. Closes [#187](https://github.com/mochajs/mocha/issues/187) +- Update commander. Closes [#190](https://github.com/mochajs/mocha/issues/190) + +# 0.8.1 / 2011-12-30 + +- Fixed reporting of uncaught exceptions. Closes [#183](https://github.com/mochajs/mocha/issues/183) +- Fixed error message defaulting [indutny] +- Changed mocha(1) from bash to node for windows [Nathan Rajlich] + +# 0.8.0 / 2011-12-28 + +- Added `XUnit` reporter [FeeFighters/visionmedia] +- Added `say(1)` notification support [Maciej Małecki] +- Changed: fail when done() is invoked with a non-Error. Closes [#171](https://github.com/mochajs/mocha/issues/171) +- Fixed `err.stack`, defaulting to message. Closes [#180](https://github.com/mochajs/mocha/issues/180) +- Fixed: `make tm` mkdir -p the dest. Closes [#137](https://github.com/mochajs/mocha/issues/137) +- Fixed mocha(1) --help bin name +- Fixed `-d` for `--debug` support - * Fixed reporting of uncaught exceptions. Closes #183 - * Fixed error message defaulting [indutny] - * Changed mocha(1) from bash to node for windows [Nathan Rajlich] - -0.8.0 / 2011-12-28 -================== - - * Added `XUnit` reporter [FeeFighters/visionmedia] - * Added `say(1)` notification support [Maciej Małecki] - * Changed: fail when done() is invoked with a non-Error. Closes #171 - * Fixed `err.stack`, defaulting to message. Closes #180 - * Fixed: `make tm` mkdir -p the dest. Closes #137 - * Fixed mocha(1) --help bin name - * Fixed `-d` for `--debug` support - -0.7.1 / 2011-12-22 -================== +# 0.7.1 / 2011-12-22 - * Removed `mocha-debug(1)`, use `mocha --debug` - * Fixed CWD relative requires - * Fixed growl issue on windows [Raynos] - * Fixed: platform specific line endings [TooTallNate] - * Fixed: escape strings in HTML reporter. Closes #164 +- Removed `mocha-debug(1)`, use `mocha --debug` +- Fixed CWD relative requires +- Fixed growl issue on windows [Raynos] +- Fixed: platform specific line endings [TooTallNate] +- Fixed: escape strings in HTML reporter. Closes [#164](https://github.com/mochajs/mocha/issues/164) -0.7.0 / 2011-12-18 -================== +# 0.7.0 / 2011-12-18 - * Added support for IE{7,8} [guille] - * Changed: better browser nextTick implementation [guille] +- Added support for IE{7,8} [guille] +- Changed: better browser nextTick implementation [guille] -0.6.0 / 2011-12-18 -================== +# 0.6.0 / 2011-12-18 - * Added setZeroTimeout timeout for browser (nicer stack traces). Closes #153 - * Added "view source" on hover for HTML reporter to make it obvious - * Changed: replace custom growl with growl lib - * Fixed duplicate reporting for HTML reporter. Closes #154 - * Fixed silent hook errors in the HTML reporter. Closes #150 +- Added setZeroTimeout timeout for browser (nicer stack traces). Closes [#153](https://github.com/mochajs/mocha/issues/153) +- Added "view source" on hover for HTML reporter to make it obvious +- Changed: replace custom growl with growl lib +- Fixed duplicate reporting for HTML reporter. Closes [#154](https://github.com/mochajs/mocha/issues/154) +- Fixed silent hook errors in the HTML reporter. Closes [#150](https://github.com/mochajs/mocha/issues/150) -0.5.0 / 2011-12-14 -================== +# 0.5.0 / 2011-12-14 - * Added: push node_modules directory onto module.paths for relative require Closes #93 - * Added teamcity reporter [blindsey] - * Fixed: recover from uncaught exceptions for tests. Closes #94 - * Fixed: only emit "test end" for uncaught within test, not hook +- Added: push node_modules directory onto module.paths for relative require Closes [#93](https://github.com/mochajs/mocha/issues/93) +- Added teamcity reporter [blindsey] +- Fixed: recover from uncaught exceptions for tests. Closes [#94](https://github.com/mochajs/mocha/issues/94) +- Fixed: only emit "test end" for uncaught within test, not hook -0.4.0 / 2011-12-14 -================== +# 0.4.0 / 2011-12-14 - * Added support for test-specific timeouts via `this.timeout(0)`. Closes #134 - * Added guillermo's client-side EventEmitter. Closes #132 - * Added progress indicator to the HTML reporter - * Fixed slow browser tests. Closes #135 - * Fixed "suite" color for light terminals - * Fixed `require()` leak spotted by [guillermo] +- Added support for test-specific timeouts via `this.timeout(0)`. Closes [#134](https://github.com/mochajs/mocha/issues/134) +- Added guillermo's client-side EventEmitter. Closes [#132](https://github.com/mochajs/mocha/issues/132) +- Added progress indicator to the HTML reporter +- Fixed slow browser tests. Closes [#135](https://github.com/mochajs/mocha/issues/135) +- Fixed "suite" color for light terminals +- Fixed `require()` leak spotted by [guillermo] -0.3.6 / 2011-12-09 -================== +# 0.3.6 / 2011-12-09 - * Removed suite merging (for now) +- Removed suite merging (for now) -0.3.5 / 2011-12-08 -================== +# 0.3.5 / 2011-12-08 - * Added support for `window.onerror` [guillermo] - * Fixed: clear timeout on uncaught exceptions. Closes #131 [guillermo] - * Added `mocha.css` to PHONY list. - * Added `mocha.js` to PHONY list. +- Added support for `window.onerror` [guillermo] +- Fixed: clear timeout on uncaught exceptions. Closes [#131](https://github.com/mochajs/mocha/issues/131) [guillermo] +- Added `mocha.css` to PHONY list. +- Added `mocha.js` to PHONY list. -0.3.4 / 2011-12-08 -================== +# 0.3.4 / 2011-12-08 - * Added: allow `done()` to be called with non-Error - * Added: return Runner from `mocha.run()`. Closes #126 - * Fixed: run afterEach even on failures. Closes #125 - * Fixed clobbering of current runnable. Closes #121 +- Added: allow `done()` to be called with non-Error +- Added: return Runner from `mocha.run()`. Closes [#126](https://github.com/mochajs/mocha/issues/126) +- Fixed: run afterEach even on failures. Closes [#125](https://github.com/mochajs/mocha/issues/125) +- Fixed clobbering of current runnable. Closes [#121](https://github.com/mochajs/mocha/issues/121) -0.3.3 / 2011-12-08 -================== +# 0.3.3 / 2011-12-08 - * Fixed hook timeouts. Closes #120 - * Fixed uncaught exceptions in hooks +- Fixed hook timeouts. Closes [#120](https://github.com/mochajs/mocha/issues/120) +- Fixed uncaught exceptions in hooks -0.3.2 / 2011-12-05 -================== +# 0.3.2 / 2011-12-05 - * Fixed weird reporting when `err.message` is not present +- Fixed weird reporting when `err.message` is not present -0.3.1 / 2011-12-04 -================== +# 0.3.1 / 2011-12-04 - * Fixed hook event emitter leak. Closes #117 - * Fixed: export `Spec` constructor. Closes #116 +- Fixed hook event emitter leak. Closes [#117](https://github.com/mochajs/mocha/issues/117) +- Fixed: export `Spec` constructor. Closes [#116](https://github.com/mochajs/mocha/issues/116) -0.3.0 / 2011-12-04 -================== +# 0.3.0 / 2011-12-04 - * Added `-w, --watch`. Closes #72 - * Added `--ignore-leaks` to ignore global leak checking - * Added browser `?grep=pattern` support - * Added `--globals ` to specify accepted globals. Closes #99 - * Fixed `mocha-debug(1)` on some systems. Closes #232 - * Fixed growl total, use `runner.total` +- Added `-w, --watch`. Closes [#72](https://github.com/mochajs/mocha/issues/72) +- Added `--ignore-leaks` to ignore global leak checking +- Added browser `?grep=pattern` support +- Added `--globals ` to specify accepted globals. Closes [#99](https://github.com/mochajs/mocha/issues/99) +- Fixed `mocha-debug(1)` on some systems. Closes [#232](https://github.com/mochajs/mocha/issues/232) +- Fixed growl total, use `runner.total` -0.2.0 / 2011-11-30 -================== +# 0.2.0 / 2011-11-30 - * Added `--globals ` to specify accepted globals. Closes #99 - * Fixed funky highlighting of messages. Closes #97 - * Fixed `mocha-debug(1)`. Closes #232 - * Fixed growl total, use runner.total +- Added `--globals ` to specify accepted globals. Closes [#99](https://github.com/mochajs/mocha/issues/99) +- Fixed funky highlighting of messages. Closes [#97](https://github.com/mochajs/mocha/issues/97) +- Fixed `mocha-debug(1)`. Closes [#232](https://github.com/mochajs/mocha/issues/232) +- Fixed growl total, use runner.total -0.1.0 / 2011-11-29 -================== +# 0.1.0 / 2011-11-29 - * Added `suiteSetup` and `suiteTeardown` to TDD interface [David Henderson] - * Added growl icons. Closes #84 - * Fixed coffee-script support +- Added `suiteSetup` and `suiteTeardown` to TDD interface [David Henderson] +- Added growl icons. Closes [#84](https://github.com/mochajs/mocha/issues/84) +- Fixed coffee-script support -0.0.8 / 2011-11-25 -================== +# 0.0.8 / 2011-11-25 - * Fixed: use `Runner#total` for accurate reporting +- Fixed: use `Runner#total` for accurate reporting -0.0.7 / 2011-11-25 -================== +# 0.0.7 / 2011-11-25 - * Added `Hook` - * Added `Runnable` - * Changed: `Test` is `Runnable` - * Fixed global leak reporting in hooks - * Fixed: > 2 calls to done() only report the error once - * Fixed: clear timer on failure. Closes #80 +- Added `Hook` +- Added `Runnable` +- Changed: `Test` is `Runnable` +- Fixed global leak reporting in hooks +- Fixed: > 2 calls to done() only report the error once +- Fixed: clear timer on failure. Closes [#80](https://github.com/mochajs/mocha/issues/80) -0.0.6 / 2011-11-25 -================== +# 0.0.6 / 2011-11-25 - * Fixed return on immediate async error. Closes #80 +- Fixed return on immediate async error. Closes [#80](https://github.com/mochajs/mocha/issues/80) -0.0.5 / 2011-11-24 -================== +# 0.0.5 / 2011-11-24 - * Fixed: make mocha.opts whitespace less picky [kkaefer] +- Fixed: make mocha.opts whitespace less picky [kkaefer] -0.0.4 / 2011-11-24 -================== +# 0.0.4 / 2011-11-24 - * Added `--interfaces` - * Added `--reporters` - * Added `-c, --colors`. Closes #69 - * Fixed hook timeouts +- Added `--interfaces` +- Added `--reporters` +- Added `-c, --colors`. Closes [#69](https://github.com/mochajs/mocha/issues/69) +- Fixed hook timeouts -0.0.3 / 2011-11-23 -================== +# 0.0.3 / 2011-11-23 - * Added `-C, --no-colors` to explicitly disable - * Added coffee-script support +- Added `-C, --no-colors` to explicitly disable +- Added coffee-script support -0.0.2 / 2011-11-22 -================== +# 0.0.2 / 2011-11-22 - * Fixed global leak detection due to Safari bind() change - * Fixed: escape html entities in Doc reporter - * Fixed: escape html entities in HTML reporter - * Fixed pending test support for HTML reporter. Closes #66 +- Fixed global leak detection due to Safari bind() change +- Fixed: escape html entities in Doc reporter +- Fixed: escape html entities in HTML reporter +- Fixed pending test support for HTML reporter. Closes [#66](https://github.com/mochajs/mocha/issues/66) -0.0.1 / 2011-11-22 -================== +# 0.0.1 / 2011-11-22 - * Added `--timeout` second shorthand support, ex `--timeout 3s`. - * Fixed "test end" event for uncaughtExceptions. Closes #61 +- Added `--timeout` second shorthand support, ex `--timeout 3s`. +- Fixed "test end" event for uncaughtExceptions. Closes [#61](https://github.com/mochajs/mocha/issues/61) -0.0.1-alpha6 / 2011-11-19 -================== +# 0.0.1-alpha6 / 2011-11-19 - * Added travis CI support (needs enabling when public) - * Added preliminary browser support - * Added `make mocha.css` target. Closes #45 - * Added stack trace to TAP errors. Closes #52 - * Renamed tearDown to teardown. Closes #49 - * Fixed: cascading hooksc. Closes #30 - * Fixed some colors for non-tty - * Fixed errors thrown in sync test-cases due to nextTick - * Fixed Base.window.width... again give precedence to 0.6.x +- Added travis CI support (needs enabling when public) +- Added preliminary browser support +- Added `make mocha.css` target. Closes [#45](https://github.com/mochajs/mocha/issues/45) +- Added stack trace to TAP errors. Closes [#52](https://github.com/mochajs/mocha/issues/52) +- Renamed tearDown to teardown. Closes [#49](https://github.com/mochajs/mocha/issues/49) +- Fixed: cascading hooksc. Closes [#30](https://github.com/mochajs/mocha/issues/30) +- Fixed some colors for non-tty +- Fixed errors thrown in sync test-cases due to nextTick +- Fixed Base.window.width... again give precedence to 0.6.x -0.0.1-alpha5 / 2011-11-17 -================== +# 0.0.1-alpha5 / 2011-11-17 - * Added `doc` reporter. Closes #33 - * Added suite merging. Closes #28 - * Added TextMate bundle and `make tm`. Closes #20 +- Added `doc` reporter. Closes [#33](https://github.com/mochajs/mocha/issues/33) +- Added suite merging. Closes [#28](https://github.com/mochajs/mocha/issues/28) +- Added TextMate bundle and `make tm`. Closes [#20](https://github.com/mochajs/mocha/issues/20) -0.0.1-alpha4 / 2011-11-15 -================== +# 0.0.1-alpha4 / 2011-11-15 - * Fixed getWindowSize() for 0.4.x +- Fixed getWindowSize() for 0.4.x -0.0.1-alpha3 / 2011-11-15 -================== +# 0.0.1-alpha3 / 2011-11-15 - * Added `-s, --slow ` to specify "slow" test threshold - * Added `mocha-debug(1)` - * Added `mocha.opts` support. Closes #31 - * Added: default [files] to _test/*.js_ - * Added protection against multiple calls to `done()`. Closes #35 - * Changed: bright yellow for slow Dot reporter tests +- Added `-s, --slow ` to specify "slow" test threshold +- Added `mocha-debug(1)` +- Added `mocha.opts` support. Closes [#31](https://github.com/mochajs/mocha/issues/31) +- Added: default [files] to _test/\*.js_ +- Added protection against multiple calls to `done()`. Closes [#35](https://github.com/mochajs/mocha/issues/35) +- Changed: bright yellow for slow Dot reporter tests -0.0.1-alpha1 / 2011-11-08 -================== +# 0.0.1-alpha2 / 2011-11-08 - * Missed this one :) +- Missed this one :) -0.0.1-alpha1 / 2011-11-08 -================== +# 0.0.1-alpha1 / 2011-11-08 - * Initial release +- Initial release diff --git a/LICENSE b/LICENSE index 287db88993..9ab23f6873 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ (The MIT License) -Copyright (c) 2011-2017 JS Foundation and contributors, https://js.foundation +Copyright (c) 2011-2018 JS Foundation and contributors, https://js.foundation Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the diff --git a/MAINTAINERS.md b/MAINTAINERS.md new file mode 100644 index 0000000000..31d5e40ce9 --- /dev/null +++ b/MAINTAINERS.md @@ -0,0 +1,376 @@ +# Mocha Maintainer's Handbook + + + +- [Introduction](#introduction) +- [Terminology](#terminology) + - [User](#user) + - [Contributor](#contributor) + - [A Note About Donations](#a-note-about-donations) + - [Maintainer](#maintainer) + - [The Responsibilities of a Maintainer](#the-responsibilities-of-a-maintainer) + - [The Rights of a Maintainer](#the-rights-of-a-maintainer) + - [About "Owners"](#about-owners) +- [Mocha's Decision-Making Process](#mochas-decision-making-process) +- [Communication](#communication) +- [Working with Issues & Pull Requests](#working-with-issues--pull-requests) + - [Semantic Versioning](#semantic-versioning) + - [Questions](#questions) + - [Bugs](#bugs) + - [Features](#features) + - [Subsystems, Environments, Etc.](#subsystems-environments-etc) + - [Feedback & Follow-ups](#feedback--follow-ups) + - [Meta](#meta) + - [Closing Issues](#closing-issues) +- [Commenting on Issues and Reviewing Pull Requests](#commenting-on-issues-and-reviewing-pull-requests) + - [Reviewing Code](#reviewing-code) + - [The Part About Jerks](#the-part-about-jerks) + - [Rude or Entitled People](#rude-or-entitled-people) + - [Code of Conduct Violations](#code-of-conduct-violations) +- [Branches](#branches) +- [Merging PRs](#merging-prs) + - [Using Milestones](#using-milestones) +- [Mocha's Release Process](#mochas-release-process) +- [Projects](#projects) +- [About The JS Foundation](#about-the-js-foundation) +- [About OpenCollective](#about-opencollective) + + + +## Introduction + +Hi stranger! We've written this document for: + +1. Active maintainers of Mocha +1. Prospective maintainers of Mocha +1. Anyone curious about how Mocha's maintainers maintain Mocha + +The purpose of this document is to *describe our processes*. We want to avoid conflicts and confusion around "unwritten rules". In our opinion, the most straightforward way to address this is to *write them down*. This *also* happens to be the most straightforward way to change them! + +To assist in eliminating ambiguity, we will define some terms. + +## Terminology + +Anyone involved with Mocha will fall into one of these buckets: **user**, **contributor**, and **maintainer**. + +### User + +A "user" for the purpose of this document is any *individual developer* who consumes Mocha to write and/or execute tests. A user interacts with contributors. A user interacts with the software, web site, documentation, etc., which these contributors provide. + +As a user, you're expected to follow the [code of conduct](https://github.com/mochajs/mocha/blob/master/.github/CODE_OF_CONDUCT.md) when interacting in Mocha's "official" social spaces. This includes: + +- Any chatroom under the `mochajs` organization on Gitter +- Any project under the `mochajs` organization on GitHub +- The MochaJS Google Group +- Any future social, in-person or online events which Mocha might organize + +### Contributor + +This is the most important thing: + +**You don't have to write code to be a contributor!** + +A "contributor" is any individual who has *given back* in some way to the project and its community. Contributions include (but are not limited to): + +1. Reporting bugs which follow the reporting guidelines +1. Suggesting and debating enhancements that have wide applicability +1. Helping others with Mocha-related questions on [Gitter](https://gitter.im/mochajs/mocha), [StackOverflow](https://stackoverflow.com), Google groups, or other sites +1. Sending pull requests which fix bugs, improve documentation, improve developer experience, improve code quality, and/or implement requested enhancements +1. Reviewing code on pull requests +1. Providing design assets +1. Posting a tutorial on a personal blog or blogging site +1. Suggesting usages for project funds +1. Organizing a "Mocha-branded" event or workshop +1. Recruiting more contributors! Don't spam. +1. Researching the user base, getting feedback, etc. Don't spam. + +A contributor is *usually* a user as well, but this isn't a hard-and-fast rule. A contributor is also expected to adhere to the [code of conduct](https://github.com/mochajs/mocha/blob/master/.github/CODE_OF_CONDUCT.md) as a user would. + +As you can see, it's wide open! Think of it another way: if you are *adding value to Mocha*, then you are a contributor. + +> Due to the nature of GitHub, it's a challenge to recognize those who've made contributions *elsewhere* on the web, or even contributions of the "non-code" variety. If you know of any great contributions which have gone unnoticed, please bring them to the maintainers' attention! + +#### A Note About Donations + +A [donation](https://opencollective.com/mochajs) is also a great way to help Mocha if you want to help sustain OSS, but can't find time to contribute in other ways, or just want to say "thanks!" + +We love our backers and sponsors! 💕 + +### Maintainer + +A maintainer has certain "rights" (or "permissions") to the Mocha project and other projects under the `mochajs` organization. There's no way to dance around this: with these rights come increased responsibilities. + +However, **there is no expectation of a standard of technical ability** to be a maintainer of Mocha. This doesn't imply a lack of technical oversight--every pull request will eventually be reviewed. + +**If you think you aren't experienced enough to maintain a project like Mocha, you are incorrect.** The only requirements are the above responsibilities and a desire to help the project. It bears repeating: + +**You don't have to write code to be a maintainer!** + +> Maintainer is synonymous with "Collaborator" and/or "Owner" in GitHub parlance. + +#### The Responsibilities of a Maintainer + +As a maintainer, you are expected to *not just* "follow" the code of conduct, but embody its values. Your public behavior, whether in the physical or virtual world, reflects upon the project and other maintainers. + +> If you don't understand the code of conduct, or why it exists, it is *your responsibility* to educate yourself. +> This does not imply the CoC is immutable. + +Furthermore, a maintainer is a contributor who **contributes regularly**, or expresses a *desire to do so.* That could be every day--but it might be once a week, or even once a month. Your boss doesn't work here; contribute as often as you wish. We are all people with Real Lives, and for many of us, contributing to OSS is just a hobby! + +Finally, a maintainer must help define what makes Mocha "Mocha". At minimum, a maintainer must *understand* the current definition (if a maintainer is not interested in decision-making). Some of these questions include: + +- What's the scope of Mocha? +- Where should we focus efforts? +- What's urgent, what can wait? +- What can we break? What's off-limits? +- What user feedback is valuable? What isn't? + +As maintainers, *we work together* to learn about the nature of these questions. If we try hard enough, we even come to some answers! + +A maintainer *must* also have 2FA enabled on their GitHub account. + +> If you think that you aren't familiar with mocha's internals enough to contribute, please watch [This walkthrough video!](https://youtu.be/zLayCLcIno0) + +#### The Rights of a Maintainer + +You may choose to do zero or more of these *at their discretion*: + +- Merge pull requests +- Modify issues (closing, adding labels, assigning them other maintainers, etc.) +- Modify GitHub [Projects](https://github.com/mochajs/mocha/projects) +- Cancel builds, restart jobs, or otherwise interact with our CI server(s) +- CRUD operations on GitHub integrations +- Participate in the decision-making process +- Add new maintainers to the team +- Tag releases and publish Mocha to npm + +> While maintainers have the ability to commit directly to the `master` branch, *this is to be avoided* if any other maintainer could reasonably take issue with the change, or the change affects Mocha's API or output. For example, a spelling correction in `CHANGELOG.md` may not require a pull request. A change to a reporter's output most certainly would! Maintainers are trusted to use their best judgement; if unsure, err on the side of caution. + +#### About "Owners" + +Some maintainers will have full admin rights to the [mochajs org](https://github.com/mochajs) and/or will have access to publish to npm. + +- Those with publish access are expected to use npm's 2FA. +- This level of access will be granted by the current owners to those maintainers who have earned the project's trust. + +## Mocha's Decision-Making Process + +Mocha follows a [consensus-seeking decision-making](https://en.wikipedia.org/wiki/Consensus-seeking_decision-making) process. In other words, all maintainers attempt to come to agreement. If that fails, we decide by a simple vote. + +Active maintainers will make an effort to solicit feedback from others before making important or potentially controversial decisions. Given the varying geographical distribution and availability of the maintenance team, we resolve to do the best we can to solicit feedback. + +In other words, to have your opinion heard, participate regularly. The rest of the team won't wait on feedback that isn't necessarily forthcoming! + +## Communication + +Maintainers will mainly gather in [the mochajs/contributors channel](https://gitter.im/mochajs/contributors). This is a *public* channel, and *anyone* can join. +Videoconference (or audio) calls may happen on a regular or irregular basis, as schedules allow. This is mainly because we have Real Lives and time zones suck. + +## Working with Issues & Pull Requests + +All new issues will need to be triaged, and pull requests must be examined. Maintainers must understand [Semantic Versioning](http://semver.org) ("SemVer"), as Mocha follows it strictly. + +> If you see an issue or PR that could use some labels, please add them! + +### Semantic Versioning + +The TL;DR of Semantic Versioning is: + +- MAJOR version when you make incompatible API changes, +- MINOR version when you add functionality in a backwards-compatible manner, and +- PATCH version when you make backwards-compatible bug fixes. + +Pull requests *must* have one of these three (3) labels: + +- `semver-patch` for backwards-compatible bug fixes, documentation, or anything which does not affect a "production" (`npm install mocha`) installation of Mocha +- `semver-minor` for backwards-compatible new features or usability/interface enhancements +- `semver-major` for backwards-incompatible ("breaking") changes to the API + +A PR which introduces a breaking change is considered to be `semver-major`, *regardless* of whether it's a bug fix, feature, or whatever. + +For the purposes of the above definitions, Mocha has some unique considerations, and includes the following in its definition of "API": + +1. Mocha's *documented*, programmatic interface which *is not explicitly tagged with `@private`* +1. Mocha's machine-readable reporter output +1. Mocha's default settings +1. Mocha's command-line options +1. The environments which Mocha supports; this includes: + 1. Browser versions + 1. Node.js versions + 1. Compatibility with popular module loaders (e.g., AMD) + +**Err on the side of the user; breaking changes to private APIs will be `semver-major`, if and only if they are known to be consumed by actively developed project(s).** + +Examples of a breaking changes might be: + +- Throwing an `Error` where one wasn't thrown before +- Removing a command-line option or alias +- Removing an environment from the CI configuration +- Changing the default reporter! +- Changing defaults in a way which would cause tests which were previously successful to start failing, or a failing test to start passing + - The exception is fixing likely false-positives + - A good example would be changing the default `timeout` value + +### Questions + +Support questions should be answered if possible, but the user should be directed to the chat room, StackOverflow, or Google Groups for further help, *if* it is indeed a Mocha-related issue. + +If it's *not* a Mocha problem (people tend not to believe this), you may want to show a counter-example. It's often helpful to direct the issue author to the responsible project, if you can determine what that is. + +- `faq`: Issues which are *repeatedly* asked support questions or misunderstandings. This may also apply to questions which receive a lot of 👍's +- `question`: Add this label if it's just a support question + +### Bugs + +- `confirmed-bug`: A confirmed bug +- `unconfirmed-bug`: A maintainer has not yet or cannot reproduce; typically `needs-feedback` follows (see "Feedback & Follow-ups" below) +- `invalid`: Not a bug. Close the issue. +- `wontfix`: A bug, but for Reasons, it won't get fixed. + +### Features + +- `feature`: Any feature/enhancement that's up for discussion or has been agreed upon. +- `wontfix`: A half-baked feature or one which is unsuitable or out-of-scope for Mocha. + +### Subsystems, Environments, Etc. + +- `reporter`: Usually concerning Mocha's output +- `browser`: Issues unique to a browser environment +- `documentation`: Issues around incorrect or missing docs +- `qa`: Issues around Mocha's own test suite +- `chore`: Refactors, CI tweaks, dependencies, etc. +- `developer-experience`: Issues which will make it easier to contribute and maintain Mocha + +### Feedback & Follow-ups + +Issues or PRs which require action or feedback from a *specific* maintainer, should have that item *assigned* to them. + +- `needs-feedback`: Issues which *need feedback from the original author*. Will automatically become `stale` (see "Meta" section below) +- `needs-review`: For *pull requests only*; PRs which need a maintainer to inspect and/or merge them + +### Meta + +- `stale`: The "stalebot" marks things as stale and will close issues if they need feedback but haven't received any. Comment on an issue to prevent this from happening. +- `help wanted`: If it's an issue that is not a high priority for the maintenance team, use this label to solicit contributions. Note lack of `-` in this label's name. +- `good-first-issue`: Typically combined with `help wanted`; an issue that new contributors to Mocha may find straightforward. + +### Closing Issues + +Write "closes #" or "resolves #" in a commit or PR to have the original issue closed automatically once the PR is merged. + +For any issue which is a duplicate, write "duplicate of #" in a new comment, and close the issue. [Read more about marking issues as duplicates](https://help.github.com/articles/about-duplicate-issues-and-pull-requests/). + +If the issue is a support question, and you believe it has been answered, close the issue. + +If the issue is not Mocha-related, and/or a bug cannot be confirmed, label it `invalid` and close. + +## Commenting on Issues and Reviewing Pull Requests + +**All maintainers should be courteous and kind.** Thank the external contributor for the pull request, even if it is not merged. If the pull request has been opened (and subsequently closed) without discussion in a corresponding issue, let them know that by creating an issue first, they could have saved wasted effort. *Clearly and objectively* explain the reasoning for rejecting any PR. + +If you need more information in an issue, nicely ask the user to provide it. Remind them to use the issue/PR templates if they have not. If the user never gets around to it, the "stalebot" will close it eventually anyhow. + +### Reviewing Code + +Use GitHub's code review features. Requesting a review from another maintainer *may or may not* actually result in a review; don't wait on it. If the PR cannot move forward without input from a certain maintainer, *assign them to the PR*. + +### The Part About Jerks + +There will be jerks. + +#### Rude or Entitled People + +These are users who feel the Mocha project and its maintainers *owe them* time or support. This is incorrect. + +However, this behavior is often indicative of someone who is "new" to open source. Many just don't know better. It is not your *responsibility* to educate them (again, you owe them nothing). + +Here are some suggestions: + +1. If u mad, wait 20 minutes before writing a comment. +1. "Kill them with kindness". Explain how they are presenting themselves; maybe link to a good article or two about it. +1. Don't make it about "users vs. maintainers". Treat them like a potential future maintainer. +1. Avoid adding to the drama. You could try to reach out privately; email may be in their GitHub profile. You will likely never hear from that individual again (problem solved) +1. If an issue is getting out of control, lock it. +1. If someone is *repeatedly* rude and does not correct their mistakes, you may ban them from participating in the `mochajs` org. If you do not have permission to do so, contact one which does (an "owner"). + +#### Code of Conduct Violations + +**This section is theoretical, as it's yet to happen**. + +1. Inform the individual of the violation; link to the CoC +1. Follow up with JS Foundation for further guidance +1. Repeated violators will be banned inasmuch as that is technically possible +1. No maintainer nor contributor is exempt from the CoC + +## Branches + +`master` is the only maintained branch in `mochajs/mocha` or any of the other repos. **`master` is the only branch to which force-pushing is disallowed.** + +Maintainers may push new branches to a repo, as long as they remove them when finished (merging a PR will prompt to do so). + +Please *please* ***please*** delete old or unused branches. + +## Merging PRs + +GitHub has several options for how to merge a PR. Here's what we do: + +1. *If a PR has multiple commits*, "Squash". +1. *If a PR has a single commit*, "Rebase". +1. Don't "Merge". + +**Upon acceptance of a PR, you must assign it a milestone.** + +### Using Milestones + +If you know that the PR is breaking, assign it to a new or existing milestone correlating with the next major release. For example, if Mocha's current version is v6.5.2, then this milestone would be named `v7.0.0`. + +Likewise, if the PR is `semver-minor`, create or use a new milestone correlating to the next *minor* release, e.g., `v6.6.0`. + +If it's unclear what the next milestone will be, use or create a milestone named `next`. This milestone will be renamed to the new version at release time. + +By using milestones, we can cherry-pick non-breaking changes into minor or patch releases, and keep `master` as the latest version. + +**This is subject to change, hopefully.** + +## Mocha's Release Process + +*It's easier to release often.* + +1. Decide whether this is a `patch`, `minor`, or `major` release. +1. Checkout `master` in your working copy & pull. +1. Modify `CHANGELOG.md`; follow the existing conventions in that file. Use the "pull request" number, unless there isn't one. *You do not need to add Markdown links; this is done automatically.* + 1. You can omit stuff from `CHANGELOG.md` that was done by a maintainer, but would have no interest to consumers of Mocha. + 1. If the changes aren't of interest to consumers but *were not* made by a maintainer, reference them anyway. It's cool to give attribution! +1. Use `npm version` (use `npm@6+`) to bump the version; see `npm version --help` for more info. (Hint--use `-m`: e.g., `npm version patch -m 'Release v%s'`) + 1. This command will update the list of contributors (from the Git history) in `package.json`, and add GitHub links to `CHANGELOG.md`. + 1. These changes are then added to the Git "stage" and will be added to the commit. +1. Push `master` to `origin` with your new tag; e.g. `git push origin master --tags` +1. Copy & paste the `CHANGELOG.md` lines to a new GitHub "release". Save release as draft. +1. Meanwhile, you can check [the build](https://travis-ci.org/mochajs/mocha) on Travis-CI and [AppVeyor](https://ci.appveyor.com/project/boneskull/mocha). +1. Once the build is green, and you're satisfied with the release notes, open your draft release on GitHub, then click "publish." +1. Back in your working copy, run `npm publish`. *If you're doing a prerelease, ensure that you use `--tag=next`.* +1. Announce the update on Twitter or just tell your dog or something. New releases will be automatically tweeted by [@b0neskull](https://twitter.com/b0neskull) via a feed subscription to Mocha's "releases" page on GitHub. + +In addition to above, you'll need to ensure the docs at [https://mochajs.org](https://mochajs.org) are updated: + +1. *If you're doing a prerelease*, fast-forward the `next` branch to `master`, and push it. This updates [https://next.mochajs.org](https://next.mochajs.org). That's all. +1. *If this is NOT a prerelease*, fast-forward the `mochajs.org` branch to `master` and push it. This updates [https://mochajs.org](https://mochajs.org). +1. *If this is a "final" release* (the first release of a major *after* one or more prereleases) then remove the `next` tag from npm via `npm dist-tag rm next`. + +*Note: there are too many steps above.* + +## About The JS Foundation + +The [JS Foundation](https://js.foundation) retains copyright of all projects underneath the [mochajs org](https://github.com/mochajs). The Foundation does not influence technical decisions nor the project roadmap. It is, however, charged with ensuring the continued vitality and sustainability of projects under its banner. + +As a maintainer, you have access to the resources the JS Foundation provides. + +## About OpenCollective + +Mocha collects donations [via OpenCollective](https://opencollective.com/mochajs). As a maintainer, you may help decide how the funds are used. These decisions are made via a consensus-seeking process, much like any other decision. + +Expense transparency is built in to OpenCollective. + +* * * + +Questions? Ask in the [contributors' chat room](https://gitter.im/mochajs/contributors)! diff --git a/Makefile b/Makefile deleted file mode 100644 index b29655f2e1..0000000000 --- a/Makefile +++ /dev/null @@ -1,170 +0,0 @@ -BROWSERIFY := "node_modules/.bin/browserify" -KARMA := "node_modules/.bin/karma" -MOCHA := "bin/mocha" -NYC := "node_modules/.bin/nyc" - -ifdef COVERAGE -define test_node - $(NYC) --report-dir coverage/reports/$(1) $(MOCHA) -endef -else - test_node := $(MOCHA) -endif - -TM_BUNDLE = JavaScript\ mocha.tmbundle -SRC = $(shell find lib -name "*.js" -type f | LC_ALL=C sort) -TESTS = $(shell find test -name "*.js" -type f | sort) - -all: mocha.js - -mocha.js BUILDTMP/mocha.js: $(SRC) browser-entry.js - @printf "==> [Browser :: build]\n" - mkdir -p ${@D} - $(BROWSERIFY) ./browser-entry \ - --plugin ./scripts/dedefine \ - --ignore 'fs' \ - --ignore 'glob' \ - --ignore 'path' \ - --ignore 'supports-color' > $@ - -clean: - @printf "==> [Clean]\n" - rm -rf BUILDTMP - -lint: - @printf "==> [Test :: Lint]\n" - npm run lint - -test-node: test-bdd test-tdd test-qunit test-exports test-unit test-integration test-jsapi test-compilers test-requires test-reporters test-only test-global-only - -test-browser: clean BUILDTMP/mocha.js test-browser-unit test-browser-bdd test-browser-qunit test-browser-tdd test-browser-exports - -test: lint test-node test-browser - -test-browser-unit: - @printf "==> [Test :: Browser]\n" - NODE_PATH=BUILDTMP $(KARMA) start --single-run - -test-browser-bdd: - @printf "==> [Test :: Browser :: BDD]\n" - MOCHA_UI=bdd $(MAKE) test-browser-unit - -test-browser-qunit: - @printf "==> [Test :: Browser :: QUnit]\n" - MOCHA_UI=qunit $(MAKE) test-browser-unit - -test-browser-tdd: - @printf "==> [Test :: Browser :: TDD]\n" - MOCHA_UI=tdd $(MAKE) test-browser-unit - -test-jsapi: - @printf "==> [Test :: JS API]\n" - node test/jsapi - -test-unit: - @printf "==> [Test :: Unit]\n" - $(call test_node,unit) test/unit/*.spec.js \ - test/node-unit/*.spec.js \ - --growl - -test-integration: - @printf "==> [Test :: Integrations]\n" - $(call test_node,integration) --timeout 5000 \ - test/integration/*.spec.js - -test-compilers: - @printf "==> [Test :: Compilers]\n" - $(call test_node,compilers-coffee) --compilers coffee:coffee-script/register \ - test/compiler - - $(call test_node,compilers-custom) --compilers foo:./test/compiler-fixtures/foo \ - test/compiler - - $(call test_node,compilers-multiple) \ - --compilers coffee:coffee-script/register,foo:./test/compiler-fixtures/foo \ - test/compiler - -test-requires: - @printf "==> [Test :: Requires]\n" - $(call test_node,requires) --compilers coffee:coffee-script/register \ - --require test/require/a.js \ - --require test/require/b.coffee \ - --require test/require/c.js \ - --require test/require/d.coffee \ - test/require/require.spec.js - -test-bdd: - @printf "==> [Test :: BDD]\n" - $(call test_node,bdd) --ui bdd \ - test/interfaces/bdd.spec - -test-tdd: - @printf "==> [Test :: TDD]\n" - $(call test_node,tdd) --ui tdd \ - test/interfaces/tdd.spec - -test-qunit: - @printf "==> [Test :: QUnit]\n" - $(call test_node,qunit) --ui qunit \ - test/interfaces/qunit.spec - -test-exports: - @printf "==> [Test :: Exports]\n" - $(call test_node,exports) --ui exports \ - test/interfaces/exports.spec - -test-reporters: - @printf "==> [Test :: Reporters]\n" - $(call test_node,reporters) test/reporters/*.spec.js - -test-only: - @printf "==> [Test :: Only]\n" - $(call test_node,only-tdd) --ui tdd \ - test/misc/only/tdd.spec - - $(call test_node,only-bdd) --ui bdd \ - test/misc/only/bdd.spec - - $(call test_node,only-bdd-require) --ui qunit \ - test/misc/only/bdd-require.spec - -test-global-only: - @printf "==> [Test :: Global Only]\n" - $(call test_node,global-only-tdd) --ui tdd \ - test/misc/only/global/tdd.spec - - $(call test_node,global-only-bdd) --ui bdd \ - test/misc/only/global/bdd.spec - - $(call test_node,global-only-qunit) --ui qunit \ - test/misc/only/global/qunit.spec - -test-mocha: - @printf "==> [Test :: Mocha]\n" - $(call test_node,mocha) test/mocha - -non-tty: - @printf "==> [Test :: Non-TTY]\n" - $(call test_node,non-tty-dot) --reporter dot \ - test/interfaces/bdd.spec 2>&1 > /tmp/dot.out - - @echo dot: - @cat /tmp/dot.out - - $(call test_node,non-tty-list) --reporter list \ - test/interfaces/bdd.spec 2>&1 > /tmp/list.out - - @echo list: - @cat /tmp/list.out - - $(call test_node,non-tty-spec) --reporter spec \ - test/interfaces/bdd.spec 2>&1 > /tmp/spec.out - - @echo spec: - @cat /tmp/spec.out - -tm: - @printf "==> [TM]\n" - open editors/$(TM_BUNDLE) - -.PHONY: test-jsapi test-compilers watch test test-node test-bdd test-tdd test-qunit test-exports test-unit test-integration non-tty tm clean test-browser test-browser-unit test-browser-bdd test-browser-qunit test-browser-tdd test-browser-exports lint test-only test-global-only diff --git a/README.md b/README.md index 9e4d4dcbea..8128519691 100644 --- a/README.md +++ b/README.md @@ -1,121 +1,102 @@ -# Mocha needs YOU! - -*Did you know* Mocha [is a dependency of over 100,000 projects](https://libraries.io/npm/mocha) published to npm alone? - -**Despite this, we're currently unable to merge most pull requests due to lack of maintenance resources.** - -**Are you interested in triaging issues or reviewing open PRs? Have some time to hack on its codebase?** If you would like to help maintain Mocha, please contact `@boneskull` on [Gitter](https://gitter.im/mochajs/mocha). - -*Thank you* :kissing_heart: to all of you interested in helping. These are Mocha's immediate needs: - -1. Increase test coverage on Node.js and browser - - Increase integration coverage for all reporters - - `html` reporter must be tested in browser - - ~~Basic console reporters (*not* `nyan`, `landing`, etc.) must be tested in **both** browser and Node.js contexts; PhantomJS can consume all console reporters~~ - - ~~Filesystem-based reporters must be tested in Node.js context~~ - - **UPDATE - May 24 2017**: Thanks to [community contributions](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md#mag-coverage), the coverage on most reporters has increased dramatically! The `html` reporter is still in [dire need of coverage](https://coveralls.io/builds/11674428/source?filename=lib%2Freporters%2Fhtml.js). - - Increase coverage against all interfaces (`exports` in particular). Ideally this becomes a "matrix" where we repeat sets of integration tests across all interfaces. - - Refactor non-Node.js-specific tests to allow them to run in a browser context. Node.js-specific tests include those which *require* the CLI or filesystem. Most everything else is fair game. -2. Review current open pull requests - - We need individuals familiar with Mocha's codebase. Got questions? Ask them in [our chat room](https://gitter.im/mochajs/mocha). - - Pull requests **must** have supporting tests. The only exceptions are pure cosmetic or non-functional changes. - - Pull request contributors must sign the CLA. -3. Close old, inactive issues and pull requests - - ~~A bot should do this. We need a bot. Got a bot?~~ We now use GitHub's own [probot-stale](https://www.npmjs.com/package/probot-stale). -4. Triage issues - - If we run into "critical" bugs, they need fixing. - - "Critical" means Mocha is broken w/o workarounds for a *large percentage* of users - - Otherwise: respond to issues, close new dupe issues, confirm bugs, ask for more info, etc. - -Once we gain ground on the above items, we can work together formalize our contribution guidelines and governance. For further info & ideas, please see our [projects](https://github.com/mochajs/mocha/projects/). - -*You needn't be a maintainer to submit a pull request for test coverage!* - --- @boneskull, *Jan 17 2016* - -

Mocha test framework

-[![Build Status](https://api.travis-ci.org/mochajs/mocha.svg?branch=master)](http://travis-ci.org/mochajs/mocha) -[![Coverage Status](https://coveralls.io/repos/github/mochajs/mocha/badge.svg)](https://coveralls.io/github/mochajs/mocha) -[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fmochajs%2Fmocha.svg?type=shield)](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fmochajs%2Fmocha?ref=badge_shield) -[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/mochajs/mocha?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) -[![OpenCollective](https://opencollective.com/mochajs/backers/badge.svg)](#backers) -[![OpenCollective](https://opencollective.com/mochajs/sponsors/badge.svg)](#sponsors) -
Mocha Browser Support h/t SauceLabs +

:coffee: Simple, flexible, fun JavaScript test framework for Node.js & The Browser :coffee:

+ +

Build Status Coverage Status FOSSA Status Gitter OpenCollective OpenCollective +

- Mocha is a simple, flexible, fun JavaScript test framework for node.js and the browser. For more information view the [documentation](http://mochajs.org). +


Mocha Browser Support h/t SauceLabs

## Links - - [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md) - - [Google Group](http://groups.google.com/group/mochajs) - - [Wiki](https://github.com/mochajs/mocha/wiki) - - Mocha [Extensions and reporters](https://github.com/mochajs/mocha/wiki) - +- **[Documentation](https://mochajs.org/)** +- **[Release Notes / History / Changes](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)** +- [Code of Conduct](https://github.com/mochajs/mocha/blob/master/.github/CODE_OF_CONDUCT.md) +- [Contributing](https://github.com/mochajs/mocha/blob/master/.github/CONTRIBUTING.md) +- [Gitter Chatroom](https://gitter.im/mochajs/mocha) (ask questions here!) +- [Google Group](https://groups.google.com/group/mochajs) +- [Issue Tracker](https://github.com/mochajs/mocha/issues) ## Backers -[Become a backer]((https://opencollective.com/mochajs#backer)) and show your support to our open source project. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +[Become a backer](https://opencollective.com/mochajs#backer) and show your support to our open source project. + +[![MochaJS Backer](https://opencollective.com/mochajs/backer/0/avatar)](https://opencollective.com/mochajs/backer/0/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/1/avatar)](https://opencollective.com/mochajs/backer/1/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/2/avatar)](https://opencollective.com/mochajs/backer/2/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/3/avatar)](https://opencollective.com/mochajs/backer/3/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/4/avatar)](https://opencollective.com/mochajs/backer/4/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/5/avatar)](https://opencollective.com/mochajs/backer/5/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/6/avatar)](https://opencollective.com/mochajs/backer/6/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/7/avatar)](https://opencollective.com/mochajs/backer/7/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/8/avatar)](https://opencollective.com/mochajs/backer/8/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/9/avatar)](https://opencollective.com/mochajs/backer/9/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/10/avatar)](https://opencollective.com/mochajs/backer/10/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/11/avatar)](https://opencollective.com/mochajs/backer/11/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/12/avatar)](https://opencollective.com/mochajs/backer/12/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/13/avatar)](https://opencollective.com/mochajs/backer/13/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/14/avatar)](https://opencollective.com/mochajs/backer/14/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/15/avatar)](https://opencollective.com/mochajs/backer/15/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/16/avatar)](https://opencollective.com/mochajs/backer/16/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/17/avatar)](https://opencollective.com/mochajs/backer/17/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/18/avatar)](https://opencollective.com/mochajs/backer/18/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/19/avatar)](https://opencollective.com/mochajs/backer/19/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/20/avatar)](https://opencollective.com/mochajs/backer/20/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/21/avatar)](https://opencollective.com/mochajs/backer/21/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/22/avatar)](https://opencollective.com/mochajs/backer/22/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/23/avatar)](https://opencollective.com/mochajs/backer/23/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/24/avatar)](https://opencollective.com/mochajs/backer/24/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/25/avatar)](https://opencollective.com/mochajs/backer/25/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/26/avatar)](https://opencollective.com/mochajs/backer/26/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/27/avatar)](https://opencollective.com/mochajs/backer/27/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/28/avatar)](https://opencollective.com/mochajs/backer/28/website) +[![MochaJS Backer](https://opencollective.com/mochajs/backer/29/avatar)](https://opencollective.com/mochajs/backer/29/website) ## Sponsors -Does your company use Mocha? Ask your manager or marketing team if your company would be interested in supporting our project. Support will allow the maintainers to dedicate more time for maintenance and new features for everyone. Also, your company's logo will show [on GitHub](https://github.com/mochajs/mocha#readme) and on [our site](https://mochajs.org)--who doesn't want a little extra exposure? [Here's the info](https://opencollective.com/mochajs#sponsor). - - - - - - - - - - - - - - - - - - - - - +Does your company use Mocha? Ask your manager or marketing team if your company would be interested in supporting our project. Support will allow the maintainers to dedicate more time for maintenance and new features for everyone. Also, your company's logo will show [on GitHub](https://github.com/mochajs/mocha#readme) and on [our site](https://mochajs.org) - who doesn't want a little extra exposure? [Here's the info](https://opencollective.com/mochajs#sponsor). + +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/0/avatar)](https://opencollective.com/mochajs/sponsor/0/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/1/avatar)](https://opencollective.com/mochajs/sponsor/1/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/2/avatar)](https://opencollective.com/mochajs/sponsor/2/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/3/avatar)](https://opencollective.com/mochajs/sponsor/3/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/4/avatar)](https://opencollective.com/mochajs/sponsor/4/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/5/avatar)](https://opencollective.com/mochajs/sponsor/5/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/6/avatar)](https://opencollective.com/mochajs/sponsor/6/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/7/avatar)](https://opencollective.com/mochajs/sponsor/7/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/8/avatar)](https://opencollective.com/mochajs/sponsor/8/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/9/avatar)](https://opencollective.com/mochajs/sponsor/9/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/10/avatar)](https://opencollective.com/mochajs/sponsor/10/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/11/avatar)](https://opencollective.com/mochajs/sponsor/11/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/12/avatar)](https://opencollective.com/mochajs/sponsor/12/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/13/avatar)](https://opencollective.com/mochajs/sponsor/13/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/14/avatar)](https://opencollective.com/mochajs/sponsor/14/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/15/avatar)](https://opencollective.com/mochajs/sponsor/15/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/16/avatar)](https://opencollective.com/mochajs/sponsor/16/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/17/avatar)](https://opencollective.com/mochajs/sponsor/17/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/18/avatar)](https://opencollective.com/mochajs/sponsor/18/website) +[![MochaJS Backer](https://opencollective.com/mochajs/sponsor/19/avatar)](https://opencollective.com/mochajs/sponsor/19/website) + +## Development + +You might want to know that: + +- Mocha is the *most-depended-upon* module on npm (source: [libraries.io](https://libraries.io/search?order=desc&platforms=NPM&sort=dependents_count)), and +- Mocha is an *independent* open-source project, maintained exclusively by volunteers. + +You might want to help: + +- New to contributing to Mocha? Check out this list of [good first issues](https://github.com/mochajs/mocha/issues?q=is%3Aissue+is%3Aopen+label%3Agood-first-issue) +- Mocha could use a hand with [these issues](https://github.com/mochajs/mocha/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) +- The [maintainer's handbook](https://github.com/mochajs/mocha/blob/master/MAINTAINERS.md) explains how things get done + +Finally, come [chat with the maintainers](https://gitter.im/mochajs/contributors) on Gitter if you want to help with: + +- Triaging issues, answering questions +- Review, merging, and closing pull requests +- Other project-maintenance-y things ## License diff --git a/appveyor.yml b/appveyor.yml index ff832db835..4feecb1635 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,28 +1,76 @@ +### +### appveyor.yml +### + +## General configuration +version: '{build}' +skip_commits: + message: /\[ci\s+skip\]/ + +## Environment configuration +shallow_clone: true +clone_depth: 1 environment: matrix: + - nodejs_version: '12' + - nodejs_version: '10' - nodejs_version: '8' - - nodejs_version: '7' - - nodejs_version: '6' - - nodejs_version: '4' - - nodejs_version: '0.12' - - nodejs_version: '0.10' -install: - - ps: Install-Product node $env:nodejs_version - - set CI=true - - set PATH=%APPDATA%\npm;c:\MinGW\bin;%PATH% - - set PHANTOMJS_CDNURL=https://cnpmjs.org/downloads - - npm install - - copy c:\MinGW\bin\mingw32-make.exe c:\MinGW\bin\make.exe matrix: fast_finish: true -build: off -version: '{build}' -shallow_clone: true -clone_depth: 1 +install: + ## Manual Growl install + - ps: Add-AppveyorMessage "Installing Growl..." + - ps: $seaURL = "https://github.com/briandunnington/growl-for-windows/releases/download/final/GrowlInstaller.exe" + - ps: $seaPath = "$($env:USERPROFILE)\GrowlInstaller.exe" + - ps: $webclient = New-Object Net.WebClient + - ps: $webclient.DownloadFile($seaURL, $seaPath) + - ps: mkdir C:\GrowlInstaller | out-null + - ps: 7z x $seaPath -oC:\GrowlInstaller | out-null + - ps: cmd /c start /wait msiexec /i C:\GrowlInstaller\Growl_v2.0.msi /quiet + - ps: $env:path = "C:\Program Files (x86)\Growl for Windows;$env:path" + ## Growl requires some time before it's ready to handle notifications + - ps: Add-AppveyorMessage "Starting Growl service..." + - ps: Start-Process -NoNewWindow Growl + ## Node-related installs + - ps: Add-AppveyorMessage "Installing Node..." + - set PATH=%APPDATA%\npm;C:\MinGW\bin;%PATH% + ## Prefer pre-installed Node versions, with fallback to manual update + - ps: | + try { + Install-Product node $env:nodejs_version $env:platform + } catch { + Add-AppveyorMessage " install failed - attempting manual update..." + Update-NodeJsInstallation (Get-NodeJsLatestBuild $env:nodejs_version) $env:platform + } + - ps: Add-AppveyorMessage "Installing npm..." + - npm install -g npm + ## Mocha-related package installs + - ps: Add-AppveyorMessage "Installing Mocha dependencies..." + - npm ci --ignore-scripts + +## Build configuration +platform: + - x64 +build: script +build_script: + - ps: Add-AppveyorMessage "Verify Growl responding..." + - ps: growlnotify test + +## Test configuration +before_test: + - set CI=true test_script: + - ps: Add-AppveyorMessage "Displaying version information" + - ps: (Get-ComputerInfo -Property OsName,OsVersion,OsArchitecture | Format-Table -HideTableHeaders -AutoSize | Out-String).Trim() - node --version - npm --version - - make test-node -skip_commits: - message: /\[ci\s+skip\]/ + - ps: Add-AppveyorMessage "Running tests..." + - npm start test.node + - ps: Add-AppveyorMessage "Done" +## Notifications +notifications: + - provider: Email + on_build_success: false + on_build_failure: false + on_build_status_changed: false diff --git a/images/error.png b/assets/growl/error.png similarity index 100% rename from images/error.png rename to assets/growl/error.png diff --git a/images/ok.png b/assets/growl/ok.png similarity index 100% rename from images/ok.png rename to assets/growl/ok.png diff --git a/assets/mocha-logo-96.png b/assets/mocha-logo-96.png new file mode 100644 index 0000000000000000000000000000000000000000..dba31bc955d7d82258188fae7221a52e3288c04b GIT binary patch literal 4935 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 FV1ml*Y-<1j literal 0 HcmV?d00001 diff --git a/assets/opencollective-header.png b/assets/opencollective-header.png new file mode 100644 index 0000000000000000000000000000000000000000..fbb1dab2b576a40bd9e55166229b974cd70084b6 GIT binary patch literal 74747 zcmZs@bwE_x_dYx{ij*MTqXJUWJwp#ji_+bt)X*&;DBYbycPmIqNJ_Vg^e}XHyu(%R z_4EC`{-MM1aP~fXuf5juJZr6ar=kSGy-RTy007|1$x1y30ML;iQCzVxk^cyz3hLed zb#-NT#{{8c7o=_|E|3-T4^!v4tFUWEGKOCIwPdWa5 zHu6_RZm$X{J6f3`N4|YNh*RXBJOAg}?{P#pZU_HsGQZyRpR34M1>F_l_;=YrcNN+h zwEzGyfSi>03pbR_be&4Gm(JH89G_r3VaBCkmMOn;hG3sOHrMxE-DZV$4y}mhoNp>o$ zJDGtWHh96Tx9TR-Ou__LKdfqdh6{G5ZSdN8jHO=Ny~tKfsT(@{RedbltTXi0NXr1}&?DegT4*KPWbk1UM@zPup8HBX440BG%w=<$(_=N+ z;-UVJ4xAre2VW;HucF8ADd zI$VQAMhrRA(VPMoPVpVCqkF4Wl|lI;uLLWceNGpGhf3s2wtEcR7J|CA2Wp%*CPx=k zI>c7iTg^_ke>4w*xlVri-e5QP{BT5n)}qNln%{?N*1apq2~`6amZ;>V86ZntB1a(I9wo?vdzy%GE! zWuN_6jC0@fvCN1;@XaOR1r?`Q)w!L~_)UiAwv{Fq*nKENG>>ThyVDRg=l=EKnDUT? zti`nNq?Sc^gur6RXV`(9^bSJhTV9Bbc&%jS*5b+B?+M?owEVj^n?+)P{xI1q|JMyG zB(0UKkM<{D-EKo6otT@qO{W2DLoXe3k6d5XKruy1h7cfdHm&A#Y!l>l+CfW0?YzER$)0>Aba(C2F)&Pbc9R%*H z@ER3bH7s+{a9rE$@#}w`p?FzQ=mF&XT3kW*3Ol+V)?51?e~;^U|U9OM4l*mXr( zuSURU-XF_6+q^VD7OP$oU$nL+!UTo(m!bZ1!VEDOo@Ss{qQ0t;`!zu2J?u`xtMbLQ zhaWe}KlKp@u#|r^MqvRi=`{`t!qesiFLC1X1GCey7gHyA0EiB%mQ{k*wWz6AvX3vu z|Jr62O#eM%zXvAKxSan?-Ty%-AbZF5?$yxS`h3Es-FBQ6qMEYHQpSv$YH+RR$@XV8 zY&?N^KZXvU6s}PFQ&n$e(An~6Z*~M;zSL9R9QC*RNi^c{JJb(tC1Gq5dmx^_Rz!hd zm)I}4&GON&cNh-xn|y32<@0>D(nykU#5hQDxvT$;Urlba=Se~rb{>(1emcrC6Xn3R z1U4O+U@FI+wc~Ggw47hxNZ*qa-f22uD2WXJ?SPPLRcVX;5zTNW%SHV5@%~4l0Gu3|;^kq9Xj*;%YH(2`HoJg^)LRg2OyHsoEpt_4+Rh z)dD`{w+WiG_Gek*sFI`!{vXnJD1 z5w_L2D(V6M@lfxj43XXfMlI|TcI$qH)(c@W%HS(#LAr*%yO|ch-x`W(@cmF+iLjRL zt_$mZ1rC9Y(wZ-qyfk@)?L*_J$9f(PJ)cf*KkJ=^w1oo7uWU9cC~p0w`aM*EgKr<~IF6w~qrQK9 z2@Ia$Sq`Ou?tST#dp%XI2kcvqHObW<@0Mq3C3 _~54wGA^zgzw5yp0e-UfBq5W+ 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 literal 0 HcmV?d00001 diff --git a/bin/_mocha b/bin/_mocha index c37d49fef5..2ea8317467 100755 --- a/bin/_mocha +++ b/bin/_mocha @@ -1,572 +1,10 @@ #!/usr/bin/env node 'use strict'; -/* eslint no-unused-vars: off */ - -/** - * Module dependencies. - */ - -var program = require('commander'); -var path = require('path'); -var fs = require('fs'); -var resolve = path.resolve; -var exists = fs.existsSync || path.existsSync; -var Mocha = require('../'); -var utils = Mocha.utils; -var interfaceNames = Object.keys(Mocha.interfaces); -var join = path.join; -var cwd = process.cwd(); -var getOptions = require('./options'); -var mocha = new Mocha(); - -/** - * Save timer references to avoid Sinon interfering (see GH-237). - */ - -var Date = global.Date; -var setTimeout = global.setTimeout; -var setInterval = global.setInterval; -var clearTimeout = global.clearTimeout; -var clearInterval = global.clearInterval; - -/** - * Files. - */ - -var files = []; - -/** - * Globals. - */ - -var globals = []; - -/** - * Requires. - */ - -var requires = []; - -/** - * Images. - */ - -var images = { - fail: path.join(__dirname, '..', 'images', 'error.png'), - pass: path.join(__dirname, '..', 'images', 'ok.png') -}; - -// options - -program - .version(JSON.parse(fs.readFileSync(path.join(__dirname, '..', 'package.json'), 'utf8')).version) - .usage('[debug] [options] [files]') - .option('-A, --async-only', 'force all tests to take a callback (async) or return a promise') - .option('-c, --colors', 'force enabling of colors') - .option('-C, --no-colors', 'force disabling of colors') - .option('-G, --growl', 'enable growl notification support') - .option('-O, --reporter-options ', 'reporter-specific options') - .option('-R, --reporter ', 'specify the reporter to use', 'spec') - .option('-S, --sort', 'sort test files') - .option('-b, --bail', 'bail after first test failure') - .option('-d, --debug', "enable node's debugger, synonym for node --debug") - .option('-g, --grep ', 'only run tests matching ') - .option('-f, --fgrep ', 'only run tests containing ') - .option('-gc, --expose-gc', 'expose gc extension') - .option('-i, --invert', 'inverts --grep and --fgrep matches') - .option('-r, --require ', 'require the given module') - .option('-s, --slow ', '"slow" test threshold in milliseconds [75]') - .option('-t, --timeout ', 'set test-case timeout in milliseconds [2000]') - .option('-u, --ui ', 'specify user-interface (' + interfaceNames.join('|') + ')', 'bdd') - .option('-w, --watch', 'watch files for changes') - .option('--check-leaks', 'check for global variable leaks') - .option('--full-trace', 'display the full stack trace') - .option('--compilers :,...', 'use the given module(s) to compile files', list, []) - .option('--debug-brk', "enable node's debugger breaking on the first line") - .option('--globals ', 'allow the given comma-delimited global [names]', list, []) - .option('--es_staging', 'enable all staged features') - .option('--harmony<_classes,_generators,...>', 'all node --harmony* flags are available') - .option('--preserve-symlinks', 'Instructs the module loader to preserve symbolic links when resolving and caching modules') - .option('--icu-data-dir', 'include ICU data') - .option('--inline-diffs', 'display actual/expected differences inline within each string') - .option('--inspect', 'activate devtools in chrome') - .option('--inspect-brk', 'activate devtools in chrome and break on the first line') - .option('--interfaces', 'display available interfaces') - .option('--no-deprecation', 'silence deprecation warnings') - .option('--no-exit', 'require a clean shutdown of the event loop: mocha will not call process.exit') - .option('--no-timeouts', 'disables timeouts, given implicitly with --debug') - .option('--no-warnings', 'silence all node process warnings') - .option('--opts ', 'specify opts path', 'test/mocha.opts') - .option('--perf-basic-prof', 'enable perf linux profiler (basic support)') - .option('--napi-modules', 'enable experimental NAPI modules') - .option('--prof', 'log statistical profiling information') - .option('--log-timer-events', 'Time events including external callbacks') - .option('--recursive', 'include sub directories') - .option('--reporters', 'display available reporters') - .option('--retries ', 'set numbers of time to retry a failed test case') - .option('--throw-deprecation', 'throw an exception anytime a deprecated function is used') - .option('--trace', 'trace function calls') - .option('--trace-deprecation', 'show stack traces on deprecations') - .option('--trace-warnings', 'show stack traces on node process warnings') - .option('--use_strict', 'enforce strict mode') - .option('--watch-extensions ,...', 'additional extensions to monitor with --watch', list, []) - .option('--delay', 'wait for async suite definition') - .option('--allow-uncaught', 'enable uncaught errors to propagate') - .option('--forbid-only', 'causes test marked with only to fail the suite') - .option('--forbid-pending', 'causes pending tests and test marked with skip to fail the suite'); - -program._name = 'mocha'; - -// init command - -program - .command('init ') - .description('initialize a client-side mocha setup at ') - .action(function (path) { - var mkdir = require('mkdirp'); - mkdir.sync(path); - var css = fs.readFileSync(join(__dirname, '..', 'mocha.css')); - var js = fs.readFileSync(join(__dirname, '..', 'mocha.js')); - var tmpl = fs.readFileSync(join(__dirname, '..', 'lib/template.html')); - fs.writeFileSync(join(path, 'mocha.css'), css); - fs.writeFileSync(join(path, 'mocha.js'), js); - fs.writeFileSync(join(path, 'tests.js'), ''); - fs.writeFileSync(join(path, 'index.html'), tmpl); - process.exit(0); - }); - -// --globals - -program.on('globals', function (val) { - globals = globals.concat(list(val)); -}); - -// --reporters - -program.on('reporters', function () { - console.log(); - console.log(' dot - dot matrix'); - console.log(' doc - html documentation'); - console.log(' spec - hierarchical spec list'); - console.log(' json - single json object'); - console.log(' progress - progress bar'); - console.log(' list - spec-style listing'); - console.log(' tap - test-anything-protocol'); - console.log(' landing - unicode landing strip'); - console.log(' xunit - xunit reporter'); - console.log(' min - minimal reporter (great with --watch)'); - console.log(' json-stream - newline delimited json events'); - console.log(' markdown - markdown documentation (github flavour)'); - console.log(' nyan - nyan cat!'); - console.log(); - process.exit(); -}); - -// --interfaces - -program.on('interfaces', function () { - console.log(''); - interfaceNames.forEach(function (interfaceName) { - console.log(' ' + interfaceName); - }); - console.log(''); - process.exit(); -}); - -// -r, --require - -module.paths.push(cwd, join(cwd, 'node_modules')); - -program.on('require', function (mod) { - var abs = exists(mod) || exists(mod + '.js'); - if (abs) { - mod = resolve(mod); - } - requires.push(mod); -}); - -// If not already done, load mocha.opts -if (!process.env.LOADED_MOCHA_OPTS) { - getOptions(); -} - -// parse args - -program.parse(process.argv); - -// infinite stack traces - -Error.stackTraceLimit = Infinity; // TODO: config - -// reporter options - -var reporterOptions = {}; -if (program.reporterOptions !== undefined) { - program.reporterOptions.split(',').forEach(function (opt) { - var L = opt.split('='); - if (L.length > 2 || L.length === 0) { - throw new Error("invalid reporter option '" + opt + "'"); - } else if (L.length === 2) { - reporterOptions[L[0]] = L[1]; - } else { - reporterOptions[L[0]] = true; - } - }); -} - -// reporter - -mocha.reporter(program.reporter, reporterOptions); - -// load reporter - -var Reporter = null; -try { - Reporter = require('../lib/reporters/' + program.reporter); -} catch (err) { - try { - Reporter = require(program.reporter); - } catch (err2) { - throw new Error('reporter "' + program.reporter + '" does not exist'); - } -} - -// --no-colors - -if (!program.colors) { - mocha.useColors(false); -} - -// --colors - -if (~process.argv.indexOf('--colors') || ~process.argv.indexOf('-c')) { - mocha.useColors(true); -} - -// --inline-diffs - -if (program.inlineDiffs) { - mocha.useInlineDiffs(true); -} - -// --slow - -if (program.slow) { - mocha.suite.slow(program.slow); -} - -// --no-timeouts - -if (!program.timeouts) { - mocha.enableTimeouts(false); -} - -// --timeout - -if (program.timeout) { - mocha.suite.timeout(program.timeout); -} - -// --bail - -mocha.suite.bail(program.bail); - -// --grep - -if (program.grep) { - mocha.grep(program.grep); -} - -// --fgrep - -if (program.fgrep) { - mocha.fgrep(program.fgrep); -} - -// --invert - -if (program.invert) { - mocha.invert(); -} - -// --check-leaks - -if (program.checkLeaks) { - mocha.checkLeaks(); -} - -// --stack-trace - -if (program.fullTrace) { - mocha.fullTrace(); -} - -// --growl - -if (program.growl) { - mocha.growl(); -} - -// --async-only - -if (program.asyncOnly) { - mocha.asyncOnly(); -} - -// --delay - -if (program.delay) { - mocha.delay(); -} - -// --allow-uncaught - -if (program.allowUncaught) { - mocha.allowUncaught(); -} - -// --globals - -mocha.globals(globals); - -// --retries - -if (program.retries) { - mocha.suite.retries(program.retries); -} - -// --forbid-only - -if (program.forbidOnly) mocha.forbidOnly(); - -// --forbid-pending - -if (program.forbidPending) mocha.forbidPending(); - -// custom compiler support - -var extensions = ['js']; -program.compilers.forEach(function (c) { - var idx = c.indexOf(':'); - var ext = c.slice(0, idx); - var mod = c.slice(idx + 1); - - if (mod[0] === '.') { - mod = join(process.cwd(), mod); - } - require(mod); - extensions.push(ext); - program.watchExtensions.push(ext); -}); - -// requires - -requires.forEach(function (mod) { - require(mod); -}); - -// interface - -mocha.ui(program.ui); - -// args - -var args = program.args; - -// default files to test/*.{js,coffee} - -if (!args.length) { - args.push('test'); -} - -args.forEach(function (arg) { - var newFiles; - try { - newFiles = utils.lookupFiles(arg, extensions, program.recursive); - } catch (err) { - if (err.message.indexOf('cannot resolve path') === 0) { - console.error('Warning: Could not find any test files matching pattern: ' + arg); - return; - } - - throw err; - } - - files = files.concat(newFiles); -}); - -if (!files.length) { - console.error('No test files found'); - process.exit(1); -} - -// resolve - -files = files.map(function (path) { - return resolve(path); -}); - -if (program.sort) { - files.sort(); -} - -// --watch - -var runner; -var loadAndRun; -var purge; -var rerun; - -if (program.watch) { - console.log(); - hideCursor(); - process.on('SIGINT', function () { - showCursor(); - console.log('\n'); - process.exit(130); - }); - - var watchFiles = utils.files(cwd, [ 'js' ].concat(program.watchExtensions)); - var runAgain = false; - - loadAndRun = function loadAndRun () { - try { - mocha.files = files; - runAgain = false; - runner = mocha.run(function () { - runner = null; - if (runAgain) { - rerun(); - } - }); - } catch (e) { - console.log(e.stack); - } - }; - - purge = function purge () { - watchFiles.forEach(function (file) { - delete require.cache[file]; - }); - }; - - loadAndRun(); - - rerun = function rerun () { - purge(); - stop(); - if (!program.grep) { - mocha.grep(null); - } - mocha.suite = mocha.suite.clone(); - mocha.suite.ctx = new Mocha.Context(); - mocha.ui(program.ui); - loadAndRun(); - }; - - utils.watch(watchFiles, function () { - runAgain = true; - if (runner) { - runner.abort(); - } else { - rerun(); - } - }); -} else { -// load - - mocha.files = files; - runner = mocha.run(program.exit ? exit : exitLater); -} - -function exitLater (code) { - process.on('exit', function () { - process.exit(Math.min(code, 255)); - }); -} - -function exit (code) { - var clampedCode = Math.min(code, 255); - - // Eagerly set the process's exit code in case stream.write doesn't - // execute its callback before the process terminates. - process.exitCode = clampedCode; - - // flush output for Node.js Windows pipe bug - // https://github.com/joyent/node/issues/6247 is just one bug example - // https://github.com/visionmedia/mocha/issues/333 has a good discussion - function done () { - if (!(draining--)) { - process.exit(clampedCode); - } - } - - var draining = 0; - var streams = [process.stdout, process.stderr]; - - streams.forEach(function (stream) { - // submit empty write request and wait for completion - draining += 1; - stream.write('', done); - }); - - done(); -} - -process.on('SIGINT', function () { - runner.abort(); - - // This is a hack: - // Instead of `process.exit(130)`, set runner.failures to 130 (exit code for SIGINT) - // The amount of failures will be emitted as error code later - runner.failures = 130; -}); - -/** - * Parse list. - */ - -function list (str) { - return str.split(/ *, */); -} - -/** - * Hide the cursor. - */ - -function hideCursor () { - process.stdout.write('\u001b[?25l'); -} - /** - * Show the cursor. + * This file remains for backwards compatibility only. + * Don't put stuff in this file. + * @see module:lib/cli */ -function showCursor () { - process.stdout.write('\u001b[?25h'); -} - -/** - * Stop play()ing. - */ - -function stop () { - process.stdout.write('\u001b[2K'); - clearInterval(play.timer); -} - -/** - * Play the given array of strings. - */ - -function play (arr, interval) { - var len = arr.length; - interval = interval || 100; - var i = 0; - - play.timer = setInterval(function () { - var str = arr[i++ % len]; - process.stdout.write('\u001b[0G' + str); - }, interval); -} +require('../lib/cli').main(); diff --git a/bin/mocha b/bin/mocha index d632fbc394..4b0ab8ff86 100755 --- a/bin/mocha +++ b/bin/mocha @@ -3,85 +3,130 @@ 'use strict'; /** - * This tiny wrapper file checks for known node flags and appends them - * when found, before invoking the "real" _mocha(1) executable. + * This wrapper executable checks for known node flags and appends them when found, + * before invoking the "real" executable (`lib/cli/cli.js`) + * + * @module bin/mocha + * @private */ -var spawn = require('child_process').spawn; -var path = require('path'); -var getOptions = require('./options'); -var args = [path.join(__dirname, '_mocha')]; - -// Load mocha.opts into process.argv -// Must be loaded here to handle node-specific options -getOptions(); - -process.argv.slice(2).forEach(function (arg) { - var flag = arg.split('=')[0]; - - switch (flag) { - case '-d': - args.unshift('--debug'); - args.push('--no-timeouts'); - break; - case 'debug': - case '--debug': - case '--debug-brk': - case '--inspect': - case '--inspect-brk': - args.unshift(arg); - args.push('--no-timeouts'); - break; - case '-gc': - case '--expose-gc': - args.unshift('--expose-gc'); - break; - case '--gc-global': - case '--es_staging': - case '--no-deprecation': - case '--no-warnings': - case '--prof': - case '--log-timer-events': - case '--throw-deprecation': - case '--trace-deprecation': - case '--trace-warnings': - case '--use_strict': - case '--allow-natives-syntax': - case '--perf-basic-prof': - case '--napi-modules': - args.unshift(arg); - break; - default: - if (arg.indexOf('--harmony') === 0) { - args.unshift(arg); - } else if (arg.indexOf('--trace') === 0) { - args.unshift(arg); - } else if (arg.indexOf('--icu-data-dir') === 0) { - args.unshift(arg); - } else if (arg.indexOf('--max-old-space-size') === 0) { - args.unshift(arg); - } else if (arg.indexOf('--preserve-symlinks') === 0) { - args.unshift(arg); - } else { - args.push(arg); - } - break; +const {deprecate} = require('../lib/utils'); +const {loadOptions} = require('../lib/cli/options'); +const { + unparseNodeFlags, + isNodeFlag, + impliesNoTimeouts +} = require('../lib/cli/node-flags'); +const unparse = require('yargs-unparser'); +const debug = require('debug')('mocha:cli:mocha'); +const {aliases} = require('../lib/cli/run-option-metadata'); + +const mochaArgs = {}; +const nodeArgs = {}; + +const opts = loadOptions(process.argv.slice(2)); +debug('loaded opts', opts); + +/** + * Given option/command `value`, disable timeouts if applicable + * @param {string} [value] - Value to check + * @ignore + */ +const disableTimeouts = value => { + if (impliesNoTimeouts(value)) { + debug(`option "${value}" disabled timeouts`); + mochaArgs.timeout = 0; + delete mochaArgs.timeouts; + delete mochaArgs.t; + } +}; + +/** + * If `value` begins with `v8-` and is not explicitly `v8-options`, remove prefix + * @param {string} [value] - Value to check + * @returns {string} `value` with prefix (maybe) removed + * @ignore + */ +const trimV8Option = value => + value !== 'v8-options' && /^v8-/.test(value) ? value.slice(3) : value; + +// sort options into "node" and "mocha" buckets +Object.keys(opts).forEach(opt => { + if (isNodeFlag(opt)) { + nodeArgs[trimV8Option(opt)] = opts[opt]; + disableTimeouts(opt); + } else { + mochaArgs[opt] = opts[opt]; } }); -var proc = spawn(process.execPath, args, { stdio: 'inherit' }); -proc.on('exit', function (code, signal) { - process.on('exit', function () { - if (signal) { - process.kill(process.pid, signal); - } else { - process.exit(code); - } +// Native debugger handling +// see https://nodejs.org/api/debugger.html#debugger_debugger +// look for 'inspect' or 'debug' that would launch this debugger, +// remove it from Mocha's opts and prepend it to Node's opts. +// A deprecation warning will be printed by node, if applicable. +// (mochaArgs._ are "positional" arguments, not prefixed with - or --) +if (mochaArgs._) { + const i = mochaArgs._.findIndex(val => val === 'inspect' || val === 'debug'); + if (i > -1) { + const [command] = mochaArgs._.splice(i, 1); + disableTimeouts('inspect'); + nodeArgs._ = [command]; + } +} + +// historical +if (nodeArgs.gc) { + deprecate( + '"-gc" is deprecated and will be removed from a future version of Mocha. Use "--gc-global" instead.' + ); + nodeArgs['gc-global'] = nodeArgs.gc; + delete nodeArgs.gc; +} + +// --require/-r is treated as Mocha flag except when 'esm' is preloaded +if (mochaArgs.require && mochaArgs.require.includes('esm')) { + nodeArgs.require = ['esm']; + mochaArgs.require = mochaArgs.require.filter(mod => mod !== 'esm'); + if (!mochaArgs.require.length) { + delete mochaArgs.require; + } + delete mochaArgs.r; +} + +if (Object.keys(nodeArgs).length) { + const {spawn} = require('child_process'); + const mochaPath = require.resolve('../lib/cli/cli.js'); + + debug('final node args', nodeArgs); + + const args = [].concat( + unparseNodeFlags(nodeArgs), + mochaPath, + unparse(mochaArgs, {alias: aliases}) + ); + + debug(`exec ${process.execPath} w/ args:`, args); + + const proc = spawn(process.execPath, args, { + stdio: 'inherit' }); -}); -// terminate children. -process.on('SIGINT', function () { - proc.kill('SIGINT'); // calls runner.abort() - proc.kill('SIGTERM'); // if that didn't work, we're probably in an infinite loop, so make it die. -}); + proc.on('exit', (code, signal) => { + process.on('exit', () => { + if (signal) { + process.kill(process.pid, signal); + } else { + process.exit(code); + } + }); + }); + + // terminate children. + process.on('SIGINT', () => { + proc.kill('SIGINT'); // calls runner.abort() + proc.kill('SIGTERM'); // if that didn't work, we're probably in an infinite loop, so make it die. + }); +} else { + require('../lib/cli/cli').main(unparse(mochaArgs, {alias: aliases})); +} diff --git a/bin/options.js b/bin/options.js deleted file mode 100644 index be5a60c9c3..0000000000 --- a/bin/options.js +++ /dev/null @@ -1,41 +0,0 @@ -'use strict'; - -/** - * Dependencies. - */ - -var fs = require('fs'); - -/** - * Export `getOptions`. - */ - -module.exports = getOptions; - -/** - * Get options. - */ - -function getOptions () { - var optsPath = process.argv.indexOf('--opts') === -1 - ? 'test/mocha.opts' - : process.argv[process.argv.indexOf('--opts') + 1]; - - try { - var opts = fs.readFileSync(optsPath, 'utf8') - .replace(/\\\s/g, '%20') - .split(/\s/) - .filter(Boolean) - .map(function (value) { - return value.replace(/%20/g, ' '); - }); - - process.argv = process.argv - .slice(0, 2) - .concat(opts.concat(process.argv.slice(2))); - } catch (err) { - // ignore - } - - process.env.LOADED_MOCHA_OPTS = true; -} diff --git a/bower.json b/bower.json deleted file mode 100644 index e96cc9526d..0000000000 --- a/bower.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "name": "mocha", - "homepage": "https://mochajs.org", - "description": "simple, flexible, fun test framework", - "repository": { - "type": "git", - "url": "git://github.com/mochajs/mocha.git" - }, - "main": [ - "mocha.js", - "mocha.css" - ], - "ignore": [ - "bin", - "editors", - "images", - "lib", - "scripts", - "test", - "assets", - "media", - ".*", - "index.js", - "karma.conf.js", - "browser-entry.js", - "Makefile", - "package.json", - "appveyor.yml" - ], - "keywords": [ - "mocha", - "test", - "bdd", - "tdd", - "tap" - ], - "license": "MIT" -} diff --git a/browser-entry.js b/browser-entry.js index 1d5ef5a1c4..fd89117755 100644 --- a/browser-entry.js +++ b/browser-entry.js @@ -7,7 +7,7 @@ * Shim process.stdout. */ -process.stdout = require('browser-stdout')(); +process.stdout = require('browser-stdout')({label: false}); var Mocha = require('./lib/mocha'); @@ -17,7 +17,7 @@ var Mocha = require('./lib/mocha'); * @return {undefined} */ -var mocha = new Mocha({ reporter: 'html' }); +var mocha = new Mocha({reporter: 'html'}); /** * Save timer references to avoid Sinon interfering (see GH-237). @@ -38,14 +38,14 @@ var originalOnerrorHandler = global.onerror; * Revert to original onerror handler if previously defined. */ -process.removeListener = function (e, fn) { +process.removeListener = function(e, fn) { if (e === 'uncaughtException') { if (originalOnerrorHandler) { global.onerror = originalOnerrorHandler; } else { - global.onerror = function () {}; + global.onerror = function() {}; } - var i = Mocha.utils.indexOf(uncaughtExceptionHandlers, fn); + var i = uncaughtExceptionHandlers.indexOf(fn); if (i !== -1) { uncaughtExceptionHandlers.splice(i, 1); } @@ -56,9 +56,9 @@ process.removeListener = function (e, fn) { * Implements uncaughtException listener. */ -process.on = function (e, fn) { +process.on = function(e, fn) { if (e === 'uncaughtException') { - global.onerror = function (err, url, line) { + global.onerror = function(err, url, line) { fn(new Error(err + ' (' + url + ':' + line + ')')); return !mocha.allowUncaught; }; @@ -74,9 +74,9 @@ mocha.suite.removeAllListeners('pre-require'); var immediateQueue = []; var immediateTimeout; -function timeslice () { +function timeslice() { var immediateStart = new Date().getTime(); - while (immediateQueue.length && (new Date().getTime() - immediateStart) < 100) { + while (immediateQueue.length && new Date().getTime() - immediateStart < 100) { immediateQueue.shift()(); } if (immediateQueue.length) { @@ -90,7 +90,7 @@ function timeslice () { * High-performance override of Runner.immediately. */ -Mocha.Runner.immediately = function (callback) { +Mocha.Runner.immediately = function(callback) { immediateQueue.push(callback); if (!immediateTimeout) { immediateTimeout = setTimeout(timeslice, 0); @@ -102,8 +102,8 @@ Mocha.Runner.immediately = function (callback) { * This is useful when running tests in a browser because window.onerror will * only receive the 'message' attribute of the Error. */ -mocha.throwError = function (err) { - Mocha.utils.forEach(uncaughtExceptionHandlers, function (fn) { +mocha.throwError = function(err) { + uncaughtExceptionHandlers.forEach(function(fn) { fn(err); }); throw err; @@ -114,7 +114,7 @@ mocha.throwError = function (err) { * Normally this would happen in Mocha.prototype.loadFiles. */ -mocha.ui = function (ui) { +mocha.ui = function(ui) { Mocha.prototype.ui.call(this, ui); this.suite.emit('pre-require', global, null, this); return this; @@ -124,9 +124,9 @@ mocha.ui = function (ui) { * Setup mocha with the given setting options. */ -mocha.setup = function (opts) { +mocha.setup = function(opts) { if (typeof opts === 'string') { - opts = { ui: opts }; + opts = {ui: opts}; } for (var opt in opts) { if (opts.hasOwnProperty(opt)) { @@ -140,7 +140,7 @@ mocha.setup = function (opts) { * Run mocha, returning the Runner. */ -mocha.run = function (fn) { +mocha.run = function(fn) { var options = mocha.options; mocha.globals('location'); @@ -155,10 +155,14 @@ mocha.run = function (fn) { mocha.invert(); } - return Mocha.prototype.run.call(mocha, function (err) { + return Mocha.prototype.run.call(mocha, function(err) { // The DOM Document is not available in Web Workers. var document = global.document; - if (document && document.getElementById('mocha') && options.noHighlighting !== true) { + if ( + document && + document.getElementById('mocha') && + options.noHighlighting !== true + ) { Mocha.utils.highlightTags('code'); } if (fn) { diff --git a/docs/.browserslistrc b/docs/.browserslistrc new file mode 100644 index 0000000000..5be642c293 --- /dev/null +++ b/docs/.browserslistrc @@ -0,0 +1,4 @@ +## Browsers support for autoprefixing CSS for the website +last 2 major versions +not dead +Firefox ESR diff --git a/docs/.eleventyignore b/docs/.eleventyignore new file mode 100644 index 0000000000..c81ddf9d39 --- /dev/null +++ b/docs/.eleventyignore @@ -0,0 +1,6 @@ +README.md +API.md +LICENSE* +.* +_dist/ +example/ diff --git a/docs/API.md b/docs/API.md new file mode 100644 index 0000000000..d92d3e689c --- /dev/null +++ b/docs/API.md @@ -0,0 +1,20 @@ +# Mocha's API Documentation + +* * * + +Congratulations! You've found Mocha's API documentation. These docs are for developers who wish to: + +- Create an extension for Mocha, or +- Develop Mocha itself, or +- Do something else fancy with Mocha + +Otherwise, **you probably want the [main documentation](https://mochajs.org)**. + +## Other Links + +- **[Main Documentation](https://mochajs.org)** +- **[Release Notes / History / Changes](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)** +- [Code of Conduct](https://github.com/mochajs/mocha/blob/master/.github/CODE_OF_CONDUCT.md) +- [Gitter Chatroom](https://gitter.im/mochajs/mocha) (ask questions here!) +- [Google Group](https://groups.google.com/group/mochajs) +- [Issue Tracker](https://github.com/mochajs/mocha/issues) diff --git a/docs/CNAME b/docs/CNAME new file mode 100644 index 0000000000..f596d46df1 --- /dev/null +++ b/docs/CNAME @@ -0,0 +1 @@ +mochajs.org diff --git a/docs/LICENSE-CC-BY-4.0 b/docs/LICENSE-CC-BY-4.0 new file mode 100644 index 0000000000..2f244ac814 --- /dev/null +++ b/docs/LICENSE-CC-BY-4.0 @@ -0,0 +1,395 @@ +Attribution 4.0 International + +======================================================================= + +Creative Commons Corporation ("Creative Commons") is not a law firm and +does not provide legal services or legal advice. Distribution of +Creative Commons public licenses does not create a lawyer-client or +other relationship. Creative Commons makes its licenses and related +information available on an "as-is" basis. Creative Commons gives no +warranties regarding its licenses, any material licensed under their +terms and conditions, or any related information. Creative Commons +disclaims all liability for damages resulting from their use to the +fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and +conditions that creators and other rights holders may use to share +original works of authorship and other material subject to copyright +and certain other rights specified in the public license below. The +following considerations are for informational purposes only, are not +exhaustive, and do not form part of our licenses. + + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More_considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + +======================================================================= + +Creative Commons Attribution 4.0 International Public License + +By exercising the Licensed Rights (defined below), You accept and agree +to be bound by the terms and conditions of this Creative Commons +Attribution 4.0 International Public License ("Public License"). To the +extent this Public License may be interpreted as a contract, You are +granted the Licensed Rights in consideration of Your acceptance of +these terms and conditions, and the Licensor grants You such rights in +consideration of benefits the Licensor receives from making the +Licensed Material available under these terms and conditions. + + +Section 1 -- Definitions. + + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + + c. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + + d. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + + e. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + + f. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + + g. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + + h. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + + i. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + + j. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + + k. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + + +Section 2 -- Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + + a. reproduce and Share the Licensed Material, in whole or + in part; and + + b. produce, reproduce, and Share Adapted Material. + + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + + 3. Term. The term of this Public License is specified in Section + 6(a). + + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + + 5. Downstream recipients. + + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + + b. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this + Public License. + + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties. + + +Section 3 -- License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the +following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified + form), You must: + + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of + warranties; + + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + + 4. If You Share Adapted Material You produce, the Adapter's + License You apply must not prevent recipients of the Adapted + Material from complying with this Public License. + + +Section 4 -- Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that +apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database; + + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material; and + + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + +For the avoidance of doubt, this Section 4 supplements and does not +replace Your obligations under this Public License where the Licensed +Rights include other Copyright and Similar Rights. + + +Section 5 -- Disclaimer of Warranties and Limitation of Liability. + + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + + +Section 6 -- Term and Termination. + + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + + 2. upon express reinstatement by the Licensor. + + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + + +Section 7 -- Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + + +Section 8 -- Interpretation. + + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + + +======================================================================= + +Creative Commons is not a party to its public +licenses. Notwithstanding, Creative Commons may elect to apply one of +its public licenses to material it publishes and in those instances +will be considered the “Licensor.” The text of the Creative Commons +public licenses is dedicated to the public domain under the CC0 Public +Domain Dedication. Except for the limited purpose of indicating that +material is shared under a Creative Commons public license or as +otherwise permitted by the Creative Commons policies published at +creativecommons.org/policies, Creative Commons does not authorize the +use of the trademark "Creative Commons" or any other trademark or logo +of Creative Commons without its prior written consent including, +without limitation, in connection with any unauthorized modifications +to any of its public licenses or any other arrangements, +understandings, or agreements concerning use of licensed material. For +the avoidance of doubt, this paragraph does not form part of the +public licenses. + +Creative Commons may be contacted at creativecommons.org. diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000000..203fa2e091 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,30 @@ +# mochajs.org + +_So you wanna build the site?_ + +[mochajs.org](https://mochajs.org) is built using [Eleventy](https://www.11ty.io/), a simple static site generator. + +## Prerequisites + +- Node.js v8.x or greater + +## Development + +1. Run `npm install` from working copy root to get Node.js deps. +1. To serve the site and rebuild as changes are made, execute `npm start docs.watch`. +1. To rebuild the site _once_, execute `npm start docs`. + +### Notes + +- The content lives in `docs/index.md`; everything else is markup, scripts, assets, etc. +- This file (`docs/README.md`) should _not_ be included in the build. +- `docs/_dist` is where the deployed site lives. `docs/_site` is essentially a build step. These directories are _not_ under version control. +- See `package-scripts.js` for details on what the builds are actually doing; especially see [markdown-magic](https://npm.im/markdown-magic) for how we're dynamically inserting information into `docs/index.md`. + +## License + +:copyright: 2016-2018 [JS Foundation](https://js.foundation) and contributors. + +Content licensed [CC-BY-4.0](https://raw.githubusercontent.com/mochajs/mocha/master/docs/LICENSE-CC-BY-4.0). + +Code licensed [MIT](https://raw.githubusercontent.com/mochajs/mocha/master/LICENSE-MIT). diff --git a/docs/_headers b/docs/_headers new file mode 100644 index 0000000000..b70411ff02 --- /dev/null +++ b/docs/_headers @@ -0,0 +1,10 @@ +/* + X-Frame-Options: DENY + X-XSS-Protection: 1; mode=block + X-Content-Type-Options: nosniff + Strict-Transport-Security: max-age=31536000; includeSubDomains + Referrer-Policy: strict-origin-when-cross-origin + +## Far future expires for hashed file names +/static/* + Cache-Control: max-age=31536000 diff --git a/docs/_includes/backers.md b/docs/_includes/backers.md new file mode 100644 index 0000000000..4481202591 --- /dev/null +++ b/docs/_includes/backers.md @@ -0,0 +1,7 @@ +## Backers + +Find Mocha helpful? Become a [backer](https://opencollective.com/mochajs#support) and support Mocha with a monthly donation. + + +{% for i in (0..29) %}[![](https://opencollective.com/mochajs/backer/{{ i }}/avatar.jpg)](https://opencollective.com/mochajs/backer/{{ i }}/website){: target="_blank" rel="noopener"}{% endfor %} +{: .image-list id="_backers" } diff --git a/docs/_includes/default.html b/docs/_includes/default.html new file mode 100644 index 0000000000..baf940c829 --- /dev/null +++ b/docs/_includes/default.html @@ -0,0 +1,80 @@ + + + + + + {{ title }} + + + + + + + + + + +
    +

    + + + +

    +

    simple, flexible, fun

    +
    + +
    {{ content }}
    + + + + + + diff --git a/docs/_includes/sponsors.md b/docs/_includes/sponsors.md new file mode 100644 index 0000000000..86c24b88f1 --- /dev/null +++ b/docs/_includes/sponsors.md @@ -0,0 +1,9 @@ +## Sponsors + +Use Mocha at Work? Ask your manager or marketing team if they'd help [support](https://opencollective.com/mochajs#support) our project. Your company's logo will also be displayed on [npmjs.com](http://npmjs.com/package/mocha) and our [GitHub repository](https://github.com/mochajs/mocha#sponsors). + + +{% for i in (0..15) %}[![](https://opencollective.com/mochajs/sponsor/{{ i }}/avatar.jpg)](https://opencollective.com/mochajs/sponsor/{{ i }}/website){: target="_blank"} {% endfor %} +{: .image-list .faded-images} + + diff --git a/docs/api-tutorials/custom-reporter.md b/docs/api-tutorials/custom-reporter.md new file mode 100644 index 0000000000..a0cfe48d66 --- /dev/null +++ b/docs/api-tutorials/custom-reporter.md @@ -0,0 +1,113 @@ +Mocha allows you to define and use custom reporters install via `npm`. + +For example, if `mocha-foo-reporter` was published to the npm registry, you could install it via `npm install mocha-foo-reporter --save-dev`, then use it via `mocha --reporter mocha-foo-reporter`. + +## Example Custom Reporter + +If you're looking to get started quickly, here's an example of a custom reporter: + + + +```js +// my-reporter.js +'use strict'; + +const Mocha = require('mocha'); +const { + EVENT_RUN_BEGIN, + EVENT_RUN_END, + EVENT_TEST_FAIL, + EVENT_TEST_PASS, + EVENT_SUITE_BEGIN, + EVENT_SUITE_END +} = Mocha.Runner.constants; + +// this reporter outputs test results, indenting two spaces per suite +class MyReporter { + constructor(runner) { + this._indents = 0; + const stats = runner.stats; + + runner + .once(EVENT_RUN_BEGIN, () => { + console.log('start'); + }) + .on(EVENT_SUITE_BEGIN, () => { + this.increaseIndent(); + }) + .on(EVENT_SUITE_END, () => { + this.decreaseIndent(); + }) + .on(EVENT_TEST_PASS, test => { + // Test#fullTitle() returns the suite name(s) + // prepended to the test title + console.log(`${this.indent()}pass: ${test.fullTitle()}`); + }) + .on(EVENT_TEST_FAIL, (test, err) => { + console.log( + `${this.indent()}fail: ${test.fullTitle()} - error: ${err.message}` + ); + }) + .once(EVENT_RUN_END, () => { + console.log(`end: ${stats.passes}/${stats.passes + stats.failures} ok`); + }); + } + + indent() { + return Array(this._indents).join(' '); + } + + increaseIndent() { + this._indents++; + } + + decreaseIndent() { + this._indents--; + } +} + +module.exports = MyReporter; +``` + + + +To use this reporter, execute `mocha --reporter /path/to/my-reporter.js`. + +For further examples, the built-in reporter implementations are the [best place to look](https://github.com/mochajs/mocha/tree/master/lib/reporters). The [integration tests](https://github.com/mochajs/mocha/tree/master/test/reporters) may also be helpful. + +## The `Base` Reporter Class + +[Base]{@link Mocha.reporters.Base} is an "abstract" class. It contains console-specific settings and utilities, commonly used by built-in reporters. Browsing the built-in reporter implementations, you may often see static properties of [Base]{@link Mocha.reporters.Base} referenced. + +It's often useful--but not necessary--for a custom reporter to extend [Base]{@link Mocha.reporters.Base}. + +## Statistics + +Mocha adds a `stats` property of type {@link StatsCollector} to the reporter's `Runner` instance (passed as first argument to constructor). + +## Events + +A reporter should listen for events emitted from the `runner` (a singleton instance of {@link Runner}). + +The event names are exported from the `constants` property of `Mocha.Runner`: + +| Constant | Event Name | Event Arguments | Description | +| -------------------- | ----------- | --------------- | ------------------------------------------------------------------------------------------------------------------------------------ | +| `EVENT_RUN_BEGIN` | `start` | _(n/a)_ | Execution will begin. | +| `EVENT_RUN_END` | `end` | _(n/a)_ | All [Suites]{@link Suite}, [Tests]{@link Test} and [Hooks]{@link Hook} have completed execution. | +| `EVENT_DELAY_BEGIN` | `waiting` | _(n/a)_ | Waiting for `global.run()` to be called; only emitted when [delay](/#delayed-root-suite) option is `true`. | +| `EVENT_DELAY_END` | `ready` | _(n/a)_ | User called `global.run()` and the root suite is ready to execute. | +| `EVENT_SUITE_BEGIN` | `suite` | `Suite` | The [Hooks]{@link Hook} and [Tests]{@link Test} within a {@link Suite} will be executed, including any nested [Suites]{@link Suite}. | +| `EVENT_SUITE_END` | `suite end` | `Suite` | The [Hooks]{@link Hook}, [Tests]{@link Test}, and nested [Suites]{@link Suite} within a {@link Suite} have completed execution. | +| `EVENT_HOOK_BEGIN` | `hook` | `Hook` | A {@link Hook} will be executed. | +| `EVENT_HOOK_END` | `hook end` | `Hook` | A {@link Hook} has completed execution. | +| `EVENT_TEST_BEGIN` | `test` | `Test` | A {@link Test} will be executed. | +| `EVENT_TEST_END` | `test end` | `Test` | A {@link Test} has completed execution. | +| `EVENT_TEST_FAIL` | `fail` | `Test`, `Error` | A {@link Test} has failed or thrown an exception. | +| `EVENT_TEST_PASS` | `pass` | `Test` | A {@link Test} has passed. | +| `EVENT_TEST_PENDING` | `pending` | `Test` | A {@link Test} was skipped. | +| `EVENT_TEST_RETRY` | `retry` | `Test`, `Error` | A {@link Test} failed, but is about to be retried; only emitted if the `retry` option is nonzero. | + +**Please use these constants** instead of the event names in your own reporter! This will ensure compatibility with future versions of Mocha. + +> It's important to understand that all `Suite` callbacks will be run _before_ the {@link Runner} emits `EVENT_RUN_BEGIN`. Hooks and tests, however, won't run until _after_ the {@link Runner} emits `EVENT_RUN_BEGIN`. diff --git a/docs/api-tutorials/jsdoc.tutorials.json b/docs/api-tutorials/jsdoc.tutorials.json new file mode 100644 index 0000000000..4880bf552f --- /dev/null +++ b/docs/api-tutorials/jsdoc.tutorials.json @@ -0,0 +1,5 @@ +{ + "custom-reporter": { + "title": "Create a Custom Reporter" + } +} diff --git a/docs/css/normalize.css b/docs/css/normalize.css new file mode 100644 index 0000000000..8710595d3e --- /dev/null +++ b/docs/css/normalize.css @@ -0,0 +1,422 @@ +/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */ + +/** + * 1. Change the default font family in all browsers (opinionated). + * 2. Correct the line height in all browsers. + * 3. Prevent adjustments of font size after orientation changes in IE and iOS. + */ + +html { + font-family: sans-serif; /* 1 */ + line-height: 1.15; /* 2 */ + -ms-text-size-adjust: 100%; /* 3 */ + -webkit-text-size-adjust: 100%; /* 3 */ +} + +/** + * Remove the margin in all browsers (opinionated). + */ + +body { + margin: 0; +} + +/* HTML5 display definitions + ========================================================================== */ + +/** + * Add the correct display in IE 9-. + * 1. Add the correct display in Edge, IE, and Firefox. + * 2. Add the correct display in IE. + */ + +article, +aside, +details, /* 1 */ +figcaption, +figure, +footer, +header, +main, /* 2 */ +menu, +nav, +section, +summary { /* 1 */ + display: block; +} + +/** + * Add the correct display in IE 9-. + */ + +audio, +canvas, +progress, +video { + display: inline-block; +} + +/** + * Add the correct display in iOS 4-7. + */ + +audio:not([controls]) { + display: none; + height: 0; +} + +/** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ + +progress { + vertical-align: baseline; +} + +/** + * Add the correct display in IE 10-. + * 1. Add the correct display in IE. + */ + +template, /* 1 */ +[hidden] { + display: none; +} + +/* Links + ========================================================================== */ + +/** + * 1. Remove the gray background on active links in IE 10. + * 2. Remove gaps in links underline in iOS 8+ and Safari 8+. + */ + +a { + background-color: transparent; /* 1 */ + -webkit-text-decoration-skip: objects; /* 2 */ +} + +/** + * Remove the outline on focused links when they are also active or hovered + * in all browsers (opinionated). + */ + +a:active, +a:hover { + outline-width: 0; +} + +/* Text-level semantics + ========================================================================== */ + +/** + * 1. Remove the bottom border in Firefox 39-. + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ + +abbr[title] { + border-bottom: none; /* 1 */ + text-decoration: underline; /* 2 */ + text-decoration: underline dotted; /* 2 */ +} + +/** + * Prevent the duplicate application of `bolder` by the next rule in Safari 6. + */ + +b, +strong { + font-weight: inherit; +} + +/** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + +b, +strong { + font-weight: bolder; +} + +/** + * Add the correct font style in Android 4.3-. + */ + +dfn { + font-style: italic; +} + +/** + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. + */ + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/** + * Add the correct background and color in IE 9-. + */ + +mark { + background-color: #ff0; + color: #000; +} + +/** + * Add the correct font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* Embedded content + ========================================================================== */ + +/** + * Remove the border on images inside links in IE 10-. + */ + +img { + border-style: none; +} + +/** + * Hide the overflow in IE. + */ + +svg:not(:root) { + overflow: hidden; +} + +/* Grouping content + ========================================================================== */ + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +code, +kbd, +pre, +samp { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ +} + +/** + * Add the correct margin in IE 8. + */ + +figure { + margin: 1em 40px; +} + +/** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ + +hr { + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ +} + +/* Forms + ========================================================================== */ + +/** + * 1. Change font properties to `inherit` in all browsers (opinionated). + * 2. Remove the margin in Firefox and Safari. + */ + +button, +input, +optgroup, +select, +textarea { + font: inherit; /* 1 */ + margin: 0; /* 2 */ +} + +/** + * Restore the font weight unset by the previous rule. + */ + +optgroup { + font-weight: bold; +} + +/** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ + +button, +input { /* 1 */ + overflow: visible; +} + +/** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ + +button, +select { /* 1 */ + text-transform: none; +} + +/** + * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` + * controls in Android 4. + * 2. Correct the inability to style clickable types in iOS and Safari. + */ + +button, +html [type="button"], /* 1 */ +[type="reset"], +[type="submit"] { + -webkit-appearance: button; /* 2 */ +} + +/** + * Remove the inner border and padding in Firefox. + */ + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; +} + +/** + * Restore the focus styles unset by the previous rule. + */ + +button:-moz-focusring, +[type="button"]:-moz-focusring, +[type="reset"]:-moz-focusring, +[type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +/** + * Change the border, margin, and padding in all browsers (opinionated). + */ + +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ + +legend { + box-sizing: border-box; /* 1 */ + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ +} + +/** + * Remove the default vertical scrollbar in IE. + */ + +textarea { + overflow: auto; +} + +/** + * 1. Add the correct box sizing in IE 10-. + * 2. Remove the padding in IE 10-. + */ + +[type="checkbox"], +[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ + +[type="search"] { + -webkit-appearance: textfield; /* 1 */ + outline-offset: -2px; /* 2 */ +} + +/** + * Remove the inner padding and cancel buttons in Chrome and Safari on OS X. + */ + +[type="search"]::-webkit-search-cancel-button, +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * Correct the text style of placeholders in Chrome, Edge, and Safari. + */ + +::-webkit-input-placeholder { + color: inherit; + opacity: 0.54; +} + +/** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ + +::-webkit-file-upload-button { + -webkit-appearance: button; /* 1 */ + font: inherit; /* 2 */ +} diff --git a/docs/css/prism.css b/docs/css/prism.css new file mode 100644 index 0000000000..793fd5df2b --- /dev/null +++ b/docs/css/prism.css @@ -0,0 +1,148 @@ +/* PrismJS 1.15.0 +https://prismjs.com/download.html#themes=prism&languages=clike+javascript+bash+json */ + + +/** + * prism.js default theme for JavaScript, CSS and HTML + * Based on dabblet (http://dabblet.com) + * @author Lea Verou + */ + +code[class*="language-"], +pre[class*="language-"] { + color: black; + /* background: none; */ + text-shadow: 0 1px white; + font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; + text-align: left; + white-space: pre; + word-spacing: normal; + word-break: normal; + word-wrap: normal; + line-height: 1.5; + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4; + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; +} + +pre[class*="language-"]::-moz-selection, +pre[class*="language-"] ::-moz-selection, +code[class*="language-"]::-moz-selection, +code[class*="language-"] ::-moz-selection { + text-shadow: none; + background: #b3d4fc; +} + +pre[class*="language-"]::selection, +pre[class*="language-"] ::selection, +code[class*="language-"]::selection, +code[class*="language-"] ::selection { + text-shadow: none; + background: #b3d4fc; +} + +@media print { + code[class*="language-"], + pre[class*="language-"] { + text-shadow: none; + } +} + + +/* Code blocks */ + +pre[class*="language-"] { + padding: 1em; + margin: .5em 0; + overflow: auto; +} + +:not(pre)>code[class*="language-"], +pre[class*="language-"] { + /* background: #f5f2f0; */ +} + + +/* Inline code */ + +:not(pre)>code[class*="language-"] { + padding: .1em; + border-radius: .3em; + white-space: normal; +} + +.token.comment, +.token.prolog, +.token.doctype, +.token.cdata { + color: slategray; +} + +.token.punctuation { + color: #999; +} + +.namespace { + opacity: .7; +} + +.token.property, +.token.tag, +.token.boolean, +.token.number, +.token.constant, +.token.symbol, +.token.deleted { + color: #905; +} + +.token.selector, +.token.attr-name, +.token.string, +.token.char, +.token.builtin, +.token.inserted { + color: #690; +} + +.token.operator, +.token.entity, +.token.url, +.language-css .token.string, +.style .token.string { + color: #9a6e3a; +} + +.token.atrule, +.token.attr-value, +.token.keyword { + color: #07a; +} + +.token.function, +.token.class-name { + color: #DD4A68; +} + +.token.regex, +.token.important, +.token.variable { + color: #e90; +} + +.token.important, +.token.bold { + font-weight: bold; +} + +.token.italic { + font-style: italic; +} + +.token.entity { + cursor: help; +} diff --git a/docs/css/style.css b/docs/css/style.css new file mode 100644 index 0000000000..d59160b852 --- /dev/null +++ b/docs/css/style.css @@ -0,0 +1,270 @@ +html { + font: 16px/1.6 'Helvetica Neue', Helvetica, Arial, sans-serif; +} + +body { + border-top: 2px solid #ddd; + color: #2c2c2c; +} + +@keyframes fadein { + from { + opacity: 0; + } + + to { + opacity: 1; + } +} + +@keyframes slideright { + from { + transform: translateX(-45px); + } + + to { + transform: translateX(0); + } +} + +header, +#content { + margin: 0 auto; + max-width: 920px; + padding-left: 30px; + padding-right: 30px; +} + +header { + padding-top: 20px; +} + +#mocha-logo { + height: 192px; + width: 192px; +} + +#content { + padding-bottom: 60px; +} + +#_header h1 { + animation: fadein 1s forwards; + margin-top: 0; + margin-left: -19px; + opacity: 0; +} + +#tag { + animation: fadein 1s forwards, slideright 1s forwards; + color: #c29d7f; + font-size: 30px; + font-weight: 100; + letter-spacing: 2px; + margin-top: -158px; + margin-left: 185px; + margin-bottom: 125px; +} + +#tag em { + font-style: normal; +} + +nav.badges a + a { + margin-left: 3px; +} + +.image-list { + overflow: hidden; +} + +.image-list a { + float: left; + margin: 6px; +} + +.image-list a img { + display: block; + height: 64px; +} + +.faded-images img { + opacity: 0; + transition: opacity 0.3s; +} + +.faded-images.is-loaded img { + opacity: 1; +} + +#_backers a img { + background: url(/images/backer-background.svg?inline) center center no-repeat; + width: 64px; +} + +h2 { + border-bottom: 1px solid #ddd; + font-weight: 400; + letter-spacing: 1px; + margin-top: 80px; + text-transform: uppercase; +} + +h3 { + border-bottom: 1px solid #eee; + font-weight: 200; + letter-spacing: 1px; + margin-top: 40px; + text-transform: uppercase; +} + +h3 > code { + font-size: 14px; + text-transform: none; +} + +#content > p:first-child { + font-size: 20px; + font-weight: 200; + letter-spacing: 1px; +} + +a { + color: #8d6748; +} + +a:hover { + color: #717171; +} + +a.direct-link { + background: url(../images/link-icon.svg) center center no-repeat; + background-size: auto 60%; + opacity: 0; + overflow: hidden; + position: absolute; + text-decoration: none; + text-indent: -60px; + transform: translateX(-100%); + width: 30px; +} + +:hover > a.direct-link { + opacity: 1; +} + +ul { + box-sizing: content-box; + column-count: 2; + column-gap: 30px; + margin-top: 20px; + padding: 0 15px; +} + +ul li { + border-bottom: 1px solid #eee; + break-inside: avoid; + list-style: none; + margin-top: 5px; + padding: 5px 0; +} + +code { + font: 14px monaco, monospace; + line-height: 1.8; +} + +:not(pre) > code { + background-color: #f5f2f0; + border-radius: 3px; + padding: 0.2em 0.4em; +} + +pre { + background-color: #f3f3f3; + border: 1px solid #ddd; + border-bottom-color: #ccc; + border-radius: 3px; + box-shadow: inset 0 0 10px #ddd; + margin: 20px 0; + overflow-x: auto; + padding: 20px; +} + +img.screenshot { + border-radius: 3px; + box-shadow: 0 3px 10px #dedede, 0 1px 5px #888; + display: block; + margin: 30px auto; + max-width: 100%; +} + +#matomoLogo { + display: block; + height: 176px; +} + +.sponsorship { + display: flex; + justify-content: center; + margin-bottom: 60px; + align-items: center; +} + +.sponsorship a { + padding: 0 40px; +} + +footer { + background-color: #eee; + border-top: 1px solid #ddd; + padding: 50px 0; + text-align: right; +} + +footer div { + color: #888; + font-size: 0.8em; + margin-right: 30px; +} + +.last-modified { + font-style: italic; +} + +.dl-inline dt, +.dl-inline dd { + display: inline; + margin: 0; +} + +.dl-inline dt:after { + content: ': '; +} + +.dl-inline dd + dt:before { + content: ''; + display: block; +} + +@media all and (max-width: 600px) { + #tag { + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + } + + ul { + column-count: 1; + } + + pre { + margin: 20px -11px; + padding: 10px; + } +} + +blockquote { + border-left: 1px solid #eee; + padding: 10px; +} diff --git a/docs/example/Array.js b/docs/example/Array.js new file mode 100644 index 0000000000..9be8287b65 --- /dev/null +++ b/docs/example/Array.js @@ -0,0 +1,74 @@ + +describe('Array', function(){ + describe('.push()', function(){ + it('should append a value', function(){ + var arr = []; + arr.push('foo'); + arr.push('bar'); + expect(arr[0]).to.equal('foo'); + expect(arr[1]).to.equal('bar'); + }) + + it('should return the length', function(){ + var arr = []; + var n = arr.push('foo'); + expect(n).to.equal(1); + n = arr.push('bar'); + expect(n).to.equal(2); + }) + + describe('with many arguments', function(){ + it('should add the values', function(){ + var arr = []; + arr.push('foo', 'bar'); + expect(arr[0]).to.equal('foo'); + expect(arr[1]).to.equal('bar'); + }) + }) + }) + + describe('.unshift()', function(){ + it('should prepend a value', function(){ + var arr = [1,2,3]; + arr.unshift('foo'); + expect(arr[0]).to.equal('foo'); + expect(arr[1]).to.equal(1); + }) + + it('should return the length', function(){ + var arr = []; + var n = arr.unshift('foo'); + expect(n).to.equal(1); + n = arr.unshift('bar'); + expect(n).to.equal(2); + }) + + describe('with many arguments', function(){ + it('should add the values', function(){ + var arr = []; + arr.unshift('foo', 'bar'); + expect(arr[0]).to.equal('foo'); + expect(arr[1]).to.equal('bar'); + }) + }) + }) + + describe('.pop()', function(){ + it('should remove and return the last value', function(){ + var arr = [1,2,3]; + expect(arr.pop()).to.equal(3); + expect(arr.pop()).to.equal(2); + expect(arr).to.have.length(1); + }) + }) + + describe('.shift()', function(){ + it('should remove and return the first value', function(){ + var arr = [1,2,3]; + expect(arr.shift()).to.equal(1); + expect(arr.shift()).to.equal(2); + expect(arr).to.have.length(1); + }) + }) +}) + diff --git a/docs/example/async-dump.js b/docs/example/async-dump.js new file mode 100644 index 0000000000..c1c15058bc --- /dev/null +++ b/docs/example/async-dump.js @@ -0,0 +1,33 @@ +'use strict'; + +const {createHook} = require('async_hooks'); +const {stackTraceFilter} = require('mocha/lib/utils'); +const allResources = new Map(); +const resourceActivity = new Set(); + +const filterStack = stackTraceFilter(); + +const hook = createHook({ + init(asyncId, type, triggerAsyncId) { + allResources.set(asyncId, {type, triggerAsyncId, stack: (new Error()).stack}); + }, + before(asyncId) { + resourceActivity.add(asyncId); + }, + after(asyncId) { + resourceActivity.delete(asyncId); + }, + destroy(asyncId) { + allResources.delete(asyncId); + } +}).enable(); + +global.asyncDump = module.exports = () => { + hook.disable(); + console.error('STUFF STILL IN THE EVENT LOOP:') + allResources.forEach(value=> { + console.error(`Type: ${value.type}`); + console.error(filterStack(value.stack)); + console.error('\n'); + }); +}; diff --git a/docs/example/debug-hanging-mocha.js b/docs/example/debug-hanging-mocha.js new file mode 100644 index 0000000000..fb36dc83c4 --- /dev/null +++ b/docs/example/debug-hanging-mocha.js @@ -0,0 +1,22 @@ +'use strict'; + +const net = require('net'); +const assert = require('assert'); + +describe('how to debug Mocha when it hangs', function () { + before(function (done) { + const server = net.createServer(); + server.listen(10101, done); + }); + + after(function () { + global.asyncDump(); + }); + + it('should complete, but Mocha should not exit', function(done) { + const sock = net.createConnection(10101, () => { + assert.deepEqual(sock.address().family, 'IPv4'); + done(); + }); + }); +}); \ No newline at end of file diff --git a/docs/example/tests.html b/docs/example/tests.html new file mode 100644 index 0000000000..77e99ddf2a --- /dev/null +++ b/docs/example/tests.html @@ -0,0 +1,20 @@ + + + + + Mocha + + + + +
    + + + + + + + + diff --git a/docs/favicon.ico b/docs/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..8c773fc0e1008cd3c7ee559bcbf41cf25d3d8a50 GIT binary patch literal 15086 zcmeHNzi(7W5MFauAX0>>kf>~=L?WFFNJDW*NGKKJKQIkSiu?&6JBk$2M2%kW3+KLa&Mhs)@fqh{L3Re5^WV-p_ahcuz#6Eyn;^==@ADyR^WU$(`S~>H z1;}R-bxya5CC3(g_qZPXVZ{A!?NsGWScqGgs<>iKZFSa*4F0s=Gw-bVDy*qo@o5k2y|2^z0WhYu z^MZQ~dD@Fo%w^;4sH-!>HJ#KD>{iu|a!9}Q&)il~Sq$7a?w_5z7UOE|9K*iwD_5!k z`c7-uVkx^;e4JC?Qv8%DCtctlz`iiq{ilD<@ocb`EK$Zet|4~mldJx8rYKW?Z4H0i z&$RZl`~Vm4TimY|5b-h=675n(>?Fq7+H)yvsdm(3l*5sI=DKmj9M~V$G8Xn8)?a!C zbT4nb2e2*t%8~GA_iEY_F_ws%dEp+&F83hYw#|*bhArVwdt{>=(XMRASnPd3=eo`O z+cU;owerlX7{CW0oq^WxW3X-W!!y=6H!<(&{xXKpmuww0xrV*8_q1kTc>veFh4@?P zLB=-wgFRnay>nddjE@yutA2|5)ciObRddn>PkU!;^=W(vzw*?mKQJa^JAFpzqCccQ z8b1da{Aq54pXZ|J>C;}vT&4IM-vh?rKaToo6Tfye){Nw{?ETDC{sVYe+@uiF? zmp@tLc>iYPS9)Q*`?R+}`R>}>I{99~T^PSvb9X6!aZ$)`6 z{(H3Z)VUt@s<`J5^GEpmKZo*nn?t^r@U0()@~yi=zH@TO|B2i$495jujN=Chhv(tn zX)R&nuYiib)570!P5VQgoB%xrvDc3yt~oKSpHxq_z;93RYcbuX9qFbv>yD)legX6s zh(5?SD(ID2!#|a4gaNif9-}YCcLU>j5HVRg8^^-A(ZoM&$+wMt9di1S4`C9&jJaDN z!Dwk zd)j6GQ-2z3Pk8<;&g?yazH&dZmyj#3^d*viaqW}xb}PnIdk>6%#YBn`9r`9IchlB@J!eH7!!G-988JUW9(ORT{cJ#AJ%w0wuIh5` zAFOFu;g&*%72~uOa15gt6DpafA&=7y$#AfzqXD(#x>&B85%inv5weV z!kLa^_B!>5k@b*sJaOOa#3(!9+#Bw-^2%Bd&pvhRG+hH<#eFu$ud`CS&*Wl&Pn`?J z9{Lh<08-sQj(A$hx5ZfEU$H6|#GrFFZ*|+eCJqpNvIgxvmi}ws=bB)mZ|Z{|$$b;M zb#>uawP5e@It#7ueHku;f%oa~j3-&y`mSW~Ins-A{rK1Tyg+)|^L~BL`=8Ev|I4S| zpZU!DrTIXI{q5Dm{^4rbe+QU3=!2XK6h7~SZy)&Q!yn$idjMMZ{yjclykCTn)CWBQ zdC#WF&k{?Z;ycBJ)1y3t^ZyGRCZz9irFCF*FGjuZ!7aVT_#)sG?_s>w&*(qGHHo^^ zA>9Z43VOu#;3F6`20sVldgV&y)58Hv}F zg&d60r+=ICvg>jF>4&+$T0)eQDr?B%!a8E-dg8un=XhQA!#dsrPH_&Lv68+6y^OMn z&m35*Tr$`6{}yy4<}&}185_jT9M-}w{fJdKh(E++=XJfm=p1QxVMu?2@9d1y>y!NM QI;4Xq&VA_PdUZJd4;B + + + + diff --git a/docs/images/emacs.png b/docs/images/emacs.png new file mode 100644 index 0000000000000000000000000000000000000000..ec3be76abef7b8efbb1d20259725819d23f64f4a GIT binary patch literal 605262 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∈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
    ) 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

    L-S3L^%1qUdXEqdVq#D|mgJe+!`*aCzF_ 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 literal 0 HcmV?d00001 diff --git a/docs/images/jetbrains-plugin.png b/docs/images/jetbrains-plugin.png new file mode 100644 index 0000000000000000000000000000000000000000..f3423031ece4dadd44080c34c15bd31e3beb3f75 GIT binary patch literal 89142 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≪Bqoo!|IDGWh;zibNs?eKkLR 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 literal 0 HcmV?d00001 diff --git a/docs/images/join-chat.svg b/docs/images/join-chat.svg new file mode 100644 index 0000000000..0edf5f3b1e --- /dev/null +++ b/docs/images/join-chat.svg @@ -0,0 +1 @@ +gittergitterjoin chatjoin chat \ No newline at end of file diff --git a/docs/images/link-icon.svg b/docs/images/link-icon.svg new file mode 100644 index 0000000000..dec74e6481 --- /dev/null +++ b/docs/images/link-icon.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/docs/images/matomo-logo.png b/docs/images/matomo-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..18b2d9e1c35e4e032dc4b5c9295e210796d09406 GIT binary patch literal 26528 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 LCeQd=VJpsp)StL$-%Yl?Y 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 z z1K3#YheWa1=S?x?+%~?GDjn)3D{=5mZ{;h6o(T=gUsSU>`gcs02sZHG2RVHfe2E)% zu92_s1IR+7-MpWH@(*b~Fw^+LYQMnoDKw!?2JSx9*L16XE~{e=ap4wA&=*Xx#Qp+g zyGY|7*astH5mQ{S$kWjnstpLyfj4lz%9PtPgHF5^t`_!#Nfa^OdRPg;SzOB%g|YF` zuzdXO^-$>!qgXM5nhh@pa%+AVz3I)$hEMG!#5#jmBX#C;Vzr7Q#cInh*uLDka;`m6 zItqZvcH{mUxvs-WY_O3%3r&|6f9(CO<9ofKTye;YA>B9;c`m~ANNBh8rkbd7MWfb= ze2&VC-ab)wLA-;clbql4q0Wh!)cf>6(=;K$no5aGkXnL6fsEvN&AxfCW5iJi$2F2tCsmzBA8=I->4ZEALz3*-Ev&J%@;eySwbF zJ%Yxt38hkbhv9M8pK|AsIYSa>3WAceKZ$xBW%IDRYEM$)v9e`)=QIiX?019WR1*+llo;9tVls88&mq zEbT9l_z)U?)W+mbd(0@H7R{1p?|T!@mM&?H8iF~M$=dTxN#IR&2Tc;@lbWBnuO!A<*=TK=d@3n=`Qt8meDnj6(RC2je`}2L+x!B4_<^ek!`Z;?=~9(~?2DWo zPsy#D<)zhRU#iT#ClivzwU>0^5}AM&0qG!hJzs-+vrAOO`Ed7mZ@a#W<}ClJLQS%5 zJ-@bD`zldjr}G)1S4PV7x7t9s#gz>&L-_@)g|QdLRUQ6&1em!Pc`TBMKOITqdFS-q z#!IffL%*KSY}Pk^EiTRnROva%^9z1`hUaXz55v;a@zglb$4S$$sczzdBt)-sACuQ` zZtupM7tz02fTSGy;q}{$svi_9%(;l+!K+9k8t4?jA7E&*n zEhh!m@7Tnu5Vy4u@+1~{Bb@NhSH6N`!LB@=J=Z~mKv5vUxzR|pu=hDD@-t}C!2hsI zT{Fo%NEELl@Z(TO%OXZ{jG=@dvaDc^KMd7wpZ45egLu>bXF zIs=i@q0+&TA1T;!cYi%t{@o_k(`dh)fDS3kvHRV3g*RB#vo}wIEgp7-*_sgAxG-to z-DnqCuJ;O8mb5sy-FK%8zUfpwPT)UrYVDsBM>29yqm2ueXgV_B)9K4rV3!~&q z?EEjnFch&y-)D8pL2dNflOe^t$uTmF+K0+N9Qb~hbK~!4K4Vw2eLuGaUyEYe*F|B{ z$M{GiKl>pg!gW+ZAR$?n60Xi6yqqsm;SRQW(M`9?z#s0{`DB+rB7yh!Ta`Ahl;pW7h zb)Ql%RnusS^9n*7;0h<>7&Z^7r}=$uan0_#fMjDupxdDo#Y!IzajI% k6TSQY^N@+~-5b(%R|l$C%cUpu$~!P}QVNolpTR%=3x;dizyJUM literal 0 HcmV?d00001 diff --git a/docs/images/mocha-logo.svg b/docs/images/mocha-logo.svg new file mode 100644 index 0000000000..115b9bd6c2 --- /dev/null +++ b/docs/images/mocha-logo.svg @@ -0,0 +1,125 @@ + + + +Mocha Logoimage/svg+xmlMocha Logo08-21-2015Dick DeLeon <ddeleon@decipherinc.com>CC BY-SA 4.0mochamochajsChristopher Hiller <boneskull@boneskull.com> diff --git a/docs/images/mocha_side_bar.png b/docs/images/mocha_side_bar.png new file mode 100644 index 0000000000000000000000000000000000000000..56e39fe4d30a2f672146ef687aa844f7744929a6 GIT binary patch literal 219533 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

    Y_RMA4@4#qlDaCH7 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/reporter-doc.png b/docs/images/reporter-doc.png new file mode 100644 index 0000000000000000000000000000000000000000..c0b227f22bb17668435f076c591a710fe6f7f4b0 GIT binary patch literal 6762 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 A?f?J) literal 0 HcmV?d00001 diff --git a/docs/images/reporter-json-stream.png b/docs/images/reporter-json-stream.png new file mode 100644 index 0000000000000000000000000000000000000000..19d5724709c94e2b86897e8e1578dd6dedfd6cbd GIT binary patch literal 6034 zcmcgwcTkhfwFuy(lCghzJ7GixQAtMXD6(Efhg|?;<^r z0!XhRfj|OCPq^`ZcjkBhx&Pjsoipb=bKW`6JiB}LosBZk)4WX2Lr+0Larvp1x*-Jx zC4_F_|ef3IgM-& z4h~jUR`&Mx$Z6zoe}8{>cNdSx|M~L=gTbt>u9DN%*Vi{UHb%b#-;k&CQLDjCOW*erxEn zv9TE+A1@!At*NOQ8ym~(n(X_%LFN-yQ2VpLe|~CcK-SmSW6>McBlF?)NE{lqjooNLtWHf$H8(ehRgZrzZ^q-d zdV720!C=_>*7yo;0zLs-#^Uii8ylNVlgpX4UER~@^z`(>!9h42UeGr^G{0FrzFbvR zHH+DAm{|HTwop8{)DR9vp?5KBupRs^e13goc@vFZZjQ9Y;C2RP(NHM#$K=`$fiOEa zo8LOvH2QmaW+JR+fzJ*bEer^h+%$!0jt6fnj;tdazkdCiot@p+*9QWH zRm6i34Ux%}9TA1KYwPPa*3nhnLuC24c6RHLXw(`e-v$H*$Dw+lVIa^NtY#UFt`7r) zGMaXGwp-H40v9e%Ha0aiWp_4T64ndLP3*taUjrF8yjCxL~W9-?auam zRCO=1H4PL|NM5r5F!*O4INI7KAvPf;B_%H}Z*XF&ux)5>55K>Mts~1_4d33zE?{>- zApZggDAV6&8Hcm>{Z^YE)LRr()jze1MG|l*?B*P9rV$Jd7@1uH`_~U5V8!u1o#EiX zI^_KBetg};U`_Wtn2Vj2ljml31h}Z7V z%sWtR<&fY<1wo@E+&4Y#w1-e;vnN@fq>o9iC|m-`DnGlV^aZPT`cW_Qg<1rV3jCFl z(ssX1dP90vfJnPOsXBN|iFHJ2KX5Un5*Oe7FXV z^qaiaEJmGv%7aVZJV$MXd5y42$sA_1)W}YQ?4o7+yt@=y6luGE2y>@rG;{9-} zz&w)v1)3<8CiiFpeb~b*zlcL8ciM{9t*ESb9<-a$t_8WQ=Su}PeOp`%=#Y1}^7He% zcC|w(Pi-O^tfA3+Gyju}sIJ~Lj?Ug6^H3;y{;K}ah>#SAo0m78av$<5ux9OZr_W{q z%pk9w3f~z};G;^?k?#Bwb}>Et-8U#`_oUlVic2!j(ne75DL~4<&bSpFOuI9oUEqHu zH5nt3oWx<4o$R#n(fSQT1Qj?M|6}k0O-1!vdow)Ts0Sf^{9@2AI*F|{BvFI}i?ARc z!^`lzV!-h(YFFU1iq}&UE|Q%NRH?J`=-gni>BkRqx@KkZ4+_p&H&k*y-g*2uT$Y;n zE`gvI&dqQ?ev1jncN^@Bb^qMMw3OmYkrT#Owd~)G=AHk1C4z!V-6dn3#@1o%_;Ja& zV0~Sk)XRr~2>jn-yfaJpsqh5ArPvQX`z5zeL}861TW0~IyJhLuDsQ+H_zP(B4!UIt zv3pv{GmfIf854OQ%Ta#)X4lmlI`Z&N?f<>=M4oqL7wptwGtc{zm-yipehmbGhGG(m^i|3gs1 zN!UbmgTY`s#~I@&r2aZPP&}URGNR|G=#NszCkDPT!@w$<%7Q9A1ty)hxBEvEb zjXxPF^{n%J5>bd0aY~oY=uegW2+vBa$jF$fed{nam-p={pLpsc_hm%M*jcCJeamL> z2K(+s-I1gHnXU*Pi9M|i+CG~Sw>)Y@c@Z0;uS)6+qsOwX;v3sMS@Tey=i395t;gDF zG+#2`9sIuMs`A^#F-d_$VxFwWUAA6a6d|D~T@0+iWd}t{y$I)(vsYHB_OlHI8VyfW z5;I~bjWf7WtI1)7AEf%EN#8Ll zzwFo`am+C>MtrckIHQtzSHM!H^N5Ks;B7p(H#YnhH#&PwVewtfXpV8iyDDd~r5=&9 z^%}nNkuU*qlHtkKeP)%}xw$rbo&D5}jn@LgEWe+dcWM*S@=-y?heJrkm9&M10silD z>kJVNzJCP|b4dyq)AdvCpK?rR&VIoq3C~jf__1qZ$X3h5$ul6f8X5bL11zJ<1DSdv zAnKv5Js)$eEZXO`?k-pCot$)_6en9CqUaqBoigRSB5|Mdmz4}!%*BY7m?sIi(t2FB zz$EScRY&{pH(jf?AMv~qC-sO_zMmpk{#h&2-|w*KPij5sWVBdTURgCt!eLLxxs;8r zk*q$H6SwSlv*+M25 zqr-68PPr!6{=@!x>3cw5E&S`q1AdO~4cS2b2G5C4q1MXF^v`3`#Ew&)tuVt@&8t)O zi@Syae1z7q$}h-l0e&NW*PQ3XgLMr_pBGB_h3-fC$|n940=W+lUsU?-%-nS9q9 znqS^#uQ|Q>QYEzoZ!H76khaJ9+_`_!tDFR`9wJ zdgInj=7|L970L@i#4-yz%je#t&m#6|0&VF)Vau|48wkQi1{hSThL>fgci1BarVi?7 zuO+L1|FN@kmohcA=8xgLH}>}272i(2xB^dA0+u0p2m2SJq$}AnEWI*!Bwqp44qit$ zv$kBAB1Kp>8Pl5Hah#dtQ>kb16)Oo(ZZg8ozws^PiA#(X=|Y;s18U^hQXFDc=>d0* z;(NUVy-1@1aJi=Kr=!|bzjX7e3wr2Ky4#oWVLu^{oC&YHbPL~T(J5wq5)CzPSG?F@ zwi4s!KQoR;Rt5H*#gtZsI31apfNXDya?bsFQhh0`r%X03(inZIFDBFsy?9=OIt}#p z5EeFK=7x()JMjq3UMwO1i9?~-m|uD`FXvMmCE8!8jz4MJ|E%=b&%IYs_!fvRPZ&an(x_^>2h7L{T99WK+6vQj0$9-hvg{Ir zL{UIPLi@OU)`V5Y7!nLZjyPppzZuaWKD=!|SH6`?OM`Ic=Yow`&Gk~oGw2&^06r7- zwV)!)jFFQR7K?e|%mJ^HuRUPwH4s>yzog`S%+7qr=F~M^cz`lI0hF}{DCRvM0mO5F+vMA&W)5%pCYTlIxW1)}}onKi^ zDasloHa2QCmcKL6F3!vRSEo+Pg|;AO`=o+CA$?6XsgrY~f%1nMmQu#o*jw*=8#}BF ztmGhBa@YVLCG|XO`BwWpYo)eqt1pZCRV5(f@@|?AQe()I1;L9%4 zsh{1Dqn5Gas#PAJ)DRBY*VL%(9)dc>8>VXhh=u0C(lep8II1_ZtZu{#3CtHk$uLL? zE$m7cz_5$ez?4L~aTy?a!%q08?JN+uq~lZ>9qB+{8Qc7b4^Y2&ez{30ou!)c8-#cb zhW692)K`V4umbLOpsXoxGgBx5PHLERx{BPW`#KcBT3s9Vx$|a4aQ4rskYZdq#39H0 zdMwZ}8|RS`h`OdWli57mHJbf(h^DemA zX3Bc8tZpI~J)wfY5b^|Fs=t~0PncFogI3AuSY1EY3(_*rNrH^$9vQk}wsE8zQ`xGr zIFukUQW@omwW5p6$aI^{9EaLRc{(L{LUWIbv#|99?~SBR^z z-_H|k9d_CxZm746w=+JWLKi8~X2(~FfPhyhJ5YSXI`y6-+EX(c4ND(#oCIFizv4D` zAzt;Vu!gQrrs!@~lN{X5b-aU-s2sNeY?0+A>~}Xi>`d9+RL47l47v}<=_mpIOtKs3 zcv$Lqe?p=%=WCc)3|c&_bq?1}t%64WmN=NA#R|crZ zVw{Mf`S&z+hs$p=nY(C2cvZSiHT>&e^2l?Ys*>N-Gj|Dt+&l5cJ^Zv&iZt~!KRW)8 z?{nvX-ZH71&YqWT$SKLJR0Jb-Zta*$ zamK-T>*}7b6iMafQzasqf}qWeg3a`h=M@w4n2uVd)K&kC9*={)M(V+Hx)uvHm@^R6Af`f77|OD&P1&p_TOGsH@!yu zTa@BCCu5QKy(T-FEZjoa<{*nt1>W^i?mX+`vX}qe&D2=badnF{Ln4vWuUg*P=-yTX zHl;zrSll3`+5GQ==>fEnzcFgur7UidrP&+Tl_L^S%9HG&iZU1f5FI zFLEh>fKR*b!So?pFLM909eu4T^y>lX^;PCJGud){paz@g=0O9_HLn8$i50sHK>rK z?%5QQ)(aXPr~mJy|;ok#{_E>E;((#eZfySBmd zT+@m9111}POpKaI@X(~nh!=e2XUYjQ-AP=A7W7C(w0HqD&6-u`hR&4sqom!9dfstu^ z7;Q~eKBo2rnxu$w!(qJDo^5A`xt*?tmt%2Q4m{(eni|mteIT5Rw^q2Z6$oRgPVDf? zqRwj3rkgG=gwP*SANV!U=bG?DNFP_E-zzpGrb^#R3mG%(KffA6I<|pY3LL2HKzN9U z-9_9yig%JBnqg0rti!&iIcfO6y5ZNw6@xBkA-(MB{Gax-#7|5}cca*@?|^V`rxH%yvhzyJR z#52jw_vs54zCbsvzR2{~26XNiC>uF;I2jmar%2|Bx7juCCYTREYPc`(^tNsCn{1@lmAE^KU literal 0 HcmV?d00001 diff --git a/docs/images/reporter-json.png b/docs/images/reporter-json.png new file mode 100644 index 0000000000000000000000000000000000000000..249f49a56699d21ce8a563d90917d1e4ddc1aa5c GIT binary patch literal 6766 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 literal 0 HcmV?d00001 diff --git a/docs/images/reporter-landing-fail.png b/docs/images/reporter-landing-fail.png new file mode 100644 index 0000000000000000000000000000000000000000..a90562c25e769df69580325cb269a1a176245abd GIT binary patch literal 6520 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%0DmGX$p5K`)7WPq4-Ev~tfLKy3kqb$G_QdA zZE+*&zbuP>#!-p`3us4Xzg<4shta|k&DW|zCi?`A)>c#-qi$43^Y6`sohur^%yf=L z3mnu9Y5d{$^sWnH+YR&0ax)XX1^!eFX+*-&V;5izFPr+hLg~SraO1OvW}vY% zG7`8!@8@!+5*Bt*0Ne48o}R>1MWEr(?S)m?Ha}KvO*VA;UnInWET|ikggndDNQzD1 zRi?*#KTco-jXyt5^HHENbqC~T;Q%HNamLjTyjsD%7fiW?eP6qSd;@n|<5c?zF$dpa zCbg!b-7^9NMPZeYu+!9R+g;ItzU4r&C-n&(7IG6jG<`I1BEN!w#^jPN6214WtTgm5 R{r$23uAZ50jkZhFe*nx>>cap4 literal 0 HcmV?d00001 diff --git a/docs/images/reporter-nyan.png b/docs/images/reporter-nyan.png new file mode 100644 index 0000000000000000000000000000000000000000..b21e0a4f43c85028198a16cc7f2b864478ebaf49 GIT binary patch literal 12316 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 literal 0 HcmV?d00001 diff --git a/docs/images/reporter-progress.png b/docs/images/reporter-progress.png new file mode 100644 index 0000000000000000000000000000000000000000..79237b388ca632b847e8765196eb62d65084c488 GIT binary patch literal 4943 zcma)=c|4SB|Hp@jltfzS7(~`AGm>n{I+7Gp1~WslrUhAMvV?@tkUcvQ*|HQ_(_qM! zeHg|vW|*;z%-G3q&UwyrPUm@^KYrIA_jkFj*L7dt@Adw?Uia&cxM>36<`U!r007)q z4fV_b09G^rz>>y!fSEzh)=o1M+c%AG=`%wHgR!=@w!XgpFMoA)l^HHAEioPD6!W>a zx3{^u$#iyhc9>He8yj0&Tf4iv=jz3SLPGZU_d#=K-QC?QE6XBbGBPsK+uPgePV%Ov zrgCy}=gyszk+G7Mb-sQ3wwzs@tZB3iA~-&`%vM_Zg|UpYlhb`UxvKJP6bdC}75J^cxpJWMb>*DPAun@QN*Y3+Zr)4_JH`i8~gqPZ0 zJD=cbI6gi;JUj%0!SHze?Ch+ywe{rWBo2oo5C}vfae8`sYHF&rwRLK0tg*3?OeXjD z_rEJBAQEQ=1_nqo6CLdx5pZ~SclQjTi$o%|;-){8mqVe@?|t7#Mn*>4i|Xp?1_uX6 zM@J_nCYqa@J3G5zu$Mk?SaJIZl|n`!5U=6zdD2X8Z*SeeOk!f<$8fkcDkT^W@0y+` zO?NjmG>m<(2`lTGCeOiMmBW(i2^08)>i&tT+3}g_uLWTv1VUd`Y$6i2xVSjflm$ch zRL0u0Ri=|?2Pelna=r|X%+7U{g~Y|hQRb%c6H^4j2n-fP!1t7vmR47P$_up~WmY&# z`p`pw`+gW38-oXz1{HTq57d&#GZ+kJety2Va{`OS_IB2L=eH&&Cu90YXQn4RCuT_V zlnESmVPT%oWmFMf% zu_a%7R#sN1Go6){mA$PW5OA->1qvLF4zaZ@DlUqK!zmO>U{Xnxt?eXXy0JJvJ14uQ zd$=qX6&@CjAMWXC|CXAX+TPw=TwiY;nw^)IA5qwpm6g@d)o$hC#3b-TQB7EMPIUCE z#w_o7>Y|^YUuSps9F@{PI>IEAy0nxZiN5C((OOggCc-=EiT{V{uNfH`&;3zIA6py_ zpZVdVF9P`lmPn$~5QvZ!h3;nD%wi91`x$=F$8%cC>c(bF)@3G$G_6)zy$QLJF*0Tq*%i*pPWd zTx3wN4pz3kQxd_?&kr{+xjg1%(YYh+#?76eu|gjklAIkLs1Q&0dnhH9rq{1??S5&) zJ0G<*8f@VEn9Zt>h}LTd7RBA=D?J9wz7P3hECj5~b2ccK2ulM=&ht^@tS*Z4?-|w{ z;Htbbu;Av|OmTV?0dXWD+|OcnvBkV3wNDv3`>=g|^vK54CXwaXwI$ya;$!R+`Ir0P zPYU%2owqAjs=#e3X|lJqv`?4F_NYX;Y(8we8fidVK>6=X zGPcp)nF$5;T08M5i`%M#pJ(_&B9c{15k)0cgM0U>@Yd!xXaZ2E7JJ$&S1uK(z?XEhtF0|(&Q`Nh^9C>2maied*Hbu`SYF=2OGy- zTAR6?r785D%VX8Wxb84zpC(E@@k4d`=}S-PeoYM{DhE(ocMhzRnh5LzoC$?HyA51V zS%PE0#|16H)h2T^|4gbJ;o+&plbr=5lBmAu}jS z6^3Sdo5$X*SXHT9@l(`KP;DnvOHp+>4jndd%v&AO`WUII%cCC+lkC8g_>~WP2dc?_ z+PN?O`AIXMVJ|nVs@$Vc5YGX# zs%dLKAnQ&$ouH?6TPXTRNGw-Lvm*t)A)!K(Pm(vrtp2!oO)TxyRthA)&pfie;8{BN zbt%jR&i0bljrxeYKP9EtQo=Eb#p-nh1jFHmb z6+!J=&$h?!=z>QY$Js@@n^W&nJxhxM!xt}FB$+$lQ(R(us>Ay0{k6du%|0;V$!-7l zjnLW~#~gd6)(%pFt7~6|u{TGe_kLRMx*AJq9J7*`#n{r>g1CF^EkvQN?>}s1eW3?S zDO29Q2+C^yQmHM$*0FnFJvP5#(+vWFxHdft&D}X4SyhiV<37{+_0dXszhEK%s5o_x{KkCiFFZU!~abF{UYV(A{s>hak(7hNEV@-y7YRM?L1qD#=XbcC-fnxcQ*2Ojyy;WnJGB; z0(gBmD|f=Hr#JJb zih?owBAH@bTdtPY{{V0(|Ne!WUmWBu`r%ytX2l67FX~W0-fJ`0*+jqk@*16~iy4jwSQ)TZ zHQ(}#`VR8#azEImhQN(3(su0v4iPdei(hJYUU1?Cc!v1YaADM-ExGPVMb8pDz`$vt z(k=}!x=W1S{x6dZ{yc5hW1LWjwaj@nmAvSAzjDda{RS!Ra{@-c?KdX(>?dBIu-wHb@C5He3D)RW}%w47aFC6F7yfLf#vu_$sPtJEv~dht`&GLiz=4^LYAZWY-2 z_-Z@E zV{s9&okdR0!HNR_u7WLP;?n4$B5VImlkqJT5n;KZ!-4B~F7HXIk^gaJbQe)j#}`UW zi2g1pjXt_-7$Mm4@jR(lrDAF3$J##j;CrAKV5Oo>_6#6B9!oH8mVdWE+O73_vemV~ zdzt8;4t*b}-OcRt6;6fw^%cBEF{?PgnY9ZSeboeAQ(-Vk%H-}xEC7a%1WY+Z-?<2g ze5+wp_sHtKiq*D?TmL}FE>%4{;uC}ndZXv{n~sf;k-=5uA|rhDA>;C-U$c)*M9%y! z)WOqi{Stc+p6$z%1DEu_+24p12|QnX*sS{dzR?srmb{k!SaFa0RTS!n=sq z71d}X7xp!-D>F1_;>$ZIln&52%U9eW^l%81Nz#)l6{D$zOyCUgreIuQ(ub}6D{8(asLF221Zxlfor}N};s@wv7;wk+^VOmB* zz{cDOO#`oQ9+`A&_rS2EU7I$E)Q$X(PzJ&&@+}~oM z%QKjYM%*}U2cs1U?n(fIGa{6qE?!(3Z&*fb>lP9rQfN$XajoN{fYN4mP~xY1DPd%r{^;0-LDW)+0vzJ^5d>`t)RTYEs?P zh13TGfU!PDirUN9uk5$$GKl!KaNxCEEO^-d=smZsj1)QY%{mAp`A--xTQT2efQmBy zG)mkIhz2U9*(e8QcD#Q7i5kSGI#S|U&lCty>m@G0c7y5BoL2Uq{(=u9`Iq2tq<-b# zPbz92{TCs>&tzer|AU%8SN{{9KO(HZ?!V#u6;(D(iC?+>YwFil|Jm_n;lI28XXmsmi|)*e^kWO&;QE*b=p5l7zq1+wgSQ^_=i~k+U6fc zV=4c$VbAqT7LT8Ad>?<1xmrUj4cJHAA~iF`OM}A~t09)RRDp)*d3SfDyHuudA2F^o zvLP_wxjuQ*V=`0N&XnW}U;?PF`$}PhAck5r`wh6W#CtM@$l@2EhfZi>sVo+;Zz{UO R$NV<{xT(^|=`D0bq=h0~YCu3bp(?$F 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 PZ~@d+wV#wIn+N_EN-}wF literal 0 HcmV?d00001 diff --git a/docs/images/reporter-spec-fail.png b/docs/images/reporter-spec-fail.png new file mode 100644 index 0000000000000000000000000000000000000000..e4910a7029b4cccd1ccea357559f118f42978b7f GIT binary patch literal 7382 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 MN?M8~@=)LZ1wc@ye*gdg literal 0 HcmV?d00001 diff --git a/docs/images/reporter-spec.png b/docs/images/reporter-spec.png new file mode 100644 index 0000000000000000000000000000000000000000..2fd39d76ebc137fa41dda61d04c545683b2a8a71 GIT binary patch literal 5025 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 literal 0 HcmV?d00001 diff --git a/docs/images/test-duration-range.png b/docs/images/test-duration-range.png new file mode 100644 index 0000000000000000000000000000000000000000..26dcfc0460654dcdb3552cfb7c57f72a0eaab53d GIT binary patch literal 5755 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%0D!{vC$M+6sJnbbL)Mwk$IVyZK6csPvDT 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 + Gitter + OpenCollective backers + OpenCollective sponsors + + +{% include backers.md %} +{% include sponsors.md %} + +## Features + +- [browser support](#running-mocha-in-the-browser) +- [simple async support, including promises](#asynchronous-code) +- [test coverage reporting](#wallabyjs) +- [string diff support](#diffs) +- [javascript API for running tests](#more-information) +- proper exit status for CI support etc +- [auto-detects and disables coloring for non-ttys](#reporters) +- [maps uncaught exceptions to the correct test case](#browser-specific-methods) +- [async test timeout support](#delayed-root-suite) +- [test retry support](#retry-tests) +- [test-specific timeouts](#test-level) +- [Growl support](#desktop-notification-support) +- [reports test durations](#test-duration) +- [highlights slow tests](#dot-matrix) +- [file watcher support](#min) +- [global variable leak detection](#-check-leaks) +- [optionally run tests that match a regexp](#-grep-regexp-g-regexp) +- [auto-exit to prevent "hanging" with an active loop](#-exit) +- [easily meta-generate suites](#markdown) & [test-cases](#list) +- [config file support](#-config-path) +- [mocha.opts file support](#-opts-path) +- clickable suite titles to filter test execution +- [node debugger support](#-inspect-inspect-brk-inspect) +- [detects multiple calls to `done()`](#detects-multiple-calls-to-done) +- [use any assertion library you want](#assertions) +- [extensible reporting, bundled with 9+ reporters](#reporters) +- [extensible test DSLs or "interfaces"](#interfaces) +- [before, after, before each, after each hooks](#hooks) +- [arbitrary transpiler support (coffee-script etc)](#-compilers) +- [TextMate bundle](#textmate) + +## Table of Contents + + + +- [Installation](#installation) +- [Getting Started](#getting-started) +- [Run Cycle Overview](#run-cycle-overview) +- [Detects Multiple Calls to `done()`](#detects-multiple-calls-to-done) +- [Assertions](#assertions) +- [Asynchronous Code](#asynchronous-code) +- [Synchronous Code](#synchronous-code) +- [Arrow Functions](#arrow-functions) +- [Hooks](#hooks) +- [Pending Tests](#pending-tests) +- [Exclusive Tests](#exclusive-tests) +- [Inclusive Tests](#inclusive-tests) +- [Retry Tests](#retry-tests) +- [Dynamically Generating Tests](#dynamically-generating-tests) +- [Timeouts](#timeouts) +- [Diffs](#diffs) +- [Command-Line Usage](#command-line-usage) +- [Interfaces](#interfaces) +- [Reporters](#reporters) +- [Running Mocha in the Browser](#running-mocha-in-the-browser) +- [Desktop Notification Support](#desktop-notification-support) +- [Configuring Mocha (Node.js)](#configuring-mocha-nodejs) +- [`mocha.opts`](#mochaopts) +- [The `test/` Directory](#the-test-directory) +- [Error Codes](#error-codes) +- [Editor Plugins](#editor-plugins) +- [Examples](#examples) +- [Testing Mocha](#testing-mocha) +- [More Information](#more-information) + + + +## Installation + +Install with [npm][] globally: + +```sh +$ npm install --global mocha +``` + +or as a development dependency for your project: + +```sh +$ npm install --save-dev mocha +``` + +> As of v7.0.0, Mocha requires Node.js v8.0.0 or newer. + +## Getting Started + +```sh +$ npm install mocha +$ mkdir test +$ $EDITOR test/test.js # or open with your favorite editor +``` + +In your editor: + +```js +var assert = require('assert'); +describe('Array', function() { + describe('#indexOf()', function() { + it('should return -1 when the value is not present', function() { + assert.equal([1, 2, 3].indexOf(4), -1); + }); + }); +}); +``` + +Back in the terminal: + +```sh +$ ./node_modules/mocha/bin/mocha + + Array + #indexOf() + ✓ should return -1 when the value is not present + + + 1 passing (9ms) +``` + +Set up a test script in package.json: + +```json +"scripts": { + "test": "mocha" +} +``` + +Then run tests with: + +```sh +$ npm test +``` + +## Run Cycle Overview + +A brief outline on the order Mocha's components are executed. +Worth noting that all hooks, `describe` and `it` callbacks are run in the order they are defined (i.e. found in the file). + +```js +run 'mocha spec.js' +| +spawn child process +| +|--------------> inside child process + process and apply options + | + run spec file/s + | + |--------------> per spec file + suite callbacks (e.g., 'describe') + | + 'before' root-level pre-hook + | + 'before' pre-hook + | + |--------------> per test + 'beforeEach' root-level pre-hook + | + 'beforeEach' pre-hook + | + test callbacks (e.g., 'it') + | + 'afterEach' post-hook + | + 'afterEach' root-level post-hook + |<-------------- per test end + | + 'after' post-hook + | + 'after' root-level post-hooks + |<-------------- per spec file end +|<-------------- inside child process end +``` + +## Detects Multiple Calls to `done()` + +If you use callback-based async tests, Mocha will throw an error if `done()` is called multiple times. This is handy for catching accidental double callbacks. + +```javascript +it('double done', function(done) { + // Calling `done()` twice is an error + setImmediate(done); + setImmediate(done); +}); +``` + +Running the above test will give you the below error message: + +```sh +$ ./node_modules/.bin/mocha mocha.test.js + + + ✓ double done + 1) double done + + 1 passing (6ms) + 1 failing + + 1) double done: + Error: done() called multiple times + at Object. (mocha.test.js:1:63) + at require (internal/module.js:11:18) + at Array.forEach () + at startup (bootstrap_node.js:187:16) + at bootstrap_node.js:608:3 +``` + +## Assertions + +Mocha allows you to use any assertion library you wish. In the above example, we're using Node.js' built-in [assert][node-assert] module — but generally, if it throws an `Error`, it will work! This means you can use libraries such as: + +- [should.js][] - BDD style shown throughout these docs +- [expect.js][] - `expect()` style assertions +- [chai][] - `expect()`, `assert()` and `should`-style assertions +- [better-assert][] - C-style self-documenting `assert()` +- [unexpected][] - "the extensible BDD assertion toolkit" + +## Asynchronous Code + +Testing asynchronous code with Mocha could not be simpler! Simply invoke the callback when your test is complete. By adding a callback (usually named `done`) to `it()`, Mocha will know that it should wait for this function to be called to complete the test. This callback accepts both an `Error` instance (or subclass thereof) _or_ a falsy value; anything else will cause a failed test. + +```js +describe('User', function() { + describe('#save()', function() { + it('should save without error', function(done) { + var user = new User('Luna'); + user.save(function(err) { + if (err) done(err); + else done(); + }); + }); + }); +}); +``` + +Alternatively, just use the `done()` callback directly (which will handle an error argument, if it exists): + +```js +describe('User', function() { + describe('#save()', function() { + it('should save without error', function(done) { + var user = new User('Luna'); + user.save(done); + }); + }); +}); +``` + +### Working with Promises + +Alternately, instead of using the `done()` callback, you may return a [Promise][mdn-promise]. This is useful if the APIs you are testing return promises instead of taking callbacks: + +```js +beforeEach(function() { + return db.clear().then(function() { + return db.save([tobi, loki, jane]); + }); +}); + +describe('#find()', function() { + it('respond with matching records', function() { + return db.find({type: 'User'}).should.eventually.have.length(3); + }); +}); +``` + +> The latter example uses [Chai as Promised][npm-chai-as-promised] for fluent promise assertions. + +In Mocha v3.0.0 and newer, returning a `Promise` _and_ calling `done()` will result in an exception, as this is generally a mistake: + +```js +const assert = require('assert'); + +// antipattern +it('should complete this test', function(done) { + return new Promise(function(resolve) { + assert.ok(true); + resolve(); + }).then(done); +}); +``` + +The above test will fail with `Error: Resolution method is overspecified. Specify a callback *or* return a Promise; not both.`. In versions older than v3.0.0, the call to `done()` is effectively ignored. + +### Using async / await + +If your JS environment supports [async / await][mdn-async], you can also write asynchronous tests like this: + +```js +beforeEach(async function() { + await db.clear(); + await db.save([tobi, loki, jane]); +}); + +describe('#find()', function() { + it('responds with matching records', async function() { + const users = await db.find({type: 'User'}); + users.should.have.length(3); + }); +}); +``` + +## Synchronous Code + +When testing synchronous code, omit the callback and Mocha will automatically continue on to the next test. + +```js +describe('Array', function() { + describe('#indexOf()', function() { + it('should return -1 when the value is not present', function() { + [1, 2, 3].indexOf(5).should.equal(-1); + [1, 2, 3].indexOf(0).should.equal(-1); + }); + }); +}); +``` + +## Arrow Functions + +Passing [arrow functions][mdn-arrow] (aka "lambdas") to Mocha is discouraged. Lambdas lexically bind `this` and cannot access the Mocha context. For example, the following code will fail: + +```js +describe('my suite', () => { + it('my test', () => { + // should set the timeout of this test to 1000 ms; instead will fail + this.timeout(1000); + assert.ok(true); + }); +}); +``` + +_If you do not need to use_ Mocha's context, lambdas should work. However, the result will be more difficult to refactor if the need eventually arises. + +## Hooks + +With its default "BDD"-style interface, Mocha provides the hooks `before()`, `after()`, `beforeEach()`, and `afterEach()`. These should be used to set up preconditions and clean up after your tests. + +```js +describe('hooks', function() { + before(function() { + // runs before all tests in this block + }); + + after(function() { + // runs after all tests in this block + }); + + beforeEach(function() { + // runs before each test in this block + }); + + afterEach(function() { + // runs after each test in this block + }); + + // test cases +}); +``` + +> Tests can appear before, after, or interspersed with your hooks. Hooks will run in the order they are defined, as appropriate; all `before()` hooks run (once), then any `beforeEach()` hooks, tests, any `afterEach()` hooks, and finally `after()` hooks (once). + +### Describing Hooks + +Any hook can be invoked with an optional description, making it easier to pinpoint errors in your tests. If a hook is given a named function, that name will be used if no description is supplied. + +```js +beforeEach(function() { + // beforeEach hook +}); + +beforeEach(function namedFun() { + // beforeEach:namedFun +}); + +beforeEach('some description', function() { + // beforeEach:some description +}); +``` + +### Asynchronous Hooks + +All hooks (`before()`, `after()`, `beforeEach()`, `afterEach()`) may be sync or async as well, behaving much like a regular test-case. For example, you may wish to populate database with dummy content before each test: + +```js +describe('Connection', function() { + var db = new Connection(), + tobi = new User('tobi'), + loki = new User('loki'), + jane = new User('jane'); + + beforeEach(function(done) { + db.clear(function(err) { + if (err) return done(err); + db.save([tobi, loki, jane], done); + }); + }); + + describe('#find()', function() { + it('respond with matching records', function(done) { + db.find({type: 'User'}, function(err, res) { + if (err) return done(err); + res.should.have.length(3); + done(); + }); + }); + }); +}); +``` + +### Root-Level Hooks + +You may also pick any file and add "root"-level hooks. For example, add `beforeEach()` outside of all `describe()` blocks. This will cause the callback to `beforeEach()` to run before any test case, regardless of the file it lives in (this is because Mocha has an _implied_ `describe()` block, called the "root suite"). + +```js +beforeEach(function() { + console.log('before every test in every file'); +}); +``` + +### Delayed Root Suite + +If you need to perform asynchronous operations before any of your suites are run, you may delay the root suite. Run `mocha` with the `--delay` flag. This will attach a special callback function, `run()`, to the global context: + +```js +setTimeout(function() { + // do some setup + + describe('my suite', function() { + // ... + }); + + run(); +}, 5000); +``` + +## Pending Tests + +"Pending"--as in "someone should write these test cases eventually"--test-cases are simply those _without_ a callback: + +```js +describe('Array', function() { + describe('#indexOf()', function() { + // pending test below + it('should return -1 when the value is not present'); + }); +}); +``` + +Pending tests will be included in the test results, and marked as pending. A pending test is not considered a failed test. + +## Exclusive Tests + +The exclusivity feature allows you to run _only_ the specified suite or test-case +by appending `.only()` to the function. Here's an example of executing only a particular suite: + +```js +describe('Array', function() { + describe.only('#indexOf()', function() { + // ... + }); +}); +``` + +_Note_: All nested suites will still be executed. + +Here's an example of executing an individual test case: + +```js +describe('Array', function() { + describe('#indexOf()', function() { + it.only('should return -1 unless present', function() { + // ... + }); + + it('should return the index when present', function() { + // ... + }); + }); +}); +``` + +Previous to v3.0.0, `.only()` used string matching to decide which tests to execute; this is no longer the case. In v3.0.0 or newer, `.only()` can be used multiple times to define a subset of tests to run: + +```js +describe('Array', function() { + describe('#indexOf()', function() { + it.only('should return -1 unless present', function() { + // this test will be run + }); + + it.only('should return the index when present', function() { + // this test will also be run + }); + + it('should return -1 if called with a non-Array context', function() { + // this test will not be run + }); + }); +}); +``` + +You may also choose multiple suites: + +```js +describe('Array', function() { + describe.only('#indexOf()', function() { + it('should return -1 unless present', function() { + // this test will be run + }); + + it('should return the index when present', function() { + // this test will also be run + }); + }); + + describe.only('#concat()', function() { + it('should return a new Array', function() { + // this test will also be run + }); + }); + + describe('#slice()', function() { + it('should return a new Array', function() { + // this test will not be run + }); + }); +}); +``` + +But _tests will have precedence_: + +```js +describe('Array', function() { + describe.only('#indexOf()', function() { + it.only('should return -1 unless present', function() { + // this test will be run + }); + + it('should return the index when present', function() { + // this test will not be run + }); + }); +}); +``` + +_Note_: Hooks, if present, will still be executed. + +> Be mindful not to commit usages of `.only()` to version control, unless you really mean it! To do so one can run mocha with the option `--forbid-only` in the continuous integration test command (or in a git precommit hook). + +## Inclusive Tests + +This feature is the inverse of `.only()`. By appending `.skip()`, you may tell Mocha to simply ignore test case(s). Anything skipped will be marked as [pending](#pending-tests), and reported as such. Here's an example of skipping an individual test: + +```js +describe('Array', function() { + describe('#indexOf()', function() { + it.skip('should return -1 unless present', function() { + // this test will not be run + }); + + it('should return the index when present', function() { + // this test will be run + }); + }); +}); +``` + +You can also put `.skip()` on an entire suite. This is equivalent to appending `.skip()` onto all tests in the suite. Hooks in the suite are also skipped. + +```js +describe('Array', function() { + describe.skip('#indexOf()', function() { + it('should return -1 unless present', function() { + // this test will not be run + }); + }); +}); +``` + +_Note_: Code in skipped suites, that is placed outside of hooks or tests is still executed, as mocha will still invoke the suite function to build up the suite structure for visualization. + +> _Best practice_: Use `.skip()` instead of commenting tests out. + +You may also skip _at runtime_ using `this.skip()`. If a test needs an environment or configuration which cannot be detected beforehand, a runtime skip is appropriate. For example: + +```js +it('should only test in the correct environment', function() { + if (/* check test environment */) { + // make assertions + } else { + this.skip(); + } +}); +``` + +The above test will be reported as [pending](#pending-tests). It's also important to note that calling `this.skip()` will effectively _abort_ the test. + +> _Best practice_: To avoid confusion, do not execute further instructions in a test or hook after calling `this.skip()`. + +Contrast the above test with the following code: + +```js +it('should only test in the correct environment', function() { + if (/* check test environment */) { + // make assertions + } else { + // do nothing + } +}); +``` + +Because this test _does nothing_, it will be reported as _passing_. + +> _Best practice_: Don't do nothing! A test should make an assertion or use `this.skip()`. + +To skip _multiple_ tests in this manner, use `this.skip()` in a "before all" hook: + +```js +before(function() { + if (/* check test environment */) { + // setup code + } else { + this.skip(); + } +}); +``` + +This will skip all `it`, `beforeEach/afterEach`, and `describe` blocks within the suite. `before/after` hooks are skipped unless they are defined at the same level as the hook containing `this.skip()`. + +```js +describe('outer', function() { + before(function() { + this.skip(); + }); + + after(function() { + // will be executed + }); + + describe('inner', function() { + before(function() { + // will be skipped + }); + + after(function() { + // will be skipped + }); + }); +}); +``` + +Skipping a test within an "after all" hook is deprecated and will throw an exception in a future version of Mocha. Use a return statement or other means to abort hook execution. + +> Before Mocha v3.0.0, `this.skip()` was not supported in asynchronous tests and hooks. + +## Retry Tests + +You can choose to retry failed tests up to a certain number of times. This feature is designed to handle end-to-end tests (functional tests/Selenium...) where resources cannot be easily mocked/stubbed. **It's not recommended to use this feature for unit tests**. + +This feature does re-run `beforeEach/afterEach` hooks but not `before/after` hooks. + +**NOTE**: Example below was written using Selenium webdriver (which [overwrites global Mocha hooks][selenium-webdriver-testing] for `Promise` chain). + +```js +describe('retries', function() { + // Retry all tests in this suite up to 4 times + this.retries(4); + + beforeEach(function() { + browser.get('http://www.yahoo.com'); + }); + + it('should succeed on the 3rd try', function() { + // Specify this test to only retry up to 2 times + this.retries(2); + expect($('.foo').isDisplayed()).to.eventually.be.true; + }); +}); +``` + +## Dynamically Generating Tests + +Given Mocha's use of `Function.prototype.call` and function expressions to define suites and test cases, it's straightforward to generate your tests dynamically. No special syntax is required — plain ol' JavaScript can be used to achieve functionality similar to "parameterized" tests, which you may have seen in other frameworks. + +Take the following example: + +```js +var assert = require('chai').assert; + +function add() { + return Array.prototype.slice.call(arguments).reduce(function(prev, curr) { + return prev + curr; + }, 0); +} + +describe('add()', function() { + var tests = [ + {args: [1, 2], expected: 3}, + {args: [1, 2, 3], expected: 6}, + {args: [1, 2, 3, 4], expected: 10} + ]; + + tests.forEach(function(test) { + it('correctly adds ' + test.args.length + ' args', function() { + var res = add.apply(null, test.args); + assert.equal(res, test.expected); + }); + }); +}); +``` + +The above code will produce a suite with three specs: + +```sh +$ mocha + + add() + ✓ correctly adds 2 args + ✓ correctly adds 3 args + ✓ correctly adds 4 args +``` + +

    Test duration

    + +Many reporters will display test duration and flag tests that are slow (default: 75ms), as shown here with the "spec" reporter: + +![test duration](images/reporter-spec-duration.png?withoutEnlargement&resize=920,9999){:class="screenshot" lazyload="on"} + +There are three levels of test duration (depicted in the following image): + +1. FAST: Tests that run within half of the "slow" threshold will show the duration in green (if at all). +2. NORMAL: Tests that run exceeding half of the threshold (but still within it) will show the duration in yellow. +3. SLOW: Tests that run exceeding the threshold will show the duration in red. + +![test duration range](images/test-duration-range.png?withoutEnlargement&resize=920,9999){:class="screenshot" lazyload="on"} + +To tweak what's considered "slow", you can use the `slow()` method: + +```js +describe('something slow', function() { + this.slow(300000); // five minutes + + it('should take long enough for me to go make a sandwich', function() { + // ... + }); +}); +``` + +## Timeouts + +### Suite-level + +Suite-level timeouts may be applied to entire test "suites", or disabled via `this.timeout(0)`. This will be inherited by all nested suites and test-cases that do not override the value. + +```js +describe('a suite of tests', function() { + this.timeout(500); + + it('should take less than 500ms', function(done) { + setTimeout(done, 300); + }); + + it('should take less than 500ms as well', function(done) { + setTimeout(done, 250); + }); +}); +``` + +### Test-level + +Test-specific timeouts may also be applied, or the use of `this.timeout(0)` to disable timeouts all together: + +```js +it('should take less than 500ms', function(done) { + this.timeout(500); + setTimeout(done, 300); +}); +``` + +### Hook-level + +Hook-level timeouts may also be applied: + +```js +describe('a suite of tests', function() { + beforeEach(function(done) { + this.timeout(3000); // A very long environment setup. + setTimeout(done, 2500); + }); +}); +``` + +Again, use `this.timeout(0)` to disable the timeout for a hook. + +> In v3.0.0 or newer, a parameter passed to `this.timeout()` greater than the [maximum delay value][mdn-settimeout-maxdelay] will cause the timeout to be disabled. + +## Diffs + +Mocha supports the `err.expected` and `err.actual` properties of any thrown `AssertionError`s from an assertion library. Mocha will attempt to display the difference between what was expected, and what the assertion actually saw. Here's an example of a "string" diff: + +![string diffs](images/reporter-string-diffs.png?withoutEnlargement&resize=920,9999){:class="screenshot" lazyload="on"} + +## Command-Line Usage + + + +```text + +mocha [spec..] + +Run tests with Mocha + +Commands + mocha inspect [spec..] Run tests with Mocha [default] + mocha init create a client-side Mocha setup at + +Rules & Behavior + --allow-uncaught Allow uncaught errors to propagate [boolean] + --async-only, -A Require all tests to use a callback (async) or + return a Promise [boolean] + --bail, -b Abort ("bail") after first test failure [boolean] + --check-leaks Check for global variable leaks [boolean] + --delay Delay initial execution of root suite [boolean] + --exit Force Mocha to quit after tests complete [boolean] + --forbid-only Fail if exclusive test(s) encountered [boolean] + --forbid-pending Fail if pending test(s) encountered [boolean] + --global, --globals List of allowed global variables [array] + --retries Retry failed tests this many times [number] + --slow, -s Specify "slow" test threshold (in milliseconds) + [string] [default: 75] + --timeout, -t, --timeouts Specify test timeout threshold (in milliseconds) + [string] [default: 2000] + --ui, -u Specify user interface [string] [default: "bdd"] + +Reporting & Output + --color, -c, --colors Force-enable color output [boolean] + --diff Show diff on failure + [boolean] [default: true] + --full-trace Display full stack traces [boolean] + --growl, -G Enable Growl notifications [boolean] + --inline-diffs Display actual/expected differences + inline within each string [boolean] + --reporter, -R Specify reporter to use + [string] [default: "spec"] + --reporter-option, --reporter-options, Reporter-specific options + -O () [array] + +Configuration + --config Path to config file [string] [default: (nearest rc file)] + --opts Path to `mocha.opts` (DEPRECATED) + [string] [default: "./test/mocha.opts"] + --package Path to package.json for config [string] + +File Handling + --extension, --watch-extensions File extension(s) to load and/or watch + [array] [default: js] + --file Specify file(s) to be loaded prior to root + suite execution [array] [default: (none)] + --ignore, --exclude Ignore file(s) or glob pattern(s) + [array] [default: (none)] + --recursive Look for tests in subdirectories [boolean] + --require, -r Require module [array] [default: (none)] + --sort, -S Sort test files [boolean] + --watch, -w Watch files in the current working directory + for changes [boolean] + +Test Filters + --fgrep, -f Only run tests containing this string [string] + --grep, -g Only run tests matching this string or regexp [string] + --invert, -i Inverts --grep and --fgrep matches [boolean] + +Positional Arguments + spec One or more files, directories, or globs to test + [array] [default: ["test"]] + +Other Options + --help, -h Show usage information & exit [boolean] + --version, -V Show version number & exit [boolean] + --list-interfaces List built-in user interfaces & exit [boolean] + --list-reporters List built-in reporters & exit [boolean] + +Mocha Resources + Chat: https://gitter.im/mochajs/mocha + GitHub: https://github.com/mochajs/mocha.git + Docs: https://mochajs.org/ + +``` + + + +### `--allow-uncaught` + +By default, Mocha will attempt to trap uncaught exceptions thrown from running tests and report these as test failures. Use `--allow-uncaught` to disable this behavior and allow uncaught exceptions to propagate. Will typically cause the process to crash. + +This flag is useful when debugging particularly difficult-to-track exceptions. + +### `--async-only, -A` + +Enforce a rule that tests must be written in "async" style, meaning each test provides a `done` callback or returns a `Promise`. Non-compliant tests will be marked as failures. + +### `--bail, -b` + +Causes Mocha to stop running tests after the first test failure it encounters. Corresponding "after each" and "after all" hooks are executed for potential cleanup. + +`--bail` does _not_ imply `--exit`. + +### `--check-leaks` + +Use this option to have Mocha check for global variables that are leaked while running tests. Specify globals that are acceptable via the `--global` option (for example: `--check-leaks --global jQuery --global MyLib`). + +### `--compilers` + +> _`--compilers` was removed in v6.0.0. See [further explanation and workarounds][mocha-wiki-compilers]._ + +### `--exit` + +> _Updated in v4.0.0._ + +TL;DR: If your tests hang after an upgrade to Mocha v4.0.0 or newer, use `--exit` for a quick (though not necessarily recommended) fix. + +_Prior to_ version v4.0.0, _by default_, Mocha would force its own process to exit once it was finished executing all tests. This behavior enables a set of potential problems; it's indicative of tests (or fixtures, harnesses, code under test, etc.) which don't clean up after themselves properly. Ultimately, "dirty" tests can (but not always) lead to _false positive_ or _false negative_ results. + +"Hanging" most often manifests itself if a server is still listening on a port, or a socket is still open, etc. It can also be something like a runaway `setInterval()`, or even an errant `Promise` that never fulfilled. + +The _default behavior_ in v4.0.0 (and newer) is `--no-exit`, where previously it was `--exit`. + +**The easiest way to "fix" the issue is to simply pass `--exit` to the Mocha process.** It _can_ be time-consuming to debug — because it's not always obvious where the problem is — but it _is_ recommended to do so. + +To ensure your tests aren't leaving messes around, here are some ideas to get started: + +- See the [Node.js guide to debugging][node-inspector] +- Use the new [`async_hooks`][node-async-hooks] API ([example][gist-async-hooks]) +- Try something like [wtfnode][npm-wtfnode] +- Use [`.only`](#exclusive-tests) until you find the test that causes Mocha to hang + +### `--forbid-only` + +Enforce a rule that tests may not be exclusive (use of e.g., `describe.only()` or `it.only()` is disallowed). + +`--forbid-only` causes Mocha to fail when an exclusive ("only'd") test or suite is encountered, and it will abort further test execution. + +### `--forbid-pending` + +Enforce a rule that tests may not be skipped (use of e.g., `describe.skip()`, `it.skip()`, or `this.skip()` anywhere is disallowed). + +`--forbid-pending` causes Mocha to fail when a skipped ("pending") test or suite is encountered, and it will abort further test execution. + +### `--global ` + +> _Updated in v6.0.0; the option is `--global` and `--globals` is now an alias._ + +Define a global variable name. For example, suppose your app deliberately exposes a global named `app` and `YUI`, you may want to add `--global app --global YUI`. + +`--global` accepts wildcards. You could do `--global '*bar'` and it would match `foobar`, `barbar`, etc. You can also simply pass in `'*'` to ignore all globals. + +`--global` can accept a comma-delimited list; `--global app,YUI` is equivalent to `--global app --global YUI`. + +By using this option in conjunction with `--check-leaks`, you can specify a whitelist of known global variables that you _expect_ to leak into global scope. + +### `--retries ` + +Retries failed tests `n` times. + +Mocha does not retry test failures by default. + +### `--slow , -s ` + +Specify the "slow" test threshold in milliseconds. Mocha uses this to highlight test cases that are taking too long. "Slow" tests are not considered failures. + +Note: A test that executes for _half_ of the "slow" time will be highlighted _in yellow_ with the default `spec` reporter; a test that executes for entire "slow" time will be highlighted _in red_. + +### `--timeout , -t ` + +> _Update in v6.0.0: `--no-timeout` is implied when invoking Mocha using inspect flags. It is equivalent to `--timeout 0`. `--timeout 99999999` is no longer needed._ + +Specifies the test case timeout, defaulting to two (2) seconds (2000 milliseconds). Tests taking longer than this amount of time will be marked as failed. + +To override you may pass the timeout in milliseconds, or a value with the `s` suffix, e.g., `--timeout 2s` and `--timeout 2000` are equivalent. + +To disable timeouts, use `--no-timeout`. + +Note: synchronous (blocking) tests are also bound by the timeout, but they will not complete until the code stops blocking. Infinite loops will still be infinite loops! + +### `--ui , -u ` + +The `--ui` option lets you specify the interface to use, defaulting to `bdd`. + +### `--color, -c, --colors` + +> _Updated in v6.0.0. `--colors` is now an alias for `--color`._ + +"Force" color output to be enabled, or alternatively force it to be disabled via `--no-color`. By default, Mocha uses the [supports-color][npm-supports-color] module to decide. + +In some cases, color output will be explicitly suppressed by certain reporters outputting in a machine-readable format. + +### `--diff` + +When possible, show the difference between expected and actual values when an assertion failure is encountered. + +This flag is unusual in that it **defaults to `true`**; use `--no-diff` to suppress Mocha's own diff output. + +Some assertion libraries will supply their own diffs, in which case Mocha's will not be used, regardless of the default value. + +Mocha's own diff output does not conform to any known standards, and is designed to be human-readable. + +### `--full-trace` + +Enable "full" stack traces. By default, Mocha attempts to distill stack traces into less noisy (though still useful) output. + +This flag is helpful when debugging a suspected issue within Mocha or Node.js itself. + +### `--growl, -G` + +Enable [Growl][] (or OS-level notifications where available). + +Requires extra software to be installed; see the [growl module's docs][npm-growl] for more information. + +### `--inline-diffs` + +Enable "inline" diffs, an alternative output for diffing strings. + +Useful when working with large strings. + +Does nothing if an assertion library supplies its own diff output. + +### `--reporter , -R ` + +Specify the reporter that will be used, defaulting to `spec`. + +Allows use of third-party reporters. For example, [mocha-lcov-reporter][npm-mocha-lcov-reporter] may be used with `--reporter mocha-lcov-reporter` after it has been installed. + +### `--reporter-option