Introduction
This repository contains kyber network smart contracts. For more details, please visit our developer portal
API
Public facing interfaces for kyber network (folder: contracts/sol6):
- IKyberNetworkProxy.sol - Get rate and trade APIs. Hint handler address.
- ISimpleKyberProxy.sol - Simple trade functions.
- IKyberHintHandler.sol - Build hints for advanced trade functionality.
- IKyberDao - Interact with KyberDao.
- Dao/IKyberStaking - interact with KyberStaking.
Setup
- Clone this repo
npm ci
Compilation with Buidler
./cmp.sh
to compile contracts for all solidity versions../cmpSol6.sh
to compile only sol6 contracts
Testing with Buidler
- If contracts have not been compiled, run
./cmp.sh
. This step can be skipped subsequently. - Run
./tst.sh
- Use
-f
for running a specific test file. - Use
-a
to run tests for all solidity versions. Runs only sol6 tests by default.
Example Commands
./tst.sh
(Run only sol6 tests)
./tst.sh -f ./test/sol4/kyberReserve.js
(Test only kyberReserve.js)
./tst.sh -a
(Run sol4, sol5, sol6 tests)
Example
npx buidler test --no-compile ./test/sol6/kyberNetwork.js
buidler-coverage
Coverage with - Run
./coverage.sh
- Use
-f
for running a specific test file.
Example Commands
./coverage.sh -f ./test/sol6/kyberNetwork.js
(Coverage for only kyberNetwork.js)