name: unit-tests on: pull_request: jobs: unit-test-python: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: python-version: ["3.10", "3.11", "3.12"] os: [ ubuntu-latest, macos-14 ] exclude: - os: macos-14 python-version: "3.10" env: OS: ${{ matrix.os }} PYTHON: ${{ matrix.python-version }} steps: - uses: actions/checkout@v4 - name: Setup Python id: setup-python uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} architecture: x64 - name: Install the latest version of uv uses: astral-sh/setup-uv@v5 with: enable-cache: true - name: Install dependencies run: make install-python-dependencies-ci - name: Test Python run: make test-python-unit - name: Minimize uv cache run: uv cache prune --ci unit-test-ui: runs-on: ubuntu-latest env: NPM_TOKEN: ${{ secrets.NPM_TOKEN }} steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version-file: './ui/.nvmrc' registry-url: 'https://registry.npmjs.org' - name: Install yarn dependencies working-directory: ./ui run: yarn install - name: Check code formatting working-directory: ./ui run: yarn format:check - name: Build yarn rollup working-directory: ./ui run: yarn build:lib - name: Run yarn tests working-directory: ./ui run: yarn test --watchAll=false