File tree Expand file tree Collapse file tree 3 files changed +5
-17
lines changed
Expand file tree Collapse file tree 3 files changed +5
-17
lines changed Original file line number Diff line number Diff line change 4545 -destination 'platform=macOS' \
4646 -derivedDataPath ./build \
4747 -only-testing:KasetTests \
48- -skip-testing:KasetTests/MusicIntentIntegrationTests \
4948 CODE_SIGN_IDENTITY="" \
5049 CODE_SIGNING_REQUIRED=NO \
5150 CODE_SIGNING_ALLOWED=NO \
Original file line number Diff line number Diff line change @@ -26,16 +26,10 @@ import Testing
2626/// -only-testing:KasetTests/MusicIntentIntegrationTests
2727/// ```
2828///
29- /// Run all unit tests EXCEPT integration tests:
29+ /// Run all unit tests ( integration tests auto-skip if AI unavailable) :
3030/// ```bash
3131/// xcodebuild test -scheme Kaset -destination 'platform=macOS' \
32- /// -only-testing:KasetTests -skip-testing:KasetTests/MusicIntentIntegrationTests
33- /// ```
34- ///
35- /// Skip by tag (recommended for CI):
36- /// ```bash
37- /// xcodebuild test -scheme Kaset -destination 'platform=macOS' \
38- /// -only-testing:KasetTests -skip-test-tag integration
32+ /// -only-testing:KasetTests
3933/// ```
4034@Suite (
4135 " MusicIntent Integration " ,
Original file line number Diff line number Diff line change @@ -401,20 +401,15 @@ xcodebuild test -scheme Kaset -destination 'platform=macOS' \
401401xcodebuild test -scheme Kaset -destination ' platform=macOS' \
402402 -only-testing:KasetTests/MusicIntentIntegrationTests
403403
404- # Run all unit tests EXCEPT integration tests
404+ # Run all unit tests ( integration tests auto-skip if AI unavailable)
405405xcodebuild test -scheme Kaset -destination ' platform=macOS' \
406- -only-testing:KasetTests \
407- -skip-testing:KasetTests/MusicIntentIntegrationTests
408-
409- # Skip by tag
410- xcodebuild test -scheme Kaset -destination ' platform=macOS' \
411- -only-testing:KasetTests -skip-test-tag integration
406+ -only-testing:KasetTests
412407```
413408
414409#### Test Characteristics
415410
416411- ** Tagged** : ` .integration ` and ` .slow ` for easy filtering
417- - ** Skip-friendly ** : Uses ` throw AIUnavailableError() ` when AI unavailable
412+ - ** Auto-skip ** : Uses ` .enabled(if:) ` to skip entire suite when AI unavailable
418413- ** Parameterized** : Efficient coverage with Swift Testing's ` arguments: `
419414- ** Retry-enabled** : Up to 3 attempts per test to handle LLM non-determinism
420415- ** Relaxed validation** : Checks multiple fields to accommodate LLM output variance
You can’t perform that action at this time.
0 commit comments