似乎不能在 Zig 的test
块内声明函数。对于如何处理test
块中专门使用的函数(即清理)是否有任何指导原则?
test "messy test that requires cleanup" {
createManyFiles();
defer deleteTestFiles(); // Used only for testing
expect(something);
}
似乎不能在 Zig 的test
块内声明函数。对于如何处理test
块中专门使用的函数(即清理)是否有任何指导原则?
test "messy test that requires cleanup" {
createManyFiles();
defer deleteTestFiles(); // Used only for testing
expect(something);
}
标准库将它们设为私有并将它们置于测试之上(示例)
Zig 仅编译使用的函数,因此您的常规构建中不会包含任何测试函数。
如果多个文件中需要测试函数,可以将它们公开或移动到自己的文件中。它们仍然不会包含在常规构建中,除非它们在测试之外使用。
从技术上讲,您可以通过在结构中嵌入函数来做到这一点。
最好尽可能避免这种情况。