Retrofit deferFulfillment onto snapshot tests. (#3641)

* Retrofit `deferFulfillment` onto snapshot tests.

* Convert a bunch of preview tests to the new fulfillment publisher

* Convert more tests

* Remove unneeded delays from the remaining tests

* Remove snapshotting delay option.
This commit is contained in:
Stefan Ceriu
2024-12-20 15:30:59 +02:00
committed by GitHub
parent 365797c8b7
commit 536f01abbd
49 changed files with 606 additions and 532 deletions
@@ -139,17 +139,28 @@ struct RoomMemberDetailsScreen_Previews: PreviewProvider, TestablePreview {
static var previews: some View {
RoomMemberDetailsScreen(context: verifiedUserViewModel.context)
.snapshotPreferences(expect: verifiedUserViewModel.context.$viewState.map { state in
state.isVerified == true
})
.previewDisplayName("Verified User")
.snapshotPreferences(delay: 0.25)
RoomMemberDetailsScreen(context: otherUserViewModel.context)
.snapshotPreferences(expect: otherUserViewModel.context.$viewState.map { state in
state.memberDetails?.role == .user
})
.previewDisplayName("Other User")
.snapshotPreferences(delay: 0.25)
RoomMemberDetailsScreen(context: accountOwnerViewModel.context)
.snapshotPreferences(expect: accountOwnerViewModel.context.$viewState.map { state in
state.isOwnMemberDetails == true
})
.previewDisplayName("Account Owner")
.snapshotPreferences(delay: 0.25)
RoomMemberDetailsScreen(context: ignoredUserViewModel.context)
.snapshotPreferences(expect: ignoredUserViewModel.context.$viewState.map { state in
state.memberDetails?.isIgnored ?? false
})
.previewDisplayName("Ignored User")
.snapshotPreferences(delay: 0.25)
}
static func makeViewModel(member: RoomMemberProxyMock) -> RoomMemberDetailsScreenViewModel {