Skip to content

Commit

Permalink
Merge branch 'main' into bump-hedera-local
Browse files Browse the repository at this point in the history
Signed-off-by: ebadiere <[email protected]>
  • Loading branch information
ebadiere committed Dec 18, 2023
2 parents 333770a + c39baee commit d601e86
Show file tree
Hide file tree
Showing 409 changed files with 16,810 additions and 7,553 deletions.
9 changes: 8 additions & 1 deletion .github/workflows/solidity-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,14 @@ jobs:
with:
testfilter: '@solidityequiv3'

OpenZeppelin:
YulEquiv:
if: ${{ inputs.filterTagOverride == ''}}
name: Yul Equivalence
uses: ./.github/workflows/test-workflow.yml
with:
testfilter: '@yulequiv'

OpenZeppelinEquiv:
if: ${{ inputs.filterTagOverride == ''}}
name: OpenZeppelin Equivalence
uses: ./.github/workflows/test-workflow.yml
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ cache
# ignore non repo contract related aritifacts
artifacts/@openzeppelin
artifacts/build-info
artifacts/contracts/**/**/*.dbg.json
.openzeppelin/unknown-298.json
.env
test-results.*
Expand Down
3 changes: 1 addition & 2 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
{
"trailingComma": "es5",
"tabWidth": 2,
"semi": false,
"semi": true,
"singleQuote": true
}

8 changes: 4 additions & 4 deletions FOUNDRY_TESTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Foundry consists of:

- **Forge**: Ethereum testing framework (like Truffle, Hardhat and DappTools).
- **Cast**: Swiss army knife for interacting with EVM smart contracts, sending transactions and getting chain data.
- **Anvil**: Local Ethereum node, akin to Ganache, Hardhat Network.
- **Chisel**: Fast, utilitarian, and verbose solidity REPL.
- **Forge**: Ethereum testing framework (like Truffle, Hardhat and DappTools).
- **Cast**: Swiss army knife for interacting with EVM smart contracts, sending transactions and getting chain data.
- **Anvil**: Local Ethereum node, akin to Ganache, Hardhat Network.
- **Chisel**: Fast, utilitarian, and verbose solidity REPL.

## Documentation

Expand Down
19 changes: 13 additions & 6 deletions TEST_SETUP.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,20 +24,27 @@

At root, create a `.env` file using the `example.env` as the template and fill out the variables.

| Variable | Description |
| ------------------- | -------------------------------------------------------------------------------- |
| `OPERATOR_ID_A` | This is the `Account ID` which can be found in your account portal. |
| `OPERATOR_KEY_A` | This is the `DER Encoded Private Key` which can be found in your account portal. |
| `PRIVATE_KEYS` | This is the `HEX Encoded Private Key` list which can be found in your account portal. It supports up to six private keys.|
| Variable | Description |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `OPERATOR_ID_A` | This is the `Account ID` which can be found in your account portal. |
| `OPERATOR_KEY_A` | This is the `DER Encoded Private Key` which can be found in your account portal. |
| `PRIVATE_KEYS` | This is the `HEX Encoded Private Key` list which can be found in your account portal. It supports up to six private keys. |

**_Notes_**: At least two accounts are required for the `HEX_PRIVATE_KEY` fields. See [Create Hedera Portal Profile](https://docs.hedera.com/hedera/getting-started/introduction#create-hedera-portal-profile-faucet) on how to create accounts on Hedera networks. Six accounts will be needed if you want to run the solidity voting example. The local.env file uses ECDSA accounts listed when starting the local node.
**_Notes_**: At least two accounts are required for the `HEX_PRIVATE_KEY` fields. See [Create Hedera Portal Profile](https://docs.hedera.com/hedera/getting-started/introduction#create-hedera-portal-profile-faucet) on how to create accounts on Hedera networks. Six accounts will be needed if you want to run the solidity voting example. The local.env file uses ECDSA accounts listed when starting the local node.

**_Important_**: While Hedera supports both ECDSA and ED25519 accounts, please use ECDSA since Ethereum only supports ECDSA.

#### 3. Configure Hardhat

Adjust the `defaultNetwork` field in the [hardhat.config.js](hardhat.config.js) file based on the network your accounts (specified in the .env file) are associated with.

Available Networks:

- local for reference and how to setup a local besu node please follow the [link](https://docs.hedera.com/hedera/sdks-and-apis/sdks/set-up-your-local-network)
- testnet
- previewnet
- besu_local for reference and how to setup a local besu node please follow the [link](https://besu.hyperledger.org/)

#### 4. Installing the `foundry-rs` toolkit for the `forge` testing framework

**_Motivation_**: This step is necessary for the project as it utilizes the `hardhat-foundry` plugin, enabling Hardhat to use dependencies from the `./lib` folder, which are installed using `forge`. Consequently, the plugin attempts to execute `forge install` to make these dependencies accessible to Hardhat. Therefore, it is crucial to install the `forge` testing framework, which is a part of the `foundry-rs` toolkit.
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions artifacts/contracts/beacon-proxy/MyProxy.sol/MyProxy.dbg.json

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions artifacts/contracts/erc-20/ERC20Mock.sol/ERC20Mock.dbg.json

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions artifacts/contracts/evm/Precompiles.sol/Precompiles.dbg.json

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions artifacts/contracts/hip-583/ERC20Mock.sol/ERC20Mock.dbg.json

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions artifacts/contracts/hts-precompile/IHRC.sol/IHRC.dbg.json

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading

0 comments on commit d601e86

Please sign in to comment.