1. name: Schedule tests
    
  2. 
    
  3. on:
    
  4.   workflow_dispatch:
    
  5. 
    
  6. concurrency:
    
  7.   group: ${{ github.workflow }}-${{ github.ref }}
    
  8.   cancel-in-progress: true
    
  9. 
    
  10. jobs:
    
  11.   windows:
    
  12.     runs-on: windows-latest
    
  13.     strategy:
    
  14.       matrix:
    
  15.         python-version:
    
  16.           - '3.8'
    
  17.           - '3.9'
    
  18.           - '3.10'
    
  19.           - '3.11.0-alpha - 3.11.0'
    
  20.     name: Windows, SQLite, Python ${{ matrix.python-version }}
    
  21.     continue-on-error: true
    
  22.     steps:
    
  23.       - name: Checkout
    
  24.         uses: actions/checkout@v3
    
  25.       - name: Set up Python
    
  26.         uses: actions/setup-python@v3
    
  27.         with:
    
  28.           python-version: ${{ matrix.python-version }}
    
  29.           cache: 'pip'
    
  30.           cache-dependency-path: 'tests/requirements/py3.txt'
    
  31.       - name: Install and upgrade packaging tools
    
  32.         run: python -m pip install --upgrade pip setuptools wheel
    
  33.       - run: python -m pip install -r tests/requirements/py3.txt -e .
    
  34.       - name: Run tests
    
  35.         run: python tests/runtests.py -v2
    
  36. 
    
  37.   javascript-tests:
    
  38.     runs-on: ubuntu-latest
    
  39.     name: JavaScript tests
    
  40.     steps:
    
  41.       - name: Checkout
    
  42.         uses: actions/checkout@v3
    
  43.       - name: Set up Node.js
    
  44.         uses: actions/setup-node@v3
    
  45.         with:
    
  46.           node-version: '12'
    
  47.           cache: 'npm'
    
  48.           cache-dependency-path: '**/package.json'
    
  49.       - run: npm install
    
  50.       - run: npm test