Skip to content

pcaversaccio/create2deployer

Repository files navigation

CREATE2 Deployer

🕵️‍♂️ Test smart contracts License: MIT

Tip

I have built a versatile, trustless, and stateless successor to Create2Deployer: CreateX. Check it out! 🫡

Helper smart contract to make easier and safer usage of the CREATE2 Ethereum Virtual Machine (EVM) opcode. CREATE2 can be used to compute in advance the address where a smart contract will be deployed, which allows for interesting new mechanisms known as counterfactual interactions.

A very fancy meme

Unit Tests

Since Hardhat implements great features for Solidity debugging like Solidity stack traces, console.log, and explicit error messages when transactions fail, we leverage Hardhat for testing:

pnpm run test

Test Coverage

This project repository implements a test coverage plugin. Simply run:

pnpm run coverage

The written tests available in the file Create2Deployer.test.ts achieve a test coverage of 100%:

--------------------------------|----------|----------|----------|----------|----------------|
File                            |  % Stmts | % Branch |  % Funcs |  % Lines |Uncovered Lines |
--------------------------------|----------|----------|----------|----------|----------------|
 contracts\                     |      100 |      100 |      100 |      100 |                |
  Create2Deployer.sol           |      100 |      100 |      100 |      100 |                |
  Create2DeployerDeprecated.sol |      100 |      100 |      100 |      100 |                |
--------------------------------|----------|----------|----------|----------|----------------|
All files                       |      100 |      100 |      100 |      100 |                |
--------------------------------|----------|----------|----------|----------|----------------|

Note

A test coverage of 100% does not mean that there are no vulnerabilities. What really counts is the quality and spectrum of the tests themselves!

Deployments Create2Deployer

Important

As of 8 December 2023, all non-deprecated Create2Deployer deployments are permissionless as I have renounced the ownership accordingly.

About

Helper smart contract to make easier and safer usage of the `CREATE2` EVM opcode.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •