feat(ssr-compiler): api decorator support #2495
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run Karma integration tests | |
on: | |
push: | |
branches: | |
- master | |
- release | |
- 'spring*' | |
- 'summer*' | |
- 'winter*' | |
pull_request: | |
branches: | |
- master | |
- release | |
- 'spring*' | |
- 'summer*' | |
- 'winter*' | |
env: | |
SAUCE_USERNAME: ${{secrets.SAUCE_USERNAME}} | |
SAUCE_ACCESS_KEY: ${{secrets.SAUCE_ACCESS_KEY}} | |
PUPPETEER_SKIP_DOWNLOAD: 'true' # only needed for @best/runner-local, unused here | |
GITHUB_RUN_ID: ${{github.run_id}} | |
COVERAGE: '1' | |
NODE_VERSION: '20.18.0' | |
jobs: | |
run-karma-tests-group-1: | |
runs-on: ubuntu-22.04 | |
env: | |
SAUCE_TUNNEL_ID: github-action-tunnel-integration-${{github.run_id}}-group-1 | |
defaults: | |
run: | |
working-directory: ./packages/@lwc/integration-karma | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn install --frozen-lockfile | |
working-directory: ./ | |
- uses: saucelabs/sauce-connect-action@v2 | |
with: | |
username: ${{ secrets.SAUCE_USERNAME }} | |
accessKey: ${{ secrets.SAUCE_ACCESS_KEY }} | |
tunnelName: ${{ env.SAUCE_TUNNEL_ID }} | |
- run: yarn sauce:ci | |
- run: DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- run: LEGACY_BROWSERS=1 yarn sauce:ci | |
- run: FORCE_NATIVE_SHADOW_MODE_FOR_TEST=1 yarn sauce:ci | |
- run: DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE=1 yarn sauce:ci | |
- run: DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE=1 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- name: Upload coverage results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-report-group-1 | |
path: ./packages/@lwc/integration-karma/coverage/**/coverage-final.json | |
run-karma-tests-group-2: | |
runs-on: ubuntu-22.04 | |
env: | |
SAUCE_TUNNEL_ID: github-action-tunnel-integration-${{github.run_id}}-group-2 | |
defaults: | |
run: | |
working-directory: ./packages/@lwc/integration-karma | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn install --frozen-lockfile | |
working-directory: ./ | |
- uses: saucelabs/sauce-connect-action@v2 | |
with: | |
username: ${{ secrets.SAUCE_USERNAME }} | |
accessKey: ${{ secrets.SAUCE_ACCESS_KEY }} | |
tunnelName: ${{ env.SAUCE_TUNNEL_ID }} | |
- run: API_VERSION=58 yarn sauce:ci | |
- run: API_VERSION=58 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- run: API_VERSION=59 yarn sauce:ci | |
- run: API_VERSION=59 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- run: API_VERSION=60 yarn sauce:ci | |
- run: API_VERSION=60 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- name: Upload coverage results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-report-group-2 | |
path: ./packages/@lwc/integration-karma/coverage/**/coverage-final.json | |
run-karma-tests-group-3: | |
runs-on: ubuntu-22.04 | |
env: | |
SAUCE_TUNNEL_ID: github-action-tunnel-integration-${{github.run_id}}-group-3 | |
defaults: | |
run: | |
working-directory: ./packages/@lwc/integration-karma | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn install --frozen-lockfile | |
working-directory: ./ | |
- uses: saucelabs/sauce-connect-action@v2 | |
with: | |
username: ${{ secrets.SAUCE_USERNAME }} | |
accessKey: ${{ secrets.SAUCE_ACCESS_KEY }} | |
tunnelName: ${{ env.SAUCE_TUNNEL_ID }} | |
- run: API_VERSION=61 yarn sauce:ci | |
- run: API_VERSION=61 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- run: API_VERSION=62 yarn sauce:ci | |
- run: API_VERSION=62 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- run: DISABLE_SYNTHETIC_SHADOW_SUPPORT_IN_COMPILER=1 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- run: DISABLE_SYNTHETIC_SHADOW_SUPPORT_IN_COMPILER=1 DISABLE_SYNTHETIC=1 DISABLE_STATIC_CONTENT_OPTIMIZATION=1 yarn sauce:ci | |
- run: ENABLE_ARIA_REFLECTION_GLOBAL_POLYFILL=1 yarn sauce:ci | |
- run: ENABLE_ARIA_REFLECTION_GLOBAL_POLYFILL=1 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- name: Upload coverage results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-report-group-3 | |
path: ./packages/@lwc/integration-karma/coverage/**/coverage-final.json | |
run-karma-tests-group-4: | |
runs-on: ubuntu-22.04 | |
env: | |
SAUCE_TUNNEL_ID: github-action-tunnel-integration-${{github.run_id}}-group-4 | |
defaults: | |
run: | |
working-directory: ./packages/@lwc/integration-karma | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn install --frozen-lockfile | |
working-directory: ./ | |
- uses: saucelabs/sauce-connect-action@v2 | |
with: | |
username: ${{ secrets.SAUCE_USERNAME }} | |
accessKey: ${{ secrets.SAUCE_ACCESS_KEY }} | |
tunnelName: ${{ env.SAUCE_TUNNEL_ID }} | |
- run: DISABLE_STATIC_CONTENT_OPTIMIZATION=1 yarn sauce:ci | |
- run: DISABLE_STATIC_CONTENT_OPTIMIZATION=1 DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- run: NODE_ENV_FOR_TEST=production yarn sauce:ci | |
- run: NODE_ENV_FOR_TEST=production DISABLE_SYNTHETIC=1 yarn sauce:ci | |
- run: yarn hydration:sauce:ci | |
- run: ENABLE_SYNTHETIC_SHADOW_IN_HYDRATION=1 yarn hydration:sauce:ci | |
- run: NODE_ENV_FOR_TEST=production yarn hydration:sauce:ci | |
- run: DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE=1 yarn hydration:sauce:ci | |
- run: DISABLE_STATIC_CONTENT_OPTIMIZATION=1 yarn hydration:sauce:ci | |
- name: Upload coverage results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-report-group-4 | |
path: ./packages/@lwc/integration-karma/coverage/**/coverage-final.json | |
run-karma-tests: | |
runs-on: ubuntu-22.04 | |
defaults: | |
run: | |
working-directory: ./packages/@lwc/integration-karma | |
needs: | |
- run-karma-tests-group-1 | |
- run-karma-tests-group-2 | |
- run-karma-tests-group-3 | |
- run-karma-tests-group-4 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn install --frozen-lockfile | |
working-directory: ./ | |
- name: Download coverage results - group 1 | |
uses: actions/download-artifact@v4 | |
with: | |
name: coverage-report-group-1 | |
path: ./packages/@lwc/integration-karma/coverage | |
- name: Download coverage results - group 2 | |
uses: actions/download-artifact@v4 | |
with: | |
name: coverage-report-group-2 | |
path: ./packages/@lwc/integration-karma/coverage | |
- name: Download coverage results - group 3 | |
uses: actions/download-artifact@v4 | |
with: | |
name: coverage-report-group-3 | |
path: ./packages/@lwc/integration-karma/coverage | |
- name: Download coverage results - group 4 | |
uses: actions/download-artifact@v4 | |
with: | |
name: coverage-report-group-4 | |
path: ./packages/@lwc/integration-karma/coverage | |
- run: yarn coverage | |
- name: Upload combined coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-report-combined | |
path: ./packages/@lwc/integration-karma/coverage/combined | |
- name: Add markdown summary | |
run: awk '/<table/,/<\/table>/' ./coverage/combined/index.html >> $GITHUB_STEP_SUMMARY |