@@ -2,14 +2,14 @@ name: SwiftUI Auth
22
33on :
44 push :
5- branches : [ main ]
5+ branches : [ main, development ]
66 paths :
77 - ' .github/workflows/swiftui-auth.yml'
88 - ' samples/swiftui/**'
99 - ' FirebaseSwiftUI/**'
1010 - ' Package.swift'
1111 pull_request :
12- branches : [ main ]
12+ branches : [ main, development ]
1313 paths :
1414 - ' .github/workflows/swiftui-auth.yml'
1515 - ' samples/swiftui/**'
@@ -24,7 +24,7 @@ permissions:
2424jobs :
2525 swiftui-auth :
2626 runs-on : macos-15
27- timeout-minutes : 30
27+ timeout-minutes : 60
2828 steps :
2929 - uses : actions/checkout@d632683dd7b4114ad314bca15554477dd762a938
3030 - uses : actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a
@@ -45,23 +45,58 @@ jobs:
4545 run : gem install xcpretty
4646 - name : Select Xcode version
4747 run : |
48- sudo xcode-select -switch /Applications/Xcode_16.3.app/Contents/Developer
48+ sudo xcode-select -switch /Applications/Xcode_16.4.app/Contents/Developer
49+ - name : Run FirebaseSwiftUI Package Unit Tests
50+ run : |
51+ set -o pipefail
52+ xcodebuild test -scheme FirebaseUI-Package -destination 'platform=iOS Simulator,name=iPhone 16 Pro' -enableCodeCoverage YES -resultBundlePath FirebaseSwiftUIPackageTests.xcresult | tee FirebaseSwiftUIPackageTests.log | xcpretty --test --color --simple
53+ # Build for integration tests (builds app + integration test bundle)
54+ - name : Build for Integration Tests
55+ run : |
56+ cd ./samples/swiftui/FirebaseSwiftUIExample
57+ set -o pipefail
58+ xcodebuild build-for-testing \
59+ -scheme FirebaseSwiftUIExampleTests \
60+ -destination 'platform=iOS Simulator,name=iPhone 16 Pro' \
61+ -enableCodeCoverage YES | xcpretty --color --simple
62+ # Run integration tests
4963 - name : Run Integration Tests
5064 run : |
5165 cd ./samples/swiftui/FirebaseSwiftUIExample
5266 set -o pipefail
53- xcodebuild test -scheme FirebaseSwiftUIExampleTests -destination 'platform=iOS Simulator,name=iPhone 16 Pro' -enableCodeCoverage YES -resultBundlePath FirebaseSwiftUIExampleTests.xcresult | tee FirebaseSwiftUIExampleTests.log | xcpretty --test --color --simple
67+ xcodebuild test-without-building \
68+ -scheme FirebaseSwiftUIExampleTests \
69+ -destination 'platform=iOS Simulator,name=iPhone 16 Pro' \
70+ -enableCodeCoverage YES \
71+ -resultBundlePath FirebaseSwiftUIExampleTests.xcresult | tee FirebaseSwiftUIExampleTests.log | xcpretty --test --color --simple
72+ # Build for UI tests (reuses app build, builds UI test bundle)
73+ - name : Build for UI Tests
74+ run : |
75+ cd ./samples/swiftui/FirebaseSwiftUIExample
76+ set -o pipefail
77+ xcodebuild build-for-testing \
78+ -scheme FirebaseSwiftUIExampleUITests \
79+ -destination 'platform=iOS Simulator,name=iPhone 16 Pro' \
80+ -enableCodeCoverage YES | xcpretty --color --simple
81+ # Run UI tests
5482 - name : Run View UI Tests
5583 run : |
5684 cd ./samples/swiftui/FirebaseSwiftUIExample
5785 set -o pipefail
58- xcodebuild test -scheme FirebaseSwiftUIExampleUITests -destination 'platform=iOS Simulator,name=iPhone 16 Pro' -enableCodeCoverage YES -resultBundlePath FirebaseSwiftUIExampleUITests.xcresult | tee FirebaseSwiftUIExampleUITests.log | xcpretty --test --color --simple
86+ xcodebuild test-without-building \
87+ -scheme FirebaseSwiftUIExampleUITests \
88+ -destination 'platform=iOS Simulator,name=iPhone 16 Pro' \
89+ -parallel-testing-enabled YES \
90+ -maximum-concurrent-test-simulator-destinations 2 \
91+ -enableCodeCoverage YES \
92+ -resultBundlePath FirebaseSwiftUIExampleUITests.xcresult | tee FirebaseSwiftUIExampleUITests.log | xcpretty --test --color --simple
5993 - name : Upload test logs
6094 if : failure()
6195 uses : actions/upload-artifact@v4
6296 with :
6397 name : swiftui-auth-test-logs
6498 path : |
99+ FirebaseSwiftUIPackageTests.log
65100 samples/swiftui/FirebaseSwiftUIExample/FirebaseSwiftUIExampleTests.log
66101 samples/swiftui/FirebaseSwiftUIExample/FirebaseSwiftUIExampleUITests.log
67102 - name : Upload FirebaseSwiftUIExampleUITests.xcresult bundle
@@ -75,4 +110,10 @@ jobs:
75110 uses : actions/upload-artifact@v4
76111 with :
77112 name : FirebaseSwiftUIExampleTests.xcresult
78- path : samples/swiftui/FirebaseSwiftUIExample/FirebaseSwiftUIExampleTests.xcresult
113+ path : samples/swiftui/FirebaseSwiftUIExample/FirebaseSwiftUIExampleTests.xcresult
114+ - name : Upload FirebaseSwiftUIPackageTests.xcresult bundle
115+ if : failure()
116+ uses : actions/upload-artifact@v4
117+ with :
118+ name : FirebaseSwiftUIPackageTests.xcresult
119+ path : FirebaseSwiftUIPackageTests.xcresult
0 commit comments