name: E2E on: push: branches: - master pull_request: branches: - "*" jobs: e2e_linux: runs-on: ubuntu-latest name: Test on Linux with Node ${{ matrix.node }} strategy: matrix: node: [16, 18, 20] steps: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: node-version: ${{ matrix.node }} cache: 'npm' - name: Install dependencies run: npm install --include=dev - name: Run linter run: npm run lint - name: Generate Docs run: npm run docs - name: Pack run: npm pack - name: Global Installation run: npm i -g solhint*tgz - name: Check solhint version run: solhint --version - name: Run E2E Tests run: cd e2e && npm install && npm test e2e_windows: runs-on: windows-latest name: Test on Windows steps: - name: Enable Debugging run: | echo "::debug::Debugging enabled" - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: node-version: 18 cache: 'npm' - name: Install dependencies run: npm install --include=dev - name: Run linter run: npm run lint - name: Generate Docs run: npm run docs - name: Pack run: npm pack - name: Global Installation run: npm i -g @(Get-ChildItem -Filter *.tgz) - name: Check solhint version run: solhint --version - name: List directory contents run: dir - name: Run linter run: npm run lint - name: Run E2E Tests run: cd e2e && npm install && npm test e2e_macos: runs-on: macos-latest name: Test on MacOS steps: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: node-version: 18 cache: 'npm' - name: Install dependencies run: npm install --include=dev - name: Pack run: npm pack - name: Install solhint run: npm i -g solhint*tgz - name: Run linter run: npm run lint - name: Run Tests run: cd e2e && npm install && npm test