From 974686b6bcd5bbef8974b07fc90e876a483a844e Mon Sep 17 00:00:00 2001 From: Stefan Ceriu Date: Wed, 27 Mar 2024 15:26:34 +0200 Subject: [PATCH] Fix RoomDetailsEditScreen snapshot rendering issues by switching their order. The root problems seems to be async related but we couldn't get to the bottom of it. Take this opportunity to refactor the snapshots. --- .../View/RoomDetailsEditScreen.swift | 31 +++++++++++-------- ...DetailsEditScreen-iPad-en-GB.Editable.png} | 0 ...etailsEditScreen-iPad-pseudo.Editable.png} | 0 ...ilsEditScreen-iPhone-15-en-GB.Editable.png | 3 ++ ...tailsEditScreen-iPhone-15-en-GB.Normal.png | 3 -- ...sEditScreen-iPhone-15-pseudo.Editable.png} | 0 6 files changed, 21 insertions(+), 16 deletions(-) rename PreviewTests/__Snapshots__/PreviewTests/{test_roomDetailsEditScreen-iPad-en-GB.Normal.png => test_roomDetailsEditScreen-iPad-en-GB.Editable.png} (100%) rename PreviewTests/__Snapshots__/PreviewTests/{test_roomDetailsEditScreen-iPad-pseudo.Normal.png => test_roomDetailsEditScreen-iPad-pseudo.Editable.png} (100%) create mode 100644 PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-en-GB.Editable.png delete mode 100644 PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-en-GB.Normal.png rename PreviewTests/__Snapshots__/PreviewTests/{test_roomDetailsEditScreen-iPhone-15-pseudo.Normal.png => test_roomDetailsEditScreen-iPhone-15-pseudo.Editable.png} (100%) diff --git a/ElementX/Sources/Screens/RoomDetailsEditScreen/View/RoomDetailsEditScreen.swift b/ElementX/Sources/Screens/RoomDetailsEditScreen/View/RoomDetailsEditScreen.swift index 4d8bf4f18d..fffd2bc57c 100644 --- a/ElementX/Sources/Screens/RoomDetailsEditScreen/View/RoomDetailsEditScreen.swift +++ b/ElementX/Sources/Screens/RoomDetailsEditScreen/View/RoomDetailsEditScreen.swift @@ -156,32 +156,37 @@ struct RoomDetailsEditScreen: View { // MARK: - Previews struct RoomDetailsEditScreen_Previews: PreviewProvider, TestablePreview { - static let viewModel = RoomDetailsEditScreenViewModel(roomProxy: RoomProxyMock(with: .init(id: "test_id", - name: "Room", - members: [.mockMeAdmin])), - mediaProvider: MockMediaProvider(), - userIndicatorController: UserIndicatorControllerMock.default) + static let editableViewModel = { + let roomProxy = RoomProxyMock(with: .init(id: "test_id", + name: "Room", + members: [.mockMeAdmin])) + + return RoomDetailsEditScreenViewModel(roomProxy: roomProxy, + mediaProvider: MockMediaProvider(), + userIndicatorController: UserIndicatorControllerMock.default) + }() static let readOnlyViewModel = { - let accountOwner = RoomMemberProxyMock.mockMe - return RoomDetailsEditScreenViewModel(roomProxy: RoomProxyMock(with: .init(id: "test_id", - name: "Room", - members: [.mockMe])), + let roomProxy = RoomProxyMock(with: .init(id: "test_id", + name: "Room", + members: [.mockAlice])) + + return RoomDetailsEditScreenViewModel(roomProxy: roomProxy, mediaProvider: MockMediaProvider(), userIndicatorController: UserIndicatorControllerMock.default) }() static var previews: some View { NavigationStack { - RoomDetailsEditScreen(context: viewModel.context) + RoomDetailsEditScreen(context: readOnlyViewModel.context) } - .previewDisplayName("Normal") + .previewDisplayName("Read only") .snapshot(delay: 0.25) NavigationStack { - RoomDetailsEditScreen(context: readOnlyViewModel.context) + RoomDetailsEditScreen(context: editableViewModel.context) } - .previewDisplayName("Read only") + .previewDisplayName("Editable") .snapshot(delay: 0.25) } } diff --git a/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPad-en-GB.Normal.png b/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPad-en-GB.Editable.png similarity index 100% rename from PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPad-en-GB.Normal.png rename to PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPad-en-GB.Editable.png diff --git a/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPad-pseudo.Normal.png b/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPad-pseudo.Editable.png similarity index 100% rename from PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPad-pseudo.Normal.png rename to PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPad-pseudo.Editable.png diff --git a/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-en-GB.Editable.png b/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-en-GB.Editable.png new file mode 100644 index 0000000000..9ae733b22f --- /dev/null +++ b/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-en-GB.Editable.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebc6b817dfa1d00ea2df807000b31ac6dde10b217ca993870ca35676fbd7f892 +size 68317 diff --git a/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-en-GB.Normal.png b/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-en-GB.Normal.png deleted file mode 100644 index 3b0b73abb6..0000000000 --- a/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-en-GB.Normal.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c98a2f1252910cfa40e0463e4682aab8ae3f095dce8b71d98027000a6ae81430 -size 66827 diff --git a/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-pseudo.Normal.png b/PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-pseudo.Editable.png similarity index 100% rename from PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-pseudo.Normal.png rename to PreviewTests/__Snapshots__/PreviewTests/test_roomDetailsEditScreen-iPhone-15-pseudo.Editable.png