in RIBsTests/Interactor/InteractorTests.swift [134:148]
func test_observableIsDisposedOnInteractorDeinit() {
// given
var onDisposeCalled = false
let subjectEmiitingValues: PublishSubject<Int> = .init()
let observable = subjectEmiitingValues.asObservable().do { _ in } onDispose: {
onDisposeCalled = true
}
interactor.activate()
observable.subscribe().disposeOnDeactivate(interactor: interactor)
XCTAssertFalse(onDisposeCalled)
// when
interactor = nil
// then
XCTAssertTrue(onDisposeCalled)
}