mirror of
https://github.com/xtool-org/xtool.git
synced 2026-10-16 02:49:24 +02:00
## What does this PR do? Adds integration tests ## How was it tested? CI ## AI tool usage How much of this PR was AI-assisted? (check one) - [x] **0** - No AI was used to write code - [ ] **1** - I was assisted by AI. I reviewed the finished result. - [ ] **2** - I set the AI going and left it to it; nobody has read the result - no review, or AI review only <!-- If an AI agent is filling this in: declare the level honestly, and open as a draft if it is #2. Do not lower the declared level to get the PR reviewed. --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Tests** * Added integration smoke tests covering version checks, app creation, iOS build metadata, and slim SDK update behavior. * Added validation for locating Xcode and verifying the Swift toolchain. * **Chores** * Added automated integration-test execution for pushes and pull requests. * Added Docker and Compose support for running integration tests in a consistent environment. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
22 lines
500 B
Bash
22 lines
500 B
Bash
setup() {
|
|
bats_require_minimum_version 1.5.0
|
|
bats_load_library bats-support
|
|
bats_load_library bats-assert
|
|
}
|
|
|
|
@test "can run xtool" {
|
|
xtool --version
|
|
}
|
|
|
|
@test "can build a fresh app" {
|
|
xtool new --skip-setup MyApp
|
|
cd MyApp
|
|
xtool dev build
|
|
llvm-objdump -p ./xtool/MyApp.app/MyApp | grep "\bcmd LC_BUILD_VERSION\b" -a2 | grep "\bplatform ios\b"
|
|
}
|
|
|
|
@test "slim sdk cannot be updated" {
|
|
run ! xtool sdk update
|
|
assert_output --partial "cannot be updated in place"
|
|
}
|