Bump @types/node from 22.9.0 to 22.10.0 (#165) #419
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: tests | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
merge_group: | |
jobs: | |
e2e: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Set up node env | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- name: Create .env file | |
run: | | |
echo -e "NB_OPENNEURO_UPLOAD_API=${{ secrets.NB_OPENNEURO_UPLOAD_API }}\nNB_USERNAME=${{ secrets.NB_USERNAME }}\nNB_PASSWORD=${{ secrets.NB_PASSWORD }}" > .env | |
- name: build | |
run: npm install && npm run build | |
- name: Run end to end tests | |
uses: cypress-io/github-action@v6 | |
with: | |
wait-on: http://localhost:5173 | |
start: npm run preview | |
component: false | |
- name: Upload e2e coverage artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: e2eCov | |
path: coverage | |
component: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Create .env file | |
run: | | |
echo -e "NB_OPENNEURO_UPLOAD_API=${{ secrets.NB_OPENNEURO_UPLOAD_API }}\nNB_USERNAME=${{ secrets.NB_USERNAME }}\nNB_PASSWORD=${{ secrets.NB_PASSWORD }}" > .env | |
- name: build | |
run: npm install && npm run build | |
- name: Run component tests | |
uses: cypress-io/github-action@v6 | |
with: | |
component: true | |
- name: Upload component coverage artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: compCov | |
path: coverage | |
unit: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Set up Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- name: Install dependencies | |
run: npm ci | |
- name: Run unit tests | |
run: npm run test:unit | |
- name: Upload unit coverage artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: unitCov | |
path: coverage | |
merge-coverage: | |
# Run this job only if both e2e and component tests passed | |
needs: [e2e, component, unit] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Set up Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- name: Setup | |
run: npm install | |
- name: Download e2e coverage artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: e2eCov | |
path: e2eCov | |
- name: Download component coverage artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: compCov | |
path: compCov | |
- name: Download unit coverage artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: unitCov | |
path: unitCov | |
- name: Install nyc | |
run: npm install -g nyc | |
- name: Merge coverage reports | |
run: | | |
mkdir -p combined_coverage final_coverage | |
nyc merge e2eCov combined_coverage/e2e.json | |
nyc merge compCov combined_coverage/component.json | |
nyc merge unitCov combined_coverage/unit.json | |
nyc merge combined_coverage final_coverage/combined-coverage.json | |
- name: Generate final coverage report | |
run: nyc report --reporter=lcov --temp-dir final_coverage --report-dir ./coverage | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v5 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
file: ./coverage/lcov.info | |
flags: tests | |
name: codecov-combined | |
fail_ci_if_error: true | |