@leisterfranc/qtest-js
v1.0.3
Published
eosio testing library
Downloads
25
Maintainers
Readme
Welcome to Qtest
Qtest is an open-source Javascript-based Antelope smart-contract testing framework, created by GenerEOS with funding from the EOS Network Foundation.
Qtest gives you the ability to dockerize a Leap node. This allows a developer to host it on any system that supports Docker. Using Qtest, developers can simplify testing of smart contracts and automate things like table seeding, account creation, and other initialisation tasks that are required before running complex test scenarios. Qtest already can be used to streamline testing for multiple Antelope based chains including EOS, WAX, and TELOS, with the ability to add additional chain support easily.
Noteworthy Features
- Ability to run tests in parallel
- Supports the snapshot for EOS/WAX/TLOS with lastest system contracts out of the box
- Supports testing on ARM/AMD architectures
- Ability to insert/modify/erase data for each table
- Update the chain time to fast-forward the chain and allow testing future states
Quick start
Installation
Refer to an example project
npm install --save-dev qtest-js
Jest
Install jest
npm install --save-dev jest@^28.1.3
Config jest
: Create jest.config.js and add the following:
module.exports = {
// transform: { "^.+\\.(ts|tsx)$": "ts-jest" },
testEnvironment: "node",
testTimeout: 120 * 1e3,
};
Docker
To install docker please refer here
Run
Update test command in package.json
"test": "jest"
Run
npm run test
Usage
const { Chain } = require("qtest-js");
const { expectAction } = require("qtest-js");
Api and JsonRpc from eosjs are available through the Chain class
Qtest API
Classes
Public
Internal
Functions
Public
Support
For issues not covered in the documentation, please jump into our channel and we will do our best to help you out GenerEOS channel on Telegram.
Licence
This code is provided as is, under MIT Licence.
Todo
- Support ARM binaries for leap version