-
Notifications
You must be signed in to change notification settings - Fork 471
43 lines (41 loc) · 1.4 KB
/
esmeta-test262.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
name: 'esmeta test262'
on: [pull_request]
jobs:
esmeta-test262:
name: 'esmeta test262'
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup JDK
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 17
- name: Setup SBT
uses: sbt/setup-sbt@v1
if: ${{ hashFiles('/usr/bin/sbt') == '' }}
# https://www.peterbe.com/plog/how-to-run-workflow-step-if-a-file-exists
- name: Add to PATH
shell: bash
run: |
echo "ESMETA_HOME=$(pwd)/vendor/esmeta" >> $GITHUB_ENV
- name: download esmeta
run: |
mkdir -p "${ESMETA_HOME}"
git clone --branch v0.4.2 --depth 1 https://github.com/es-meta/esmeta.git "${ESMETA_HOME}"
cd "${ESMETA_HOME}" && git submodule update --init --depth 1
- name: build esmeta
working-directory: ${{ env.ESMETA_HOME }}
run: sbt assembly
- name: run test262
run: |
git fetch origin main
paths=$(git diff --diff-filter ACMR --name-only origin/main.. -- test/)
if [ "$paths" == "" ]; then
echo No test files added or modified. Exiting.
exit 0
fi
echo New or modified test files:
echo "$paths"
"${ESMETA_HOME}"/bin/esmeta test262-test -status -test262dir=$(pwd) $paths