Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Mocha is a feature-rich JavaScript test framework running on Node.js and in the browser, making asynchronous testing simple and fun. Mocha tests run serially, allowing for flexible and accurate reporting, while mapping uncaught exceptions to the correct test cases.
Test Organization
Organize tests in suites and sub-suites using describe() and context(), and specify test cases using it().
"use strict";\nconst assert = require('assert');\ndescribe('Array', function() {\n describe('#indexOf()', function() {\n it('should return -1 when the value is not present', function() {\n assert.equal([1, 2, 3].indexOf(4), -1);\n });\n });\n});
Asynchronous Testing
Support for testing asynchronous code with ease, using callbacks, promises, or async/await.
"use strict";\nconst assert = require('assert');\ndescribe('User', function() {\n describe('#save()', function() {\n it('should save without error', function(done) {\n const user = new User('Luna');\n user.save(function(err) {\n if (err) done(err);\n else done();\n });\n });\n });\n});
Hooks
Lifecycle hooks such as before(), after(), beforeEach(), and afterEach() for setting up preconditions and clean-up after tests.
"use strict";\ndescribe('Connection', function() {\n before(function() {\n // runs once before the first test in this block\n });\n\n after(function() {\n // runs once after the last test in this block\n });\n\n beforeEach(function() {\n // runs before each test in this block\n });\n\n afterEach(function() {\n // runs after each test in this block\n });\n\n // test cases\n});
Jest is a delightful JavaScript Testing Framework with a focus on simplicity. It works out of the box for any React project and is often compared to Mocha for its comprehensive feature set including a built-in assertion library and mock functions.
Jasmine is a behavior-driven development framework for testing JavaScript code. It does not rely on browsers, DOM, or any JavaScript framework. Thus, it's suited for websites, Node.js projects, or anywhere that JavaScript can run. It's compared to Mocha for its clean syntax and testing capabilities.
AVA is a test runner for Node.js with a concise API, detailed error output, and process isolation that lets you develop with confidence. It is often compared to Mocha for its modern, concurrent testing features, but differs in its approach to running tests in parallel by default.
Mocha is a simple, flexible, fun JavaScript test framework for node.js and the browser. For more information view the documentation.
project: mocha
commits: 502
files : 86
authors:
352 Tj Holowaychuk 70.1%
98 TJ Holowaychuk 19.5%
21 Guillermo Rauch 4.2%
6 James Carr 1.2%
4 Joshua Krall 0.8%
3 Ben Lindsey 0.6%
3 Nathan Rajlich 0.6%
2 FARKAS Máté 0.4%
2 Quang Van 0.4%
1 Steve Mason 0.2%
1 Yuest Wang 0.2%
1 hokaccha 0.2%
1 David Henderson 0.2%
1 Fedor Indutny 0.2%
1 Fredrik Lindin 0.2%
1 Harry Brundage 0.2%
1 Konstantin Käfer 0.2%
1 Maciej Małecki 0.2%
1 Raynos 0.2%
1 Ryunosuke SATO 0.2%
FAQs
simple, flexible, fun test framework
We found that mocha demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.