Add more tests for Direct.
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
This commit is contained in:
parent
df64b7abf8
commit
02c34881b5
|
@ -11,6 +11,7 @@ import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"tailscale.com/tailcfg"
|
"tailscale.com/tailcfg"
|
||||||
|
"tailscale.com/types/wgkey"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestUndeltaPeers(t *testing.T) {
|
func TestUndeltaPeers(t *testing.T) {
|
||||||
|
@ -91,3 +92,67 @@ func formatNodes(nodes []*tailcfg.Node) string {
|
||||||
}
|
}
|
||||||
return sb.String()
|
return sb.String()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestNewDirect(t *testing.T) {
|
||||||
|
hi := NewHostinfo()
|
||||||
|
ni := tailcfg.NetInfo{LinkType: "wired"}
|
||||||
|
hi.NetInfo = &ni
|
||||||
|
|
||||||
|
key, err := wgkey.NewPrivate()
|
||||||
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
}
|
||||||
|
opts := Options{ServerURL: "https://example.com", MachinePrivateKey: key, Hostinfo: hi}
|
||||||
|
c, err := NewDirect(opts)
|
||||||
|
if err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
if c.serverURL != opts.ServerURL {
|
||||||
|
t.Errorf("c.serverURL got %v want %v", c.serverURL, opts.ServerURL)
|
||||||
|
}
|
||||||
|
|
||||||
|
if !hi.Equal(c.hostinfo) {
|
||||||
|
t.Errorf("c.hostinfo got %v want %v", c.hostinfo, hi)
|
||||||
|
}
|
||||||
|
|
||||||
|
changed := c.SetNetInfo(&ni)
|
||||||
|
if changed {
|
||||||
|
t.Errorf("c.SetNetInfo(ni) want false got %v", changed)
|
||||||
|
}
|
||||||
|
ni = tailcfg.NetInfo{LinkType: "wifi"}
|
||||||
|
changed = c.SetNetInfo(&ni)
|
||||||
|
if !changed {
|
||||||
|
t.Errorf("c.SetNetInfo(ni) want true got %v", changed)
|
||||||
|
}
|
||||||
|
|
||||||
|
changed = c.SetHostinfo(hi)
|
||||||
|
if changed {
|
||||||
|
t.Errorf("c.SetHostinfo(hi) want false got %v", changed)
|
||||||
|
}
|
||||||
|
hi = NewHostinfo()
|
||||||
|
hi.Hostname = "different host name"
|
||||||
|
changed = c.SetHostinfo(hi)
|
||||||
|
if !changed {
|
||||||
|
t.Errorf("c.SetHostinfo(hi) want true got %v", changed)
|
||||||
|
}
|
||||||
|
|
||||||
|
endpoints := []string{"1", "2", "3"}
|
||||||
|
changed = c.newEndpoints(12, endpoints)
|
||||||
|
if !changed {
|
||||||
|
t.Errorf("c.newEndpoints(12) want true got %v", changed)
|
||||||
|
}
|
||||||
|
changed = c.newEndpoints(12, endpoints)
|
||||||
|
if changed {
|
||||||
|
t.Errorf("c.newEndpoints(12) want false got %v", changed)
|
||||||
|
}
|
||||||
|
changed = c.newEndpoints(13, endpoints)
|
||||||
|
if !changed {
|
||||||
|
t.Errorf("c.newEndpoints(13) want true got %v", changed)
|
||||||
|
}
|
||||||
|
endpoints = []string{"4", "5", "6"}
|
||||||
|
changed = c.newEndpoints(13, endpoints)
|
||||||
|
if !changed {
|
||||||
|
t.Errorf("c.newEndpoints(13) want true got %v", changed)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue