Antidote/AntidoteTests/FriendListDataSourceTest.swift
2024-02-22 21:43:11 +02:00

160 lines
6.1 KiB
Swift

// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
import XCTest
class FriendListDataSourceTest: XCTestCase {
override func setUp() {
super.setUp()
// Put setup code here. This method is called before the invocation of each test method in the class.
}
override func tearDown() {
// Put teardown code here. This method is called after the invocation of each test method in the class.
super.tearDown()
}
// Antidote/objcTox should be refactored to protocol oriented architecture, then testing will become possible :-)
// func testPerformFetch() {
// let requests = MockedFetchedResultsController(objects: [[]])
// let friends = MockedFetchedResultsController(objects: [[]])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// // calling some method requiring both requests and friends controller
// _ = dataSource.numberOfSections()
// XCTAssertTrue(requests.didPerformFetch)
// XCTAssertTrue(friends.didPerformFetch)
// }
// func testReset() {
// let requests = MockedFetchedResultsController(objects: [[]])
// let friends = MockedFetchedResultsController(objects: [[]])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// dataSource.reset()
// XCTAssertTrue(requests.didReset)
// XCTAssertTrue(friends.didReset)
// }
// func testNumberOfSections_NoRequests_NoFriends() {
// let requests = MockedFetchedResultsController(objects: [[]])
// let friends = MockedFetchedResultsController(objects: [[]])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfSections(), 1)
// }
// func testNumberOfSections_NoRequests_OneFriendSection() {
// let requests = MockedFetchedResultsController(objects: [[]])
// let friends = MockedFetchedResultsController(objects: [[ NSObject() ]])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfSections(), 1)
// }
// func testNumberOfSections_NoRequests_MultipleFriendSection() {
// let requests = MockedFetchedResultsController(objects: [[]])
// let friends = MockedFetchedResultsController(objects: [
// [NSObject()],
// [NSObject()],
// [NSObject()],
// ])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfSections(), 3)
// }
// func testNumberOfSections_OneRequest_NoFriends() {
// let requests = MockedFetchedResultsController(objects: [[ NSObject() ]])
// let friends = MockedFetchedResultsController(objects: [[]])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfSections(), 2)
// }
// func testNumberOfSections_MultipleRequest_NoFriends() {
// let requests = MockedFetchedResultsController(objects: [[
// NSObject(),
// NSObject(),
// NSObject(),
// ]])
// let friends = MockedFetchedResultsController(objects: [[]])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfSections(), 2)
// }
// func testNumberOfSections_MultipleRequest_MultipleFriends() {
// let requests = MockedFetchedResultsController(objects: [[
// NSObject(),
// NSObject(),
// NSObject(),
// ]])
// let friends = MockedFetchedResultsController(objects: [
// [NSObject()],
// [NSObject()],
// [NSObject()],
// ])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfSections(), 4)
// }
// func testNumberOfRows_Empty() {
// let requests = MockedFetchedResultsController(objects: [[]])
// let friends = MockedFetchedResultsController(objects: [[]])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfRowsInSection(0), 0)
// }
// func testNumberOfRows_NoRequest_Friends() {
// let requests = MockedFetchedResultsController(objects: [[]])
// let friends = MockedFetchedResultsController(objects: [
// [NSObject()],
// [NSObject(), NSObject()],
// [NSObject(), NSObject(), NSObject()],
// ])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfRowsInSection(0), 1)
// XCTAssertEqual(dataSource.numberOfRowsInSection(1), 2)
// XCTAssertEqual(dataSource.numberOfRowsInSection(2), 3)
// }
// func testNumberOfRows_Requests_Friends() {
// let requests = MockedFetchedResultsController(objects: [[
// NSObject(),
// NSObject(),
// NSObject(),
// NSObject(),
// ]])
// let friends = MockedFetchedResultsController(objects: [
// [NSObject()],
// [NSObject(), NSObject()],
// [NSObject(), NSObject(), NSObject()],
// ])
// let dataSource = FriendListDataSource(requestsController: requests, friendsController: friends)
// XCTAssertEqual(dataSource.numberOfRowsInSection(0), 4)
// XCTAssertEqual(dataSource.numberOfRowsInSection(1), 1)
// XCTAssertEqual(dataSource.numberOfRowsInSection(2), 2)
// XCTAssertEqual(dataSource.numberOfRowsInSection(3), 3)
// }
}