Skip to content

Add missing autocomplete test coverage#90

Merged
FuJacob merged 1 commit into
mainfrom
FuJacob/add-missing-tests
May 1, 2026
Merged

Add missing autocomplete test coverage#90
FuJacob merged 1 commit into
mainfrom
FuJacob/add-missing-tests

Conversation

@FuJacob

@FuJacob FuJacob commented May 1, 2026

Copy link
Copy Markdown
Owner

Summary

Adds broad unit coverage for Tabby's autocomplete support logic so request construction, prompt policy, normalization, reconciliation, focus capability scoring, overlay presentation, and async work cancellation are protected by tests. Also tightens ghost-text color hex parsing after the new value-model tests exposed that malformed strings could be accepted too loosely.

Validation

xcodebuild -project tabby.xcodeproj -scheme tabby -destination 'platform=macOS' build
# ** BUILD SUCCEEDED **

xcodebuild -project tabby.xcodeproj -scheme tabby -destination 'platform=macOS' build-for-testing
# ** TEST BUILD SUCCEEDED **

xcodebuild -project tabby.xcodeproj -scheme tabby -destination 'platform=macOS' -derivedDataPath .context/DerivedData test CODE_SIGNING_ALLOWED=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY=-
# ** TEST SUCCEEDED **; 149 tests, 0 failures

I also ran the normal signed xcodebuild test; it still fails before executing tests because the app-hosted test bundle and host app have different Team IDs locally: mapping process and mapped file (non-platform) have different Team IDs.

Linked issues

None.

Risk / rollout notes

Most of this PR is test-only. The only runtime behavior change is stricter six-digit RGB validation in SuggestionTextColorCodec.nsColor(fromHex:), which rejects malformed persisted or user-provided color strings instead of partially scanning them.

@FuJacob FuJacob merged commit 9943f5c into main May 1, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant