From 778a4d2af1780ab51d3a7393239451da11da7fe1 Mon Sep 17 00:00:00 2001 From: "Fred K. Schott" Date: Fri, 5 Aug 2022 13:14:19 -0700 Subject: [PATCH] update test coverage to include more Node and Windows tests (#4144) * update node test coverage to include v18, more windows tests * chore(ci): update turbo to account for OS and NODE_VERSION * chore: disable node@18, add TODO Co-authored-by: Nate Moore --- .github/workflows/ci.yml | 50 ++++++++++++++++++++++------------------ package.json | 1 - turbo.json | 9 ++++---- 3 files changed, 33 insertions(+), 27 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index db76aefbd5..8d63d2e5d8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,6 +24,7 @@ env: FORCE_COLOR: true ASTRO_TELEMETRY_DISABLED: true + jobs: lint: name: Lint @@ -79,8 +80,8 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-latest] - node_version: [14] + OS: [ubuntu-latest] + NODE_VERSION: [14] fail-fast: true steps: - name: Checkout @@ -89,10 +90,10 @@ jobs: - name: Setup PNPM uses: pnpm/action-setup@v2.2.1 - - name: Setup node@${{ matrix.node_version }} + - name: Setup node@${{ matrix.NODE_VERSION }} uses: actions/setup-node@v3 with: - node-version: ${{ matrix.node_version }} + node-version: ${{ matrix.NODE_VERSION }} cache: 'pnpm' - name: Install dependencies @@ -102,19 +103,20 @@ jobs: run: pnpm run build test: - name: 'Test: ${{ matrix.os }} (node@${{ matrix.node_version }})' + name: 'Test: ${{ matrix.os }} (node@${{ matrix.NODE_VERSION }})' runs-on: ${{ matrix.os }} needs: build strategy: matrix: - os: [ubuntu-latest] - node_version: [14, 16] + OS: [ubuntu-latest, windows-latest] + # TODO: Enable node@18! + NODE_VERSION: [14, 16] include: - - os: windows-latest - node_version: 14 - os: macos-latest - node_version: 14 + NODE_VERSION: 14 fail-fast: false + env: + NODE_VERSION: ${{ matrix.NODE_VERSION }} steps: - name: Checkout uses: actions/checkout@v3 @@ -122,10 +124,10 @@ jobs: - name: Setup PNPM uses: pnpm/action-setup@v2.2.1 - - name: Setup node@${{ matrix.node_version }} + - name: Setup node@${{ matrix.NODE_VERSION }} uses: actions/setup-node@v3 with: - node-version: ${{ matrix.node_version }} + node-version: ${{ matrix.NODE_VERSION }} cache: 'pnpm' - name: Use Deno @@ -143,15 +145,17 @@ jobs: run: pnpm run test e2e: - name: 'Test (E2E): ${{ matrix.os }} (node@${{ matrix.node_version }})' + name: 'Test (E2E): ${{ matrix.os }} (node@${{ matrix.NODE_VERSION }})' runs-on: ${{ matrix.os }} timeout-minutes: 20 needs: build strategy: matrix: - os: [ubuntu-latest, windows-latest] - node_version: [14] + OS: [ubuntu-latest, windows-latest] + NODE_VERSION: [14] fail-fast: false + env: + NODE_VERSION: ${{ matrix.NODE_VERSION }} steps: - name: Checkout uses: actions/checkout@v3 @@ -159,10 +163,10 @@ jobs: - name: Setup PNPM uses: pnpm/action-setup@v2.2.1 - - name: Setup node@${{ matrix.node_version }} + - name: Setup node@${{ matrix.NODE_VERSION }} uses: actions/setup-node@v3 with: - node-version: ${{ matrix.node_version }} + node-version: ${{ matrix.NODE_VERSION }} cache: 'pnpm' - name: Install dependencies @@ -175,13 +179,15 @@ jobs: run: pnpm run test:e2e smoke: - name: 'Test (Smoke): ${{ matrix.os }} (node@${{ matrix.node_version }})' + name: 'Test (Smoke): ${{ matrix.os }} (node@${{ matrix.NODE_VERSION }})' runs-on: ${{ matrix.os }} needs: build strategy: matrix: - os: [ubuntu-latest] - node_version: [14] + OS: [ubuntu-latest] + NODE_VERSION: [14] + env: + NODE_VERSION: ${{ matrix.NODE_VERSION }} steps: - name: Checkout uses: actions/checkout@v3 @@ -189,10 +195,10 @@ jobs: - name: Setup PNPM uses: pnpm/action-setup@v2.2.1 - - name: Setup node@${{ matrix.node_version }} + - name: Setup node@${{ matrix.NODE_VERSION }} uses: actions/setup-node@v3 with: - node-version: ${{ matrix.node_version }} + node-version: ${{ matrix.NODE_VERSION }} cache: 'pnpm' - name: Checkout docs diff --git a/package.json b/package.json index 55263594ad..ef91b6327c 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,6 @@ "format:imports": "organize-imports-cli ./packages/*/tsconfig.json ./packages/*/*/tsconfig.json", "test": "turbo run test --output-logs=new-only --concurrency=1", "test:match": "cd packages/astro && pnpm run test:match", - "test:templates": "turbo run test --filter=create-astro --concurrency=1", "test:smoke": "turbo run build --filter=\"@example/*\" --filter=\"astro.build\" --filter=\"docs\" --output-logs=new-only --concurrency=1", "test:vite-ci": "turbo run test --output-logs=new-only --no-deps --scope=astro --concurrency=1", "test:e2e": "cd packages/astro && pnpm playwright install && pnpm run test:e2e", diff --git a/turbo.json b/turbo.json index ad76a20a96..190298a0ca 100644 --- a/turbo.json +++ b/turbo.json @@ -14,10 +14,11 @@ "cache": false }, "test": { - "outputs": [] - }, - "test:templates": { - "outputs": [] + "outputs": [], + "dependsOn": [ + "$RUNNER_OS", + "$NODE_VERSION" + ] }, "benchmark": { "dependsOn": ["^build"],