Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[Temporal] Add tests for invalid eras #1582

[Temporal] Add tests for invalid eras

[Temporal] Add tests for invalid eras #1582

Workflow file for this run

name: Checks
on:
- push
- pull_request
jobs:
lint:
name: Lint tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
cache: pip
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r tools/lint/requirements.txt
- name: Lint all tests
if: github.event_name == 'push'
run: ./tools/lint/lint.py test/
- name: Identify new or changed tests
id: changed_tests
if: github.event_name == 'pull_request'
uses: tj-actions/changed-files@v45
with:
files: test/
- name: Lint new or changed tests
if: |
github.event_name == 'pull_request' &&
steps.changed_tests.outputs.any_changed == 'true'
run: |
echo 'New or modified test files:'
for file in ${{ steps.changed_tests.outputs.all_changed_files }}; do
echo $file
done | tee "$HOME/changed.txt"
cat "$HOME/changed.txt" | xargs ./tools/lint/lint.py 2> >(tee errors.out >&2)
- name: Create annotations in the PR
if: failure() && github.event_name == 'pull_request'
run: |
awk -v cwd="$(pwd)/" <errors.out '{
if (index($0, cwd)==1) $0=substr($0, length(cwd)+1);
i=index($0, ": ");
printf "::error file=%s,line=1::%s\n", substr($0, 1, i-1), substr($0, i+2);
}'
lint-web-features:
name: Lint web-features
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Create stable copy of linting tools
run: |
cp -r tools/web-features tools/web-features-stable
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install -r tools/web-features-stable/requirements.txt
- name: Validate WEB_FEATURES.yml
run: |
./tools/web-features-stable/lint.py --manifest WEB_FEATURES-manifest-pr.json
- name: Checkout base branch
uses: actions/checkout@v4
with:
ref: ${{ github.event_name == 'pull_request' && github.base_ref || github.ref_name }}
# The `clean` option must be unset in order to retain the first
# manifest file.
clean: false
- name: Generate manifest on base branch
run: |
./tools/web-features-stable/lint.py --manifest WEB_FEATURES-manifest-base.json
- name: debug
run: ls -lah
# Checking out the original branch ensures that if the patch under review
# modified `check-coverage.py` itself, that modified version is used.
- name: Checkout original branch
uses: actions/checkout@v4
with:
# The `clean` option must be unset in order to retain the manifest
# files.
clean: false
- name: debug
run: ls -lah
- name: Verify absence of regressions in classification coverage
run: |
./tools/web-features-stable/check-coverage.py \
--base WEB_FEATURES-manifest-base.json \
--new WEB_FEATURES-manifest-pr.json
build:
name: Build generated tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
cache: pip
- name: Install dependencies for generation tool
run: |
python -m pip install --upgrade pip
pip install -r tools/generation/requirements.txt
- name: Install dependencies for regexp-generator tool
run: |
cd tools/regexp-generator
npm install
- name: Build tests
run: |
./make.py clean >/dev/null
./make.py
- name: Verify changes
uses: tj-actions/verify-changed-files@v20
with:
fail-if-changed: true
fail-message: |
New changes were found after re-generating the tests.
Please read the documentation on procedurally generated tests
https://github.com/tc39/test262/blob/HEAD/CONTRIBUTING.md#procedurally-generated-tests
self-test:
name: Run the harness tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install test262-harness
run: npm install
- name: Run tests
run: npm run test -- --errorForFailures -- test/harness/*.js