【发布时间】:2020-03-18 07:19:48
【问题描述】:
我试图在我的单元测试中比较 swift Type 值,并注意到 XCTAssertEqual 无法编译,而与 == 比较可以正常编译。
XCTAssertEqual(MyStruct.self, MyStruct.self) --> 编译失败,出现错误“全局函数 'XCTAssertEqual(::_:file:line:)' 要求 'MyStruct.Type' 符合 'Equatable'”
XCTAssertTrue(MyStruct.self == MyStruct.self) --> 编译正常
我想了解这两个比较之间有什么区别。
【问题讨论】:
-
错误信息还不够清楚吗?
MyStruct.Type不符合Equatable,XCTAssertEqual要求其参数符合该协议。 -
@Sweeper 不应该 == 在这种情况下也会失败吗?
标签: ios swift xcode unit-testing equatable