1234567891011121314151617181920212223242526272829303132333435363738394041 |
- //
- // SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
- // SPDX-License-Identifier: GPL-3.0-or-later
- //
- import XCTest
- import Foundation
- @testable import NextcloudTalk
- extension XCTestCase {
- // TODO: This should probably be part of APIController
- func getRoomDict(from rawRoomDict: [Any]) -> [NCRoom] {
- var rooms: [NCRoom] = []
- for roomDict in rawRoomDict {
- if let roomDict = roomDict as? [AnyHashable: Any] {
- rooms.append(NCRoom(dictionary: roomDict))
- }
- }
- return rooms
- }
- func checkRoomExists(roomName: String, withAccount account: TalkAccount, completion: ((NCRoom?) -> Void)? = nil) {
- let exp = expectation(description: "\(#function)\(#line)")
- NCAPIController.sharedInstance().getRooms(forAccount: account, updateStatus: false, modifiedSince: 0) { roomsDict, error in
- XCTAssertNil(error)
- let rooms = self.getRoomDict(from: roomsDict!)
- let room = rooms.first(where: { $0.displayName == roomName })
- XCTAssertNotNil(room)
- completion?(room)
- exp.fulfill()
- }
- waitForExpectations(timeout: TestConstants.timeoutLong, handler: nil)
- }
- }
|