ATProto Browser

ATProto Browser

Experimental browser for the Atmosphere

Post

Tonight was a lesson in SwiftUI life cycles. I’ve been refactoring into MVVM so I can test it & I added an async call in the view model init() using Task Swift Testing doesn’t have a wait for value function to control test flow so had to split out to use in onAppear and call & await in test

Mar 19, 2025, 2:49 AM

Record data

{
  "uri": "at://did:plc:d4o2svnvrxd3db33rx6xw432/app.bsky.feed.post/3lkp6cgn7qc2u",
  "cid": "bafyreiccuebd5qd36tdjlzbpcl56hsdbawv3cwdwt4rghippbs2m2s5goe",
  "value": {
    "text": "Tonight was a lesson in SwiftUI life cycles. I’ve been refactoring into MVVM so I can test it & I added an async call in the view model init() using Task\n\nSwift Testing doesn’t have a wait for value function to control test flow so had to split out to use in onAppear and call & await in test",
    "$type": "app.bsky.feed.post",
    "langs": [
      "en"
    ],
    "createdAt": "2025-03-19T02:49:09.517Z"
  }
}