Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 67 additions & 2 deletions .github/workflows/qunit_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ concurrency:

on:
pull_request:
types: [opened, synchronize, reopened, labeled, unlabeled]
paths-ignore:
- 'apps/**/*.md'
push:
Expand All @@ -14,7 +15,7 @@ on:

env:
NX_SKIP_NX_CACHE: ${{ contains(github.event.pull_request.labels.*.name, 'skip-cache') && 'true' || 'false' }}
RUN_ALL_TESTS: true
RUN_ALL_TESTS: ${{ github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'renovation') && 'false' || 'true' }}

jobs:
check-should-run-all:
Expand All @@ -28,6 +29,8 @@ jobs:
run: echo "should-run=${{ env.RUN_ALL_TESTS }}" >> $GITHUB_OUTPUT

build:
needs: check-should-run-all
if: needs.check-should-run-all.outputs.should-run == 'true'
runs-on: devextreme-shr2
name: Build
timeout-minutes: 60
Expand Down Expand Up @@ -81,7 +84,8 @@ jobs:
retention-days: 1

qunit-tests:
needs: build
needs: [check-should-run-all, build]
if: needs.check-should-run-all.outputs.should-run == 'true'
runs-on: devextreme-shr2
name: Constel ${{ matrix.CONSTEL }}${{ matrix.TIMEZONE != '' && format('-{0}', matrix.TIMEZONE) || '' }}${{ matrix.CSP == 'false' && '-no-csp' || '' }}
timeout-minutes: 20
Expand Down Expand Up @@ -129,6 +133,67 @@ jobs:
useCsp: ${{ matrix.CSP }}
maxWorkers: ${{ matrix.MAX_WORKERS || '' }}

renovation-skip-build:
needs: check-should-run-all
if: github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'renovation')
runs-on: ubuntu-latest
name: Build
steps:
- run: echo "Skipped QUnit build for renovation PR."

renovation-skip-qunit-tests:
if: github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'renovation')
runs-on: ubuntu-latest
name: Constel ${{ matrix.CONSTEL }}${{ matrix.TIMEZONE != '' && format('-{0}', matrix.TIMEZONE) || '' }}${{ matrix.CSP == 'false' && '-no-csp' || '' }}
strategy:
fail-fast: false
matrix:
CONSTEL: [
misc,
ui,
ui.editors,
ui.grid,
ui.scheduler,
]
TIMEZONE: ['']
CSP: ['true']
useJQuery: ['false']
MAX_WORKERS: ['']
include:
- CONSTEL: export
MAX_WORKERS: '3'
useJQuery: 'false'
CSP: 'true'
- CONSTEL: ui.scheduler
TIMEZONE: US/Pacific
useJQuery: 'false'
- CONSTEL: misc
CSP: 'false'
useJQuery: 'true'
- CONSTEL: ui.widgets
CSP: 'false'
useJQuery: 'false'
MAX_WORKERS: '3'
steps:
- run: echo "Skipped QUnit tests for renovation PR."

renovation-skip-qunit-shadow-dom:
if: github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'renovation')
runs-on: ubuntu-latest
name: ${{ matrix.constel }}-shadow-dom
strategy:
fail-fast: false
matrix:
constel: [
'ui',
'ui.widgets',
'ui.editors',
'ui.grid',
'ui.scheduler',
]
steps:
- run: echo "Skipped QUnit shadow DOM tests for renovation PR."

qunit-tests-shadow-dom:
needs: [check-should-run-all, build]
if: needs.check-should-run-all.outputs.should-run == 'true'
Expand Down
48 changes: 44 additions & 4 deletions .github/workflows/testcafe_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ concurrency:

on:
pull_request:
types: [opened, synchronize, reopened, labeled, unlabeled]
paths-ignore:
- 'apps/**/*.md'
push:
Expand All @@ -14,12 +15,12 @@ on:

env:
NX_SKIP_NX_CACHE: ${{ contains(github.event.pull_request.labels.*.name, 'skip-cache') && 'true' || 'false' }}
RUN_TESTS: true
RUN_TESTS: ${{ github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'renovation') && 'false' || 'true' }}

jobs:
check-should-run:
name: Check if tests should run
runs-on: devextreme-shr2
runs-on: ubuntu-latest
outputs:
should-run: ${{ steps.check.outputs.should-run }}
styles-changed: ${{ steps.changes.outputs.styles }}
Expand All @@ -38,6 +39,45 @@ jobs:
- 'packages/devextreme/js/**/themes/**'
- 'e2e/testcafe-devextreme/helpers/accessibility/**'

renovation-skip-testcafe:
name: ${{ matrix.ARGS.name }}${{ !matrix.ARGS.theme && ' - fluent' || '' }}
needs: check-should-run
if: github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'renovation')
strategy:
fail-fast: false
matrix:
ARGS: [
{ componentFolder: "accessibility", name: "accessibility" },
{ componentFolder: "accessibility", name: "accessibility - fluent.dark", theme: 'fluent.blue.dark', styleDependent: true },
{ componentFolder: "accessibility", name: "accessibility - material.light", theme: 'material.blue.light', styleDependent: true },
{ componentFolder: "accessibility", name: "accessibility - material.dark", theme: 'material.blue.dark', styleDependent: true },
{ componentFolder: "common", name: "common" },

{ name: "generic", theme: 'generic.light' },
{ name: "material", theme: 'material.blue.light' },
{ name: "material - compact", theme: 'material.blue.light.compact' },

{ componentFolder: "cardView", name: "cardView" },
{ componentFolder: "dataGrid", name: "dataGrid (1/4)", indices: "1/4", cache: true },
{ componentFolder: "dataGrid", name: "dataGrid (2/4)", indices: "2/4", cache: true },
{ componentFolder: "dataGrid", name: "dataGrid (3/4)", indices: "3/4", cache: true },
{ componentFolder: "dataGrid", name: "dataGrid (4/4)", indices: "4/4", cache: true },

{ componentFolder: "editors", name: "editors" },
{ componentFolder: "navigation", name: "navigation" },

{ componentFolder: "scheduler/common", name: "scheduler / common (1/3)", indices: "1/3" },
{ componentFolder: "scheduler/common", name: "scheduler / common (2/3)", indices: "2/3" },
{ componentFolder: "scheduler/common", name: "scheduler / common (3/3)", indices: "3/3" },
{ componentFolder: "scheduler/viewOffset", name: "scheduler / viewOffset (1/2)", indices: "1/2" },
{ componentFolder: "scheduler/viewOffset", name: "scheduler / viewOffset (2/2)", indices: "2/2" },
{ componentFolder: "scheduler/timezones", name: "scheduler / timezones (Europe/Berlin)", timezone: "Europe/Berlin" },
{ componentFolder: "scheduler/timezones", name: "scheduler / timezones (America/Los_Angeles)", timezone: "America/Los_Angeles" },
]
runs-on: ubuntu-latest
steps:
- run: echo "Skipped TestCafe component tests for renovation PR."

build:
name: Build DevExtreme
needs: check-should-run
Expand Down Expand Up @@ -229,8 +269,8 @@ jobs:

merge-artifacts:
runs-on: devextreme-shr2
needs: testcafe
if: ${{ always() }}
needs: [check-should-run, testcafe]
if: ${{ always() && needs.check-should-run.outputs.should-run == 'true' }}

steps:
- name: Merge screenshot artifacts
Expand Down
Loading
Loading