38 lines
794 B
Go
38 lines
794 B
Go
|
package main
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
)
|
||
|
|
||
|
func TestParseIP(t *testing.T) {
|
||
|
|
||
|
cases := []struct {
|
||
|
input string
|
||
|
host string
|
||
|
port uint64
|
||
|
}{
|
||
|
{"localhost:8080", "localhost", 8080},
|
||
|
{"127.0.0.1:8080", "127.0.0.1", 8080},
|
||
|
{"131.159.15.61:6001", "131.159.15.61", 6001},
|
||
|
{"[::1]:8080", "::1", 8080},
|
||
|
{"[2001:4ca0:2001:11:226:b9ff:fe7d:84ed]:6001", "2001:4ca0:2001:11:226:b9ff:fe7d:84ed", 6001},
|
||
|
}
|
||
|
|
||
|
for _, c := range cases {
|
||
|
var host string
|
||
|
var port uint64
|
||
|
host, port, _ = parseIP(c.input)
|
||
|
if host != c.host || port != c.port {
|
||
|
t.Errorf("parseIP(%s): Expected %s, %d; got %s, %d", c.input, c.host, c.port, host, port)
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func TestParseConfig(t *testing.T) {
|
||
|
config := ParseConfig("testdata/test.ini")
|
||
|
|
||
|
if config.PrefixLength != 5 {
|
||
|
t.Fatal("Read wrong value!")
|
||
|
}
|
||
|
}
|