Inspired to try this based on @twostraws’s recent post on Swift Testing.
So much is wrong in this screenshot.
Inspired to try this based on @twostraws’s recent post on Swift Testing.
So much is wrong in this screenshot.
I'm writing my first self-published book — more details next week. It's a topic I presented for @joshdholtz at @deepdishswift. Part 1 covers Swift Testing, and Part 2 introduces my new open source framework. The sample app is an airline ticketing app backed by a real-time shared API that randomizes every week — simulated flight statuses, dynamic seat availability, 20 cities (10 domestic, 10 international).
Interop between XCTest and Swift Testing? In the economy? It's more likely than you think.
Legitimately, I'm really excited for this. This'll enable much more consistent set of tooling that can easily be used in Swift Testing and in XCTest. It'll also make migrating from XCTest to Swift Testing much more simpler and much safer.
Go leave feedback at https://forums.swift.org/t/st-0021-targeted-interoperability-between-swift-testing-and-xctest/84965

Hello Swift Community! The review of ST-0021 "Targeted Interoperability between Swift Testing and XCTest" starts now and runs through Tuesday, March 10th, 2026. The proposal is available here: swift-evolution/proposals/testing/0021-targeted-interoperability-swift-testing-and-xctest.md at main · swiftlang/swift-evolution · GitHub Reviews are an important part of the Swift evolution process. All review feedback should be either on this forum thread or, if you would like to keep your feedback pri...
SwiftTesting is becoming the de-facto standard framework for testing across Apple's ecosystem. Here's how to integrate it into your agentic coding workflows for high-quality test generation.
🔗: https://www.avanderlee.com/ai-development/swift-testing-agent-skill-write-high-quality-tests-with-ai/ by Antoine van der Lee (@swiftlee)
Testing various permutations. I'm so glad I built the app in a way that this stuff doesn't need loading the GUI. I just have to go and look at all the outputted PDFs to sanity check them.
#iosdev #buildInPublic #coredata #swiftTesting
Swift Testing error messages can be annoyingly obscure - “cannot convert value of type 'nonisolated(nonsending) @Sendable (String, String) async throws -> Void' to expected argument type '@Sendable (String.Element, String.Element) async throws -> Void' (aka '@Sendable (Character, Character) async throws -> ()”
in other words: I forgot my testing macro arguments “abc”,”def" need to be arrays [“abc”],[”def”].
31/n
#iosdev #buildInPublic #coredata #swiftTesting #irishmusic
Just a little done these last couple days. Put together (and pushed) a few more unit tests for core data testing. Concentrating on the ordered many:many since that's what I need to test.
30/n
My solution uses a combination of macOS accessibility APIs and CGEvents directly (not keyDown), the former of which understands the whereabouts of the simulator, the latter for how to find the center of the viewport, set up a two-finger gesture by spawning at the center, option-dragging to a specified input distance, option-shift-dragging to a specified coordinate, then performing one or more gestures therein.
There has to be a better way!?
#iosdev #buildInPublic #coredata #swiftTesting
Random thoughts for future development:
Object identity is not straightforward.
If I change a collection name on device A, the change should propagate to device B.
Should two collections with the same name on different devices but with different members be merged? I think the principle of least surprise would argue that they should.
OTOH, two tunes with the same name but different melodies should be distinct (common in #irishmusic)
29/n
#iosdev #buildInPublic #coredata #swiftTesting
Not much time to do stuff over the last little while - refactored the unit tests to parameterize them and added some helper functions, added a runtime flag to choose a real file for the SQLite backing store vs. /dev/null
Changes are in GitHub if anybody is interested https://github.com/Wil-Macaulay/attributedRelationships
28/n