60
60
rust :
61
61
toolchain : nightly
62
62
# Run on nightly to help find regressions
63
- args : --features tests/ui
63
+ test- args : --features tests/ui
64
64
- name : Build macOS 32bit
65
65
os : macos-10.15
66
66
target : i686-apple-darwin
@@ -77,14 +77,15 @@ jobs:
77
77
- name : Test GNUStep
78
78
os : ubuntu-latest
79
79
target : x86_64-unknown-linux-gnu
80
- features : gnustep-1-9
81
- args : --features gnustep-1-9
80
+ host-args : --features block-sys/gnustep-1-9,objc-sys/ gnustep-1-9
81
+ args : --features block-sys/gnustep-1-9,objc-sys/ gnustep-1-9
82
82
- name : Test GNUStep 32bit
83
83
os : ubuntu-latest
84
84
target : i686-unknown-linux-gnu
85
85
cflags : -m32
86
86
configureflags : --target=x86-pc-linux-gnu
87
- args : --features gnustep-1-9
87
+ host-args : --features block-sys/gnustep-1-9,objc-sys/gnustep-1-9
88
+ args : --features block-sys/gnustep-1-9,objc-sys/gnustep-1-9
88
89
- name : Test iOS simulator x86 64bit
89
90
os : macos-11
90
91
target : x86_64-apple-ios
@@ -270,28 +271,6 @@ jobs:
270
271
if : matrix.dinghy && steps.extern-cache.outputs.cache-hit != 'true'
271
272
run : cargo install cargo-dinghy --version=^0.4 --root=$HOME/extern --target=x86_64-apple-darwin
272
273
273
- - name : Run Cargo Dinghy
274
- if : matrix.dinghy
275
- run : |
276
- # Launch the simulator
277
- xcrun simctl list runtimes
278
- RUNTIME_ID=$(xcrun simctl list runtimes | grep iOS | cut -d ' ' -f 7 | tail -1)
279
- export SIM_ID=$(xcrun simctl create My-iphone7 com.apple.CoreSimulator.SimDeviceType.iPhone-7 $RUNTIME_ID)
280
- xcrun simctl boot $SIM_ID
281
-
282
- # Build
283
- cargo dinghy build
284
-
285
- # Run tests
286
- cargo dinghy --device=$SIM_ID test --no-default-features
287
- # Enable a few features. We're doing it this way because cargo dingy
288
- # doesn't support specifying features from a workspace.
289
- sed -i -e '/\[features\]/a\
290
- default = ["exception", "verify_message", "catch_all"]
291
- ' objc2/Cargo.toml
292
- cargo dinghy --device=$SIM_ID test
293
- cargo dinghy --device=$SIM_ID test --release
294
-
295
274
- name : Build
296
275
if : ${{ !matrix.dinghy }}
297
276
uses : actions-rs/cargo@v1
@@ -343,3 +322,32 @@ jobs:
343
322
command : test
344
323
# Not using --all-features because that would enable e.g. gnustep
345
324
args : --features ${{ env.FEATURES }},${{ env.UNSTABLE_FEATURES }} ${{ env.TESTARGS }}
325
+
326
+ - name : Run assembly tests
327
+ shell : bash
328
+ run :
329
+ export HOST_TARGET=$(rustc -vV | grep host | cut -f2 -d' ')
330
+
331
+ cargo run ${{ matrix.host-args }} --features assembly --target=$HOST_TARGET test_assembly ${{ matrix.args }}
332
+
333
+ - name : Run Cargo Dinghy
334
+ if : matrix.dinghy
335
+ run : |
336
+ # Launch the simulator
337
+ xcrun simctl list runtimes
338
+ RUNTIME_ID=$(xcrun simctl list runtimes | grep iOS | cut -d ' ' -f 7 | tail -1)
339
+ export SIM_ID=$(xcrun simctl create My-iphone7 com.apple.CoreSimulator.SimDeviceType.iPhone-7 $RUNTIME_ID)
340
+ xcrun simctl boot $SIM_ID
341
+
342
+ # Build
343
+ cargo dinghy build
344
+
345
+ # Run tests
346
+ cargo dinghy --device=$SIM_ID test --no-default-features
347
+ # Enable a few features. We're doing it this way because cargo dingy
348
+ # doesn't support specifying features from a workspace.
349
+ sed -i -e '/\[features\]/a\
350
+ default = ["exception", "verify_message", "catch_all"]
351
+ ' objc2/Cargo.toml
352
+ cargo dinghy --device=$SIM_ID test
353
+ cargo dinghy --device=$SIM_ID test --release
0 commit comments