Files
Kabir Oberai 5eeab11aae tests: add integration tests (#252)
## 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 -->
2026-09-18 23:26:10 -04:00

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"
}