name: Vitest Tests on: push: branches: [ main, master, dev*, core/*, desktop/* ] pull_request: branches-ignore: [ wip/*, draft/*, temp/* ] jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v4 with: version: 10 - name: Use Node.js uses: actions/setup-node@v4 with: node-version: 'lts/*' cache: 'pnpm' - name: Cache tool outputs uses: actions/cache@v4 with: path: | .cache coverage .vitest-cache key: vitest-cache-${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}-${{ hashFiles('src/**/*.{ts,vue,js}', 'vitest.config.*', 'tsconfig.json') }} restore-keys: | vitest-cache-${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}- vitest-cache-${{ runner.os }}- test-tools-cache-${{ runner.os }}- - name: Install dependencies run: pnpm install --frozen-lockfile - name: Run Vitest tests run: | pnpm test:component pnpm test:unit