authorgravatar for git@l4.pmLuna <git@l4.pm> 2020-04-09 22:13:36-03:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-06-02 14:56:06-04:00
logc7b790ded685cb3bcb17fe7a27de7ae054133250
tree6adf30041ad45bacca129f8c9d4e3afe2f511ebc
parent15efe03d1f967fe8fe3731ac16ac802256605d22

net.test: only call resolveIp6 when os is linux


1 files changed, 11 insertions(+), 8 deletions(-)

lib/std/net/test.zig+11-8
...@@ -32,13 +32,14 @@ test "parse and render IPv6 addresses" {...@@ -32,13 +32,14 @@ test "parse and render IPv6 addresses" {
32 };32 };
33 for (ips) |ip, i| {33 for (ips) |ip, i| {
34 var addr = net.Address.parseIp6(ip, 0) catch unreachable;34 var addr = net.Address.parseIp6(ip, 0) catch unreachable;
35 var addr_via_resolve = net.Address.resolveIp6(ip, 0) catch unreachable;
36
37 var newIp = std.fmt.bufPrint(buffer[0..], "{}", .{addr}) catch unreachable;35 var newIp = std.fmt.bufPrint(buffer[0..], "{}", .{addr}) catch unreachable;
38 var newResolvedIp = std.fmt.bufPrint(buffer[0..], "{}", .{addr_via_resolve}) catch unreachable;
39
40 std.testing.expect(std.mem.eql(u8, printed[i], newIp[1 .. newIp.len - 3]));36 std.testing.expect(std.mem.eql(u8, printed[i], newIp[1 .. newIp.len - 3]));
41 std.testing.expect(std.mem.eql(u8, printed[i], newResolvedIp[1 .. newResolvedIp.len - 3]));37
38 if (std.builtin.os.tag == .linux) {
39 var addr_via_resolve = net.Address.resolveIp6(ip, 0) catch unreachable;
40 var newResolvedIp = std.fmt.bufPrint(buffer[0..], "{}", .{addr_via_resolve}) catch unreachable;
41 std.testing.expect(std.mem.eql(u8, printed[i], newResolvedIp[1 .. newResolvedIp.len - 3]));
42 }
42 }43 }
4344
44 testing.expectError(error.InvalidCharacter, net.Address.parseIp6(":::", 0));45 testing.expectError(error.InvalidCharacter, net.Address.parseIp6(":::", 0));
...@@ -47,9 +48,11 @@ test "parse and render IPv6 addresses" {...@@ -47,9 +48,11 @@ test "parse and render IPv6 addresses" {
47 testing.expectError(error.InvalidEnd, net.Address.parseIp6("FF01:0:0:0:0:0:0:FB:", 0));48 testing.expectError(error.InvalidEnd, net.Address.parseIp6("FF01:0:0:0:0:0:0:FB:", 0));
48 testing.expectError(error.Incomplete, net.Address.parseIp6("FF01:", 0));49 testing.expectError(error.Incomplete, net.Address.parseIp6("FF01:", 0));
49 testing.expectError(error.InvalidIpv4Mapping, net.Address.parseIp6("::123.123.123.123", 0));50 testing.expectError(error.InvalidIpv4Mapping, net.Address.parseIp6("::123.123.123.123", 0));
50 testing.expectError(error.Incomplete, net.Address.resolveIp6("ff01::fb%", 0));51 if (std.builtin.os.tag == .linux) {
51 testing.expectError(error.Overflow, net.Address.resolveIp6("ff01::fb%wlp3s0s0s0s0s0s0s0s0", 0));52 testing.expectError(error.Incomplete, net.Address.resolveIp6("ff01::fb%", 0));
52 testing.expectError(error.Overflow, net.Address.resolveIp6("ff01::fb%12345678901234", 0));53 testing.expectError(error.Overflow, net.Address.resolveIp6("ff01::fb%wlp3s0s0s0s0s0s0s0s0", 0));
54 testing.expectError(error.Overflow, net.Address.resolveIp6("ff01::fb%12345678901234", 0));
55 }
53}56}
5457
55test "invalid but parseable IPv6 scope ids" {58test "invalid but parseable IPv6 scope ids" {