Fix/tests ci #4
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Smart Contract CI | |
on: | |
pull_request: | |
paths: | |
- 'contracts/**' | |
env: | |
PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} | |
jobs: | |
security_audit: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '18.x' | |
registry-url: 'https://registry.npmjs.org' | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Install dependencies | |
run: npm install | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.x' | |
- name: Install Slither | |
run: python -m pip install slither-analyzer | |
- name: Run Slither | |
run: slither . --exclude-dependencies | |
code_coverage: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '18.x' | |
registry-url: 'https://registry.npmjs.org' | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Install dependencies | |
run: npm install | |
- name: Run tests with Hardhat | |
run: npm run test | |
- name: Run Solidity-Coverage | |
run: | | |
npm install --save-dev solidity-coverage | |
npx hardhat coverage | |
- name: Enforce Coverage | |
run: npx istanbul check-coverage --statements 37.5 --branches 17.5 --functions 40 --lines 30 | |