     }
 
     func testMapManyWithModel() {
-        let sourceArray = Observable.just([1, 2, 3, 4])
+        // swiftlint:disable:next nesting
+        struct SomeModel: CustomStringConvertible {
+            let number: Int
+            var description: String { return "#\(number)" }
+
+            init(_ number: Int) {
+                self.number = number
+            }
+        }
+
+        let sourceArray = Observable.of(1...4)
 
         let observer = runAndObserve(sourceArray.mapMany(SomeModel.init))
         let correct = [

    }

    func testMapManyWithInts() {
        let sourceArray = Observable.just([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

        let observer = runAndObserve(sourceArray.mapMany { $0 + 1 })
        let correct = [

import RxSwift
import RxTest

class MapManyTests: XCTestCase {
    func runAndObserve<C: Collection>(_ sequence: Observable<C>) -> TestableObserver<C> {
        let scheduler = TestScheduler(initialClock: 0)
