xluckydegen / launchpad-contracts

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Launchpad Contracts

Table of Contents
  1. Installation
  2. Fuzzing
  3. Links
  4. Contacts

Installation

Be sure you have foundry installed (if not, follow instructions here), then run:

yarn install
foundryup
forge install

Rebuild Contracts

rm cache -r -fo;rm artifacts -r -fo;rm typechain-types -r -fo; npx hardhat compile
forge build

Test contracts

npx hardhat test
forge test

Fuzzing

More details about fuzzing campaign can be found at the Fuzzing Report.

Run fuzzing campaigns


📢⚠️ Before running fuzz tests uncomment:

// constructor(string memory name, string memory symbol) ERC20(name, symbol) {}

and comment out in MockERC20:

constructor(string memory name, string memory symbol) ERC20(name, symbol) Ownable(msg.sender) {}

This is necessary due to hardhat/foundry incompatibility issues. 📢⚠️


To spin up Echidna in Docker, run:

sudo docker pull trailofbits/eth-security-toolbox
docker run -it --rm -v $PWD:/src trailofbits/eth-security-toolbox

To fuzz test

echidna --contract <CONTRACT-NAME> --config /src/echidna-config.yaml /src/contracts/echidna/<CONTRACT-NAME>.sol
# echidna --contract EchidnaTestDistribution --config echidna-config.yaml contracts/echidna/EchidnaTestDistribution.sol

Links

Contacts

About


Languages

Language:Solidity 51.2%Language:TypeScript 48.6%Language:JavaScript 0.2%