Skip to content

Instantly share code, notes, and snippets.

@yfujiki
Last active January 25, 2021 09:53
Show Gist options
  • Save yfujiki/dad9b0a06422593c2f25e61731e840a5 to your computer and use it in GitHub Desktop.
Save yfujiki/dad9b0a06422593c2f25e61731e840a5 to your computer and use it in GitHub Desktop.
ViewModelTests for PhantomMockObject Project --- Fail
class ViewModelTests: XCTestCase {
var sut: ViewModel!
var logger: MockLoggerProtocol!
override func setUpWithError() throws {
}
override func tearDownWithError() throws {
}
func testAInit() {
// Given:
logger = MockLoggerProtocol()
// When:
sut = ViewModel(logger: logger)
// Then:
XCTAssertTrue(true, "Passed")
}
func testAppDidBecomeActive() {
// Given:
logger = MockLoggerProtocol()
sut = ViewModel(logger: logger)
Cuckoo.stub(logger) { stub in
when(stub.logAppIsActive()).thenDoNothing()
}
// When:
NotificationCenter.default.post(name: UIApplication.didBecomeActiveNotification, object: self)
// Then:
verify(logger, times(1)).logAppIsActive()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment