Framework for automatic mock generation. Adds a set of handy methods, simplifying testing. One of the best and most complete solutions, including generics support and much more.
MIT License
1.03k
stars
104
forks
source link
Mocked return value is different for different cases #358
Hi!
Not really sure if this is an issue. I guess I miss smth internal of swiftymoky.
I have protocol:
// this is from object
public protocol MailAddressProtocol: AutoMockable {
var mailbox: String? { get }
var displayName: String? { get }
}
public extension MailAddressProtocol {
var title: String? {
guard let displayName = self.displayName else {
return mailbox
}
return displayName
}
}
I set property title of mock object from, so it returns string "test title"
I set property fromof mock object header, so it returns object from
And I expect that from.title equals to header.from!.title.
let from = MailAddressProtocolMock()
from.given(.title(getter: "Test title"))
header.given(.from(getter: from))
var t = from.title // test title
var h = header.from!.title // nil
However, my expectation is failed. from.title returns "test title" and header.from!.title returns nil
When I call from.title it returns given value and when I call header.from!.title it returns value from title of extension MailAddressProtocol.
I can't understand why does the same object from have different behavior.
Hi! Not really sure if this is an issue. I guess I miss smth internal of swiftymoky. I have protocol:
title
of mock objectfrom
, so it returns string "test title"from
of mock objectheader
, so it returns objectfrom
However, my expectation is failed.
from.title
returns "test title" andheader.from!.title
returnsnil
When I call
from.title
it returnsgiven
value and when I callheader.from!.title
it returns value fromtitle
ofextension MailAddressProtocol
. I can't understand why does the same objectfrom
have different behavior.