1-
21# This workflow uses actions that are not certified by GitHub.
32# They are provided by a third-party and are governed by
43# separate terms of service, privacy policy, and support
2322 - ' *' # Push events to every tag
2423
2524jobs :
26- swift_tests :
25+ swift_tests_latest :
26+ name : Latest Swift Version
27+ runs-on : macos-15
28+ steps :
29+ - uses : maxim-lobanov/setup-xcode@v1
30+ with :
31+ xcode-version : " 16.0"
32+ - uses : actions/checkout@v3
33+ - uses : actions/cache@v3
34+ with :
35+ path : .build
36+ key : macos-latest-spm-${{ hashFiles('**/Package.resolved') }}
37+ restore-keys : |
38+ macos-latest-spm-
39+ - name : Build
40+ run : swift build
41+ - name : Run tests
42+ run : swift test
43+ swift_tests_previous :
2744 name : Swift Version ${{ matrix.swift }}
2845 strategy :
2946 matrix :
@@ -41,26 +58,51 @@ jobs:
4158 - uses : actions/cache@v3
4259 with :
4360 path : .build
44- key : ${{ matrix.os }}-spm-${{ hashFiles('**/Package.resolved') }}
61+ key : ${{ matrix.os }}-${{ matrix.swift }}- spm-${{ hashFiles('**/Package.resolved') }}
4562 restore-keys : |
4663 ${{ matrix.os }}-spm-
4764 - name : Build
4865 run : swift build
4966 - name : Run tests
5067 run : swift test
5168
52- ios_tests :
69+ ios_tests_latest :
70+ name : iOS Unit Tests - Latest Swift
71+ runs-on : macos-15
72+ steps :
73+ - uses : maxim-lobanov/setup-xcode@v1
74+ with :
75+ xcode-version : " 16.0"
76+ - uses : actions/checkout@v3
77+ - uses : actions/cache@v3
78+ with :
79+ path : .build
80+ key : macos-15-spm-${{ hashFiles('**/Package.resolved') }}
81+ restore-keys : |
82+ macos-15-spm-
83+
84+ - name : Build
85+ run : xcodebuild build -scheme SyntaxSparrow -destination "OS=18.1,name=iPhone 16"
86+
87+ - name : Test
88+ run : xcodebuild test -scheme SyntaxSparrow -destination "OS=18.1,name=iPhone 16" -enableCodeCoverage YES
89+
90+ ios_tests_previous :
5391 name : iOS Unit Tests
54- runs-on : macos-13
92+ strategy :
93+ matrix :
94+ os : [macos-13]
95+ swift : ["5.9", "5.8"]
96+ runs-on : ${{ matrix.os }}
5597 steps :
5698 - uses : swift-actions/setup-swift@v1
5799 with :
58- swift-version : 5.9
100+ swift-version : ${{ matrix.swift }}
59101 - uses : actions/checkout@v3
60102 - uses : actions/cache@v3
61103 with :
62104 path : .build
63- key : ${{ matrix.os }}-spm-${{ hashFiles('**/Package.resolved') }}
105+ key : ${{ matrix.os }}-${{ matrix.swift }}- spm-${{ hashFiles('**/Package.resolved') }}
64106 restore-keys : |
65107 ${{ matrix.os }}-spm-
66108
0 commit comments