swift-testing icon indicating copy to clipboard operation
swift-testing copied to clipboard

[WIP] Serialization traits for data dependencies

Open grynspan opened this issue 7 months ago • 8 comments

Experimental .serialized(for:) trait. Example use cases:

import Foundation

@Test(.serialized(for: ProcessInfo.self))
func `HAS_FREEZER environment variable`() {
  _ = setenv("HAS_FREEZER", "1", 1)
  #expect(FoodTruck.hasFreezer)
  _ = setenv("HAS_FREEZER", "0", 1)
  #expect(!FoodTruck.hasFreezer)
}

@Test(.serialized(for: *))
func `Uses lots of different state, seriously, just scads of it`() { ... }

Name subject to extreme bikeshedding!

Resolves rdar://135288463.

Checklist:

  • [x] Code and documentation should follow the style of the Style Guide.
  • [x] If public symbols are renamed or modified, DocC references should be updated.

grynspan avatar Jul 21 '25 19:07 grynspan

@swift-ci test

grynspan avatar Jul 21 '25 19:07 grynspan

@swift-ci test

grynspan avatar Jul 21 '25 20:07 grynspan

@swift-ci test

grynspan avatar Jul 21 '25 20:07 grynspan

@swift-ci test

grynspan avatar Jul 21 '25 22:07 grynspan

@swift-ci test

grynspan avatar Jul 22 '25 19:07 grynspan

@swift-ci test

grynspan avatar Jul 22 '25 19:07 grynspan

@swift-ci test

grynspan avatar Jul 22 '25 21:07 grynspan

@swift-ci test

grynspan avatar Jul 24 '25 15:07 grynspan