AsyncExtensions

AsyncExtensions 目标是一个不断增长的实用函数和类的集合,它们利用了 Swift 的新并发特性

AsyncExtensions 包还包括 AsyncTestExtensions 目标,其中包含围绕 XCTest 断言的异步友好型包装器。

AsyncExtensions 包括

AsyncTestExtensions 包括

安装

要使用 AsyncExtensions,请将依赖项添加到您的 Package.swift 文件中

let package = Package(
  dependencies: [
    .package(
      url: "https://github.com/shareup/async-extensions.git",
      from: "4.3.0"
    )
  ]
)

要在测试目标中使用 AsyncTestExtensions,请将其添加为依赖项

.testTarget(
  name: "MyTests",
  dependencies: [
    .product(name: "AsyncTestExtensions", package: "async-extensions")
  ]
)

许可证

AsyncExtensions 的许可证是标准的 MIT 许可证。您可以在 LICENSE 文件中找到它。

SequenceExtensions 在很大程度上受到了 John Sundell 在 https://github.com/JohnSundell/CollectionConcurrencyKit 处的 CollectionConcurrencyKit 的启发。

主要的串行执行器 XCTestCase 扩展取自 Point-Free 在 https://github.com/pointfreeco/swift-concurrency-extras 处的 swift-concurrency-extras。