philips-software/cogito

View on GitHub
workspaces/cogito-ios-app/CogitoTests/Telepath/TelepathChannelSpy.swift

Summary

Maintainability
A
0 mins
Test Coverage
import Foundation
@testable import Cogito

class TelepathChannelSpy: TelepathChannel {
    var receiveMessage: String?
    var receiveError: Error?
    var sentMessage: String?
    var sendError: Error?

    convenience init(id: String = "1234") {
        let url = URL(string: "http://example.com/telepath/connect#I=\(id)&E=abcd&A=QQ")!
        self.init(connectUrl: url,
                  telepath: TelepathMock())
    }

    override func receive(completion: @escaping (String?, Error?) -> Void) {
        completion(receiveMessage, receiveError)
    }

    override func send(message: String, completion: @escaping (Error?) -> Void) {
        sentMessage = message
        completion(sendError)
    }
}