From 37ee5c9c7ed4f3ac49cac5cce4ae8fd8b91cf38c Mon Sep 17 00:00:00 2001 From: Stefan Ceriu Date: Mon, 2 Feb 2026 10:00:08 +0200 Subject: [PATCH] Fix a couple of warnings --- ElementX/Sources/Other/HTMLParsing/HTMLFixtures.swift | 6 +++++- .../ComposerToolbar/View/CompletionSuggestionView.swift | 6 +----- UnitTests/Sources/ComposerToolbarViewModelTests.swift | 1 - UnitTests/Sources/SpaceAddRoomsScreenViewModelTests.swift | 4 ++-- UnitTests/Sources/TimelineViewModelTests.swift | 2 -- 5 files changed, 8 insertions(+), 11 deletions(-) diff --git a/ElementX/Sources/Other/HTMLParsing/HTMLFixtures.swift b/ElementX/Sources/Other/HTMLParsing/HTMLFixtures.swift index 32d78d8cd..e107556d3 100644 --- a/ElementX/Sources/Other/HTMLParsing/HTMLFixtures.swift +++ b/ElementX/Sources/Other/HTMLParsing/HTMLFixtures.swift @@ -99,7 +99,11 @@ enum HTMLFixtures: String, CaseIterable { """ case .wideCodeBlock: """ -
CHHapticPattern.mm:487   +[CHHapticPattern patternForKey:error:]: Failed to read pattern library data: Error Domain=NSCocoaErrorDomain Code=260 "The file “hapticpatternlibrary.plist” couldn’t be opened because there is no such file." UserInfo={NSFilePath=/Library/Audio/Tunings/Generic/Haptics/Library/hapticpatternlibrary.plist, NSURL=file:///Library/Audio/Tunings/Generic/Haptics/Library/hapticpatternlibrary.plist, NSUnderlyingError=0x600000da69d0 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}
+
CHHapticPattern.mm:487   +[CHHapticPattern patternForKey:error:]: Failed to read pattern library data: Error Domain=NSCocoaErrorDomain Code=260 \
+            "The file “hapticpatternlibrary.plist” couldn’t be opened because there is no such file." \
+            UserInfo={NSFilePath=/Library/Audio/Tunings/Generic/Haptics/Library/hapticpatternlibrary.plist, \
+            NSURL=file:///Library/Audio/Tunings/Generic/Haptics/Library/hapticpatternlibrary.plist, \
+            NSUnderlyingError=0x600000da69d0 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}
""" case .unorderedList: """ diff --git a/ElementX/Sources/Screens/RoomScreen/ComposerToolbar/View/CompletionSuggestionView.swift b/ElementX/Sources/Screens/RoomScreen/ComposerToolbar/View/CompletionSuggestionView.swift index 936549db1..4afa789bd 100644 --- a/ElementX/Sources/Screens/RoomScreen/ComposerToolbar/View/CompletionSuggestionView.swift +++ b/ElementX/Sources/Screens/RoomScreen/ComposerToolbar/View/CompletionSuggestionView.swift @@ -86,14 +86,10 @@ struct CompletionSuggestionView: View { } private struct BackgroundView: View { - var content: () -> Content + @ViewBuilder var content: () -> Content private let shadowRadius: CGFloat = 20.0 - init(@ViewBuilder content: @escaping () -> Content) { - self.content = content - } - var body: some View { content() .background(Color.compound.bgSubtlePrimary) diff --git a/UnitTests/Sources/ComposerToolbarViewModelTests.swift b/UnitTests/Sources/ComposerToolbarViewModelTests.swift index 51ffbc541..5a28c49e0 100644 --- a/UnitTests/Sources/ComposerToolbarViewModelTests.swift +++ b/UnitTests/Sources/ComposerToolbarViewModelTests.swift @@ -148,7 +148,6 @@ class ComposerToolbarViewModelTests: XCTestCase { viewModel.context.send(viewAction: .selectedSuggestion(suggestion)) var string = "@room" - // swiftlint:disable:next force_unwrapping try string.unicodeScalars.append(XCTUnwrap(UnicodeScalar(String.nbsp))) XCTAssertEqual(wysiwygViewModel.content.html, string) } diff --git a/UnitTests/Sources/SpaceAddRoomsScreenViewModelTests.swift b/UnitTests/Sources/SpaceAddRoomsScreenViewModelTests.swift index 2aa2afe6a..15d0f429b 100644 --- a/UnitTests/Sources/SpaceAddRoomsScreenViewModelTests.swift +++ b/UnitTests/Sources/SpaceAddRoomsScreenViewModelTests.swift @@ -86,9 +86,9 @@ class SpaceAddRoomsScreenViewModelTests: XCTestCase { // Then the screen should be updated to only show the rooms that still need to be added. XCTAssertEqual(spaceServiceProxy.addChildToCallsCount, 3, "The remaining calls to the service should stop after a failure.") - XCTAssertFalse(context.viewState.selectedRooms.contains(where: { successfulIDs.contains($0.id) }), + XCTAssertFalse(context.viewState.selectedRooms.contains { successfulIDs.contains($0.id) }, "The added rooms should no longer show as selected.") - XCTAssertFalse(context.viewState.roomsSection.rooms.contains(where: { successfulIDs.contains($0.id) }), + XCTAssertFalse(context.viewState.roomsSection.rooms.contains { successfulIDs.contains($0.id) }, "The added rooms should no longer be listed for selection.") } diff --git a/UnitTests/Sources/TimelineViewModelTests.swift b/UnitTests/Sources/TimelineViewModelTests.swift index bbadcc2ae..da3f7f6ac 100644 --- a/UnitTests/Sources/TimelineViewModelTests.swift +++ b/UnitTests/Sources/TimelineViewModelTests.swift @@ -238,7 +238,6 @@ class TimelineViewModelTests: XCTestCase { // MARK: - Read Receipts - // swiftlint:disable force_unwrapping func testSendReadReceipt() async throws { // Given a room with only text items in the timeline let items = [TextRoomTimelineItem(eventID: "t1"), @@ -284,7 +283,6 @@ class TimelineViewModelTests: XCTestCase { try await Task.sleep(for: .milliseconds(100)) } - // swiftlint:enable force_unwrapping // swiftlint:disable:next large_tuple private func readReceiptsConfiguration(with items: [RoomTimelineItemProtocol]) -> (TimelineViewModel, JoinedRoomProxyMock,