如何创建带有底层错误的 NSError 对象?

问题描述 投票:0回答:1

出于单元测试的目的,我需要能够创建一个

NSError
对象,并将
underlyingErrors
属性设置为某个错误。

swift nserror
1个回答
0
投票

我知道怎么做了。初始化 NSError 时必须使用

userInfo
字段。下面是一个示例,当您尝试删除不存在的文件时,FileManager 通常会抛出一个错误:

func createFilesystemError() -> NSError {
  let underlyingNSError = NSError(domain: "NSPOSIXErrorDomain", code: 2)
  let userInfo = [NSUnderlyingErrorKey: underlyingNSError]
  return NSError(domain: "NSCocoaErrorDomain", code: 4, userInfo: userInfo)
}

© www.soinside.com 2019 - 2024. All rights reserved.