mirror of
https://github.com/ziglang/zig.git
synced 2025-12-26 16:13:07 +00:00
Previously, std.debug.assert would `@panic` in test builds, if the assertion failed. Now, it's always `unreachable`. This makes release mode test builds more accurately test the actual code that will be run. However this requires tests to call `std.testing.expect` rather than `std.debug.assert` to make sure output is correct. Here is the explanation of when to use either one, copied from the assert doc comments: Inside a test block, it is best to use the `std.testing` module rather than assert, because assert may not detect a test failure in ReleaseFast and ReleaseSafe mode. Outside of a test block, assert is the correct function to use. closes #1304
11 lines
187 B
Zig
11 lines
187 B
Zig
const std = @import("std");
|
|
const testing = std.testing;
|
|
|
|
export fn add(a: i32, b: i32) i32 {
|
|
return a + b;
|
|
}
|
|
|
|
test "basic add functionality" {
|
|
testing.expect(add(3, 7) == 10);
|
|
}
|