## nim-ws ## Copyright (c) 2021-2023 Status Research & Development GmbH ## Licensed under either of ## * Apache License, version 2.0, ([LICENSE-APACHE](LICENSE-APACHE)) ## * MIT license ([LICENSE-MIT](LICENSE-MIT)) ## at your option. ## This file may not be copied, modified, or distributed except according to ## those terms. import unittest2 export unittest2 except suite, test template suite*(name, body) = suite name: template setup(setupBody) {.used.} = setup: let asyncproc = proc {.async.} = setupBody waitFor asyncproc() template teardown(teardownBody) {.used.} = teardown: let asyncproc = proc {.async.} = teardownBody waitFor asyncproc() let suiteproc = proc = body # Avoids GcUnsafe2 warnings with chronos suiteproc() template test*(name, body) = test name: let asyncproc = proc {.async.} = body waitFor asyncproc()