Skip to content

chore: remove get pixels dependency #337

chore: remove get pixels dependency

chore: remove get pixels dependency #337

Workflow file for this run

name: Test Pull Requests To Master (Node 20+)
on:
push:
branches:
- greenkeeper/*
pull_request:
branches:
- master
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 10
strategy:
matrix:
node-version: [20.x, 22.x, 24.x]
os: [ubuntu-latest, windows-latest, macOS-latest]
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: npm versions
run: |
node --version
npm --version
- name: ci install
run: npm ci
- name: setup virtual display
run: |
sudo apt-get update
sudo apt-get install -y xvfb
export DISPLAY=:99
Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
- name: build
run: npm run build --if-present
env:
CI: true
NODE_OPTIONS: --openssl-legacy-provider # necessary for webpack v4 in node 17+
- name: module test
run: npm run test:module
- name: debug environment info
run: |
echo "=== Environment Info ==="
echo "Node version: $(node --version)"
echo "NPM version: $(npm --version)"
echo "OS: $(uname -a)"
echo "Available memory: $(free -h || echo 'N/A')"
echo "Available disk: $(df -h . || echo 'N/A')"
echo "Display info: $DISPLAY"
echo "Xvfb check: $(which Xvfb || echo 'Xvfb not found')"
echo "Chrome check: $(which google-chrome || which chromium-browser || echo 'Chrome not found')"
- name: try single cypress test first
run: timeout 120 npm run cypress:debug || echo "Single Cypress test timed out or failed"
env:
DEBUG: cypress:*
CYPRESS_DEBUG: 1
DISPLAY: :99
- name: try full cypress tests if single test works
if: success()
run: timeout 300 npm run cypress:run || echo "Full Cypress tests timed out or failed"
env:
DEBUG: cypress:*
CYPRESS_DEBUG: 1
DISPLAY: :99
- name: run node tests only if cypress failed
if: failure()
run: npx cross-env NODE_ENV=test BUILD_ENV=development ts-mocha -p test/tsconfig.json src/**/test/node/*.spec.* src/**/test/*.spec.* test/integration/integration.spec.ts
- name: test package import
run: npm run test:import
- name: test package require
run: npm run test:require