fortrangoingonforty/fortsh / 8d8b755

Browse files

add PTY tests for ARM64 Linux and macOS ARM64 — three-platform interactive coverage

Authored by espadonne
SHA
8d8b7559bfd06bbf2e0cd36066efaa0dacc4e5c4
Parents
f58a2aa
Tree
40bfadc

1 changed file

StatusFile+-
M .github/workflows/test.yml 55 0
.github/workflows/test.ymlmodified
@@ -88,6 +88,32 @@ jobs:
8888
   # ============================================================================
8989
   # ARM64 Linux (gfortran)
9090
   # ============================================================================
91
+  arm64-linux-interactive:
92
+    name: "ARM64 Linux: Interactive PTY Tests"
93
+    if: "!contains(github.event.head_commit.message, '[skip-pty]')"
94
+    runs-on: ubuntu-24.04-arm
95
+    steps:
96
+      - uses: actions/checkout@v4
97
+      - name: Install gfortran
98
+        run: sudo apt-get update && sudo apt-get install -y gfortran
99
+      - name: Set up Python
100
+        uses: actions/setup-python@v5
101
+        with:
102
+          python-version: '3.12'
103
+      - name: Build fortsh
104
+        run: make release
105
+      - name: Install Python dependencies
106
+        run: |
107
+          cd tests/interactive
108
+          python -m venv .venv
109
+          source .venv/bin/activate
110
+          pip install -r requirements.txt
111
+      - name: Run interactive tests
112
+        run: |
113
+          cd tests/interactive
114
+          source .venv/bin/activate
115
+          python run_tests.py
116
+
91117
   arm64-linux-posix:
92118
     name: "ARM64 Linux: POSIX Tests"
93119
     runs-on: ubuntu-24.04-arm
@@ -186,6 +212,35 @@ jobs:
186212
         run: ./tests/builtins/test_stress.sh
187213
         timeout-minutes: 15
188214
 
215
+  macos-arm64-interactive:
216
+    name: "macOS ARM64: Interactive PTY Tests"
217
+    if: "!contains(github.event.head_commit.message, '[skip-pty]')"
218
+    runs-on: macos-15
219
+    env:
220
+      FC: flang-new
221
+      BASH_REF: /opt/homebrew/bin/bash
222
+    steps:
223
+      - uses: actions/checkout@v4
224
+      - name: Install flang-new and coreutils
225
+        run: brew install flang coreutils bash
226
+      - name: Set up Python
227
+        uses: actions/setup-python@v5
228
+        with:
229
+          python-version: '3.12'
230
+      - name: Build fortsh
231
+        run: make release
232
+      - name: Install Python dependencies
233
+        run: |
234
+          cd tests/interactive
235
+          python -m venv .venv
236
+          source .venv/bin/activate
237
+          pip install -r requirements.txt
238
+      - name: Run interactive tests
239
+        run: |
240
+          cd tests/interactive
241
+          source .venv/bin/activate
242
+          python run_tests.py
243
+
189244
   macos-arm64-integration:
190245
     name: "macOS ARM64: Integration Tests"
191246
     runs-on: macos-15