🏡 index : quine-global/webdriverio.git

# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: Test

on:
  push:
    branches:
      - main
      - v7
      - v8
      - '!l10n_main'
    paths-ignore:
      - '**/*.md'
  pull_request:
    branches-ignore:
      - 'l10n_main'

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  build_core:
    name: Build
    uses: ./.github/workflows/build.yml

  static_code_analysis:
    name: Static Code Analysis
    uses: ./.github/workflows/test-static.yml

  typing_tests:
    name: Typing Tests
    needs: [build_core, static_code_analysis]
    uses: ./.github/workflows/test-typings.yml

  interop_tests:
    name: Interop Tests
    needs: [build_core, static_code_analysis]
    uses: ./.github/workflows/test-interop.yml

  unit_tests:
    name: Unit Tests
    needs: [build_core, static_code_analysis]
    uses: ./.github/workflows/test-unit.yml

  smoke_tests:
    name: Smoke Tests
    needs: [build_core, static_code_analysis]
    uses: ./.github/workflows/test-smoke.yml

  component_tests:
    name: Component Tests
    needs: [build_core, static_code_analysis]
    uses: ./.github/workflows/test-component.yml

  launch_tests:
    name: E2E Tests
    needs: [smoke_tests, component_tests, unit_tests, interop_tests, typing_tests]
    uses: ./.github/workflows/test-launch.yml

  cloud_tests:
    name: E2E Tests
    needs: [smoke_tests, component_tests, unit_tests, interop_tests, typing_tests]
    uses: ./.github/workflows/test-cloud.yml
    secrets: inherit

  testrunner_tests:
    name: E2E Tests
    needs: [smoke_tests, component_tests, unit_tests, interop_tests, typing_tests]
    uses: ./.github/workflows/test-testrunner.yml

  multiremote_tests:
    name: E2E Tests
    needs: [smoke_tests, component_tests, unit_tests, interop_tests, typing_tests]
    uses: ./.github/workflows/test-multiremote.yml

  standalone_tests:
    name: E2E Tests
    needs: [smoke_tests, component_tests, unit_tests, interop_tests, typing_tests]
    uses: ./.github/workflows/test-standalone.yml

  xvfb_tests:
    name: XVFB E2E Tests
    needs: [smoke_tests, component_tests, unit_tests, interop_tests, typing_tests]
    uses: ./.github/workflows/test-xvfb-e2e.yml