summaryrefslogtreecommitdiff
path: root/lib/std/test/netaddr.myr
blob: 1d6cac08dc634c0065e7ef20bf5edeaff1b45a2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
use std
use testr

const main = {
	testr.run([
		/* 64 bit tests */
		[.name="nop", .fn={ctx; matches(ctx, "tcp!foo!bar", "tcp!foo!bar", "nope", "nope")}],
		[.name="addboth", .fn={ctx; matches(ctx, "tcp!foo!bar", "foo", "tcp", "bar")}],
		[.name="addnet", .fn={ctx; matches(ctx, "tcp!foo!bar", "foo!bar", "tcp", "")}],
		[.name="addport", .fn={ctx; matches(ctx, "tcp!foo!bar", "tcp!foo", "tcp", "bar")}],
		[.name="addnetport", .fn={ctx; matches(ctx, "net!foo!bar", "foo", "", "bar")}],
	][:])
}

const matches = {ctx, expected, addr, net, port
	var s

	s = std.netaddr(addr, net, port)
	testr.check(ctx, std.eq(expected, s), \
		"mismatch: expected {}, got {} from ({}, {}, {})\n", \
		expected, s, addr, net, port)
	std.slfree(s)
}