Research
Security News
Threat Actor Exposes Playbook for Exploiting npm to Build Blockchain-Powered Botnets
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
The 'expect' npm package is a library for writing test assertions. It is commonly used in conjunction with testing frameworks like Jest or Mocha to validate the behavior of JavaScript code. It provides a range of assertion types and matchers that allow developers to write expressive and readable tests.
Basic Assertions
This feature allows you to assert that a value matches exactly what you expect. The 'toBe' matcher compares with ===.
expect(2 + 2).toBe(4);
Object Property Assertions
With this feature, you can assert that an object has a specific property with a certain value. The 'toHaveProperty' matcher checks for the existence and value of a property in an object.
expect({ name: 'Alice', age: 30 }).toHaveProperty('name', 'Alice');
Exception Testing
This feature is used to test if a function throws an exception when it is executed. The 'toThrow' matcher is used to assert that an error is thrown with a specific message.
expect(() => { throw new Error('failure'); }).toThrow('failure');
Array Containment
This feature allows you to assert that an array contains a specific item. The 'toContain' matcher checks if an array includes the expected item.
expect(['Alice', 'Bob', 'Eve']).toContain('Bob');
Asynchronous Assertions
This feature enables you to write assertions for asynchronous code. The 'resolves' matcher waits for a promise to resolve and then checks the resolved value.
expect(Promise.resolve('success')).resolves.toBe('success');
Chai is a BDD/TDD assertion library for node and the browser that can be paired with any javascript testing framework. It offers a similar range of matchers and assertions as expect, and it provides a fluent chainable language to construct assertions.
Should.js is an expressive, readable, framework-agnostic assertion library. The key difference is in the style of assertions it offers, using a more fluent chainable API that reads like English.
Assert is a module that provides a set of assertion functions for verifying invariants. It is built into Node.js and is less feature-rich compared to expect, but it serves as a simple way to write assertions in a Node.js environment.
Jest is a delightful JavaScript Testing Framework with a focus on simplicity. It comes with its own assertion library, which provides functionality similar to expect, as expect is actually part of Jest.
jest 22.0.5
[jest-leak-detector]
Removed the reference to weak
. Now, parent projects must install it by hand for the module to work.[expect]
Fail test when the types of stringContaining
and stringMatching
matchers do not match. (#5069)[jest-cli]
Treat dumb terminals as noninteractive (#5237)[jest-cli]
jest --onlyChanged --changedFilesWithAncestor
now also works with git. (#5189)[jest-config]
fix unexpected condition to avoid infinite recursion in Windows platform. (#5161)[jest-config]
Escape parentheses and other glob characters in rootDir
before interpolating with testMatch
. (#4838)[jest-regex-util]
Fix breaking change in --testPathPattern
(#5230)[expect]
Do not override Error
stack (with Error.captureStackTrace
) for custom matchers. (#5162)[pretty-format]
Pretty format for DOMStringMap and NamedNodeMap (#5233)[jest-cli]
Use a better console-clearing string on Windows (#5251)[jest-jasmine]
Allowed classes and functions as describe
names. (#5154)[jest-jasmine2]
Support generator functions as specs. (#5166)[jest-jasmine2]
Allow spyOn
with getters and setters. (#5107)[jest-config]
Allow configuration objects inside projects
array (#5176)[expect]
Add support to .toHaveProperty
matcher to accept the keyPath argument as an array of properties/indices. (#5220)[docs]
Add documentation for .toHaveProperty matcher to accept the keyPath argument as an array of properties/indices. (#5220)[jest-runner]
test environments are now passed a new options
parameter. Currently this only has the console
which is the test console that Jest will expose to tests. (#5223)[jest-environment-jsdom]
pass the options.console
to a custom instance of virtualConsole
so jsdom is using the same console as the test. (#5223)FAQs
This package exports the `expect` function used in [Jest](https://jestjs.io/). You can find its documentation [on Jest's website](https://jestjs.io/docs/expect).
The npm package expect receives a total of 22,440,652 weekly downloads. As such, expect popularity was classified as popular.
We found that expect demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 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.
Research
Security News
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
Security News
NVD’s backlog surpasses 20,000 CVEs as analysis slows and NIST announces new system updates to address ongoing delays.
Security News
Research
A malicious npm package disguised as a WhatsApp client is exploiting authentication flows with a remote kill switch to exfiltrate data and destroy files.