Skip to content

perpetual-protocol/lugia-contract

Repository files navigation

lugia-contract

Dependencies

We use Foundry to manage contract dependencies (actually, Foundry is using .gitmodules). However, we still add contract dependencies to package.json to get vulnerability alerts using Dependabot.

Therefore, please make sure you update both .gitmodules and package.json when changing contract dependencies.

Environment Variables

Make sure you have .env file at project root with the following variables:

OPTIMISM_WEB3_ENDPOINT_ARCHIVE // Optimism archive endpoint

Unit Tests

For unit tests, basically we follow the best practices of Foundry.

If you want to test a case that expecting a revert, add _reverts suffix to the function name, example:

function test_deposit_reverts() public {
    // ...
}

Git branch convention

If you are not sure when to merge into main, please reference the doc.

Commands

To install all dependencies:

 npm ci
 forge install

To compile contracts:

npm run build
# or
forge build

To run all tests:

npm run test
# or
forge test

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors