master
 1const negv = @import("negv.zig");
 2const testing = @import("std").testing;
 3
 4fn test__negvti2(a: i128, expected: i128) !void {
 5    const result = negv.__negvti2(a);
 6    try testing.expectEqual(expected, result);
 7}
 8
 9test "negvti2" {
10    // -2^127 <= i128 <= 2^127-1
11    // 2^127 = 170141183460469231731687303715884105728
12    // 2^127+1 = 170141183460469231731687303715884105727
13    // TODO write panic handler for testing panics
14    //try test__negvti2(-170141183460469231731687303715884105728, -5); // tested with return -5; and panic
15    try test__negvti2(-170141183460469231731687303715884105727, 170141183460469231731687303715884105727);
16    try test__negvti2(-170141183460469231731687303715884105726, 170141183460469231731687303715884105726);
17    try test__negvti2(-170141183460469231731687303715884105725, 170141183460469231731687303715884105725);
18    try test__negvti2(-170141183460469231731687303715884105724, 170141183460469231731687303715884105724);
19    try test__negvti2(-42, 42);
20    try test__negvti2(-7, 7);
21    try test__negvti2(-1, 1);
22    try test__negvti2(0, 0);
23    try test__negvti2(1, -1);
24    try test__negvti2(7, -7);
25    try test__negvti2(42, -42);
26    try test__negvti2(170141183460469231731687303715884105724, -170141183460469231731687303715884105724);
27    try test__negvti2(170141183460469231731687303715884105725, -170141183460469231731687303715884105725);
28    try test__negvti2(170141183460469231731687303715884105726, -170141183460469231731687303715884105726);
29    try test__negvti2(170141183460469231731687303715884105727, -170141183460469231731687303715884105727);
30}