Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
@defi-wonderland/smock
Advanced tools
Smock is the Solidity mocking library. It's a plugin for hardhat that can be used to create mock Solidity contracts entirely in JavaScript (or TypeScript!). With Smock, it's easier than ever to test your smart contracts. You'll never have to write another mock contract in Solidity again.
Smock is inspired by sinon, sinon-chai, and Python's unittest.mock. Although Smock is currently only compatible with hardhat, we plan to extend support to other testing frameworks like Truffle.
If you wanna chat about the future of Solidity Mocking, join our Discord!
Detailed documentation can be found here.
You can install Smock via npm or yarn:
npm install @defi-wonderland/smock
Note: Starting from v2.4.0, Smock is only compatible with Hardhat v2.21.0 or later. If you are using an older version of Hardhat, please install Smock v2.3.5.
Smock is dead simple to use. Here's a basic example of how you might use it to streamline your tests.
...
import { FakeContract, smock } from '@defi-wonderland/smock';
chai.should(); // if you like should syntax
chai.use(smock.matchers);
describe('MyContract', () => {
let myContractFake: FakeContract<MyContract>;
beforeEach(async () => {
...
myContractFake = await smock.fake('MyContract');
});
it('some test', () => {
myContractFake.bark.returns('woof');
...
myContractFake.bark.atCall(0).should.be.calledWith('Hello World');
});
});
Smock is released under the MIT license. Feel free to use, modify, and/or redistribute this software as you see fit. See the LICENSE file for more information.
Maintained with love by Optimism PBC and DeFi Wonderland. Made possible by viewers like you.
FAQs
The Solidity mocking library
The npm package @defi-wonderland/smock receives a total of 3,810 weekly downloads. As such, @defi-wonderland/smock popularity was classified as popular.
We found that @defi-wonderland/smock demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 6 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
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.