comparison spec/util_ip_spec.lua @ 12934:c6dffebab2f8

util.ip: Tests for truncate()
author Matthew Wild <mwild1@gmail.com>
date Tue, 14 Mar 2023 18:40:16 +0000
parents 4878e4159e12
children dc1ad5f3f597
comparison
equal deleted inserted replaced
12933:3ab0bbb1dc35 12934:c6dffebab2f8
98 assert_cpl6("abcd::1", "abcd::1", 128); 98 assert_cpl6("abcd::1", "abcd::1", 128);
99 assert_cpl6("abcd::abcd", "abcd::", 112); 99 assert_cpl6("abcd::abcd", "abcd::", 112);
100 assert_cpl6("abcd::abcd", "abcd::abcd:abcd", 96); 100 assert_cpl6("abcd::abcd", "abcd::abcd:abcd", 96);
101 end); 101 end);
102 end); 102 end);
103
104 describe("#truncate()", function ()
105 it("should work for IPv4", function ()
106 local ip1 = ip.new_ip("192.168.0.1");
107 local ip2 = ip.truncate(ip1, 16);
108 assert.truthy(ip.is_ip(ip2));
109 assert.equal("192.168.0.0", ip2.normal);
110 assert.equal("192.168.0.1", ip1.normal); -- original unmodified
111 end);
112
113 it("should work for IPv6", function ()
114 local ip1 = ip.new_ip("2001:db8::ff00:42:8329");
115 local ip2 = ip.truncate(ip1, 24);
116 assert.truthy(ip.is_ip(ip2));
117 assert.equal("2001:d00::", ip2.normal);
118 assert.equal("2001:db8::ff00:42:8329", ip1.normal); -- original unmodified
119 end);
120
121 it("accepts a string", function ()
122 assert.equal("127.0.0.0", ip.truncate("127.0.0.1", 8).normal);
123 end);
124 end);
103 end); 125 end);