awl/conf/plan9_test.go
Sam 220964fc02
All checks were successful
continuous-integration/drone/push Build is passing
Windows and Plan 9 DNS Config (#17)
Closes #14, #15

Co-authored-by: Sam Therapy <sam@samtherapy.net>
Reviewed-on: #17
2022-06-30 22:37:08 +00:00

45 lines
1,017 B
Go

// SPDX-License-Identifier: BSD-3-Clause
package conf
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestGetPlan9Config(t *testing.T) {
ndbs := []struct {
in string
want string
}{
{`ip=192.168.122.45 ipmask=255.255.255.0 ipgw=192.168.122.1
sys=chog9
dns=192.168.122.1`, "192.168.122.1"},
{`ipnet=murray-hill ip=135.104.0.0 ipmask=255.255.0.0
dns=135.104.10.1
ntp=ntp.cs.bell-labs.com
ipnet=plan9 ip=135.104.9.0 ipmask=255.255.255.0
ntp=oncore.cs.bell-labs.com
smtp=smtp1.cs.bell-labs.com
ip=135.104.9.6 sys=anna dom=anna.cs.bell-labs.com
smtp=smtp2.cs.bell-labs.com`, "135.104.10.1"},
}
for _, ndb := range ndbs {
act, err := getPlan9Config(ndb.in)
assert.Nil(t, err)
assert.Equal(t, ndb.want, act.Servers[0])
}
invalid := `sys = spindle
dom=spindle.research.bell-labs.com
bootf=/mips/9powerboot
ip=135.104.117.32 ether=080069020677
proto=il`
act, err := getPlan9Config(invalid)
assert.ErrorContains(t, err, "no DNS servers found")
assert.Nil(t, act)
}