Skip to content

Commit 48a5dea

Browse files
chore: test renderer 1.x support (#1902)
1 parent 185e51c commit 48a5dea

24 files changed

Lines changed: 641 additions & 87 deletions

File tree

.github/actions/setup-deps-rn-latest/action.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
name: Setup deps (RN @latest)
22
description: Setup Node.js and install dependencies
33

4+
inputs:
5+
test-renderer-version:
6+
description: Test renderer version to install (e.g., 1.1.0)
7+
required: false
8+
49
runs:
510
using: composite
611
steps:
@@ -32,3 +37,8 @@ runs:
3237
@react-native/babel-preset@latest \
3338
@react-native/jest-preset@latest
3439
shell: bash
40+
41+
- name: Switch to test-renderer version
42+
if: inputs.test-renderer-version != ''
43+
run: yarn add -D test-renderer@${{ inputs.test-renderer-version }}
44+
shell: bash

.github/actions/setup-deps-rn-next/action.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
name: Setup deps (RN @next)
22
description: Setup Node.js and install dependencies
33

4+
inputs:
5+
test-renderer-version:
6+
description: Test renderer version to install (e.g., 1.1.0)
7+
required: false
8+
49
runs:
510
using: composite
611
steps:
@@ -32,3 +37,8 @@ runs:
3237
@react-native/babel-preset@next \
3338
@react-native/jest-preset@next
3439
shell: bash
40+
41+
- name: Switch to test-renderer version
42+
if: inputs.test-renderer-version != ''
43+
run: yarn add -D test-renderer@${{ inputs.test-renderer-version }}
44+
shell: bash

.github/actions/setup-deps-rn-nightly/action.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
name: Setup deps (RN nightly)
22
description: Setup Node.js and install dependencies
33

4+
inputs:
5+
test-renderer-version:
6+
description: Test renderer version to install (e.g., 1.1.0)
7+
required: false
8+
49
runs:
510
using: composite
611
steps:
@@ -33,3 +38,8 @@ runs:
3338
@react-native/babel-preset@nightly \
3439
@react-native/jest-preset@nightly
3540
shell: bash
41+
42+
- name: Switch to test-renderer version
43+
if: inputs.test-renderer-version != ''
44+
run: yarn add -D test-renderer@${{ inputs.test-renderer-version }}
45+
shell: bash

.github/actions/setup-deps/action.yml

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ inputs:
88
react-native-version:
99
description: React Native version to install (e.g., 0.83.1)
1010
required: false
11+
test-renderer-version:
12+
description: Test renderer version to install (e.g., 1.1.0)
13+
required: false
1114

1215
runs:
1316
using: composite
@@ -38,7 +41,14 @@ runs:
3841
if: inputs.react-version != '' && inputs.react-native-version != ''
3942
run: |
4043
RN_VERSION='${{ inputs.react-native-version }}'
41-
RN_MINOR="${RN_VERSION#0.}"
44+
RN_VERSION_CLEAN="$RN_VERSION"
45+
46+
case "$RN_VERSION_CLEAN" in
47+
'~'*) RN_VERSION_CLEAN="${RN_VERSION_CLEAN#\~}" ;;
48+
'^'*) RN_VERSION_CLEAN="${RN_VERSION_CLEAN#^}" ;;
49+
esac
50+
51+
RN_MINOR="${RN_VERSION_CLEAN#0.}"
4252
RN_MINOR="${RN_MINOR%%.*}"
4353
4454
deps=(
@@ -56,3 +66,8 @@ runs:
5666
5767
yarn add -D "${deps[@]}"
5868
shell: bash
69+
70+
- name: Switch to test-renderer version
71+
if: inputs.test-renderer-version != ''
72+
run: yarn add -D test-renderer@${{ inputs.test-renderer-version }}
73+
shell: bash
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: Typecheck React 19.2 tests if supported
2+
description: Run React 19.2-only test typecheck when the installed React version is 19.2 or newer
3+
4+
runs:
5+
using: composite
6+
steps:
7+
- name: Typecheck React 19.2-only tests
8+
run: |
9+
REACT_VERSION="$(node -p "require('react/package.json').version")"
10+
REACT_MAJOR="${REACT_VERSION%%.*}"
11+
REACT_MINOR_PATCH="${REACT_VERSION#*.}"
12+
REACT_MINOR="${REACT_MINOR_PATCH%%.*}"
13+
14+
if [ "$REACT_MAJOR" -gt 19 ] || { [ "$REACT_MAJOR" -eq 19 ] && [ "$REACT_MINOR" -ge 2 ]; }; then
15+
echo "Running React 19.2-only typecheck for React $REACT_VERSION"
16+
yarn typecheck:react-19_2
17+
else
18+
echo "Skipping React 19.2-only typecheck for React $REACT_VERSION"
19+
fi
20+
shell: bash

0 commit comments

Comments
 (0)