DoxigAlpha

expectApproxEqAbs

This function is intended to be used only in tests. When the actual value is not approximately equal to the expected value, prints diagnostics to stderr to show exactly how they are not equal, then returns a test failure error. See math.approxEqAbs for more information on the tolerance parameter. The types must be floating-point. actual and expected are coerced to a common type using peer type resolution.

Function parameters

Parameters

#
expected:anytype
actual:anytype
tolerance:anytype

Type definitions in this namespace

Types

#
Reader
A `std.Io.Reader` that writes a predetermined list of buffers during `stream`.
ReaderIndirect
A `std.Io.Reader` that gets its data from another `std.Io.Reader`, and always

This function is intended to be used only in tests.

Functions

#
expectError
This function is intended to be used only in tests.
expectEqual
This function is intended to be used only in tests.
expectFmt
This function is intended to be used only in tests.
expectApproxEqAbs
This function is intended to be used only in tests.
expectApproxEqRel
This function is intended to be used only in tests.
expectEqualSlices
This function is intended to be used only in tests.
expectEqualSentinel
This function is intended to be used only in tests.
expect
This function is intended to be used only in tests.
expectEqualDeep
This function is intended to be used only in tests.
checkAllAllocationFailures
Exhaustively check that allocation failures within `test_fn` are handled without
refAllDecls
Given a type, references all the declarations inside, so that the semantic analyzer sees them.
refAllDeclsRecursive
Given a type, recursively references all the declarations inside, so that the semantic analyzer sees them.
fuzz
Inline to avoid coverage instrumentation.

Provides deterministic randomness in unit tests.

Values

#
random_seed
Provides deterministic randomness in unit tests.
failing_allocator
= failing_allocator_instance.allocator()
allocator
This should only be used in temporary test programs.
log_level
TODO https://github.com/ziglang/zig/issues/5738
backend_can_print
= switch (builtin.zig_backend) { .stage2_aarch64, .stage2_powerpc, .stage2_riscv64, .stage2_spirv, => false, else => true, }

Source

Implementation

#
pub inline fn expectApproxEqAbs(expected: anytype, actual: anytype, tolerance: anytype) !void {
    const T = @TypeOf(expected, actual, tolerance);
    return expectApproxEqAbsInner(T, expected, actual, tolerance);
}