| Index: common/tsmon/iface_test.go
|
| diff --git a/common/tsmon/iface_test.go b/common/tsmon/iface_test.go
|
| index a7f4884f3f2eeba64908c721d89f122724ad1ab6..186ab4a938419c70d6db55911fdd602d99949181 100644
|
| --- a/common/tsmon/iface_test.go
|
| +++ b/common/tsmon/iface_test.go
|
| @@ -5,6 +5,8 @@
|
| package tsmon
|
|
|
| import (
|
| + "io/ioutil"
|
| + "os"
|
| "testing"
|
|
|
| "golang.org/x/net/context"
|
| @@ -20,7 +22,10 @@ func TestInitializeFromFlags(t *testing.T) {
|
| tsmonFlags := NewFlags()
|
| tsmonFlags.Endpoint = "file://fake/path"
|
| tsmonFlags.Target.TargetType = target.DeviceType
|
| - tsmonFlags.Target.SysInfo = &target.SysInfo{Hostname: "test-m4", Region: "test-reg"}
|
| + tsmonFlags.Target.SysInfo = &target.SysInfo{
|
| + Hostname: "host-sys",
|
| + Region: "region-sys",
|
| + }
|
| tsmonFlags.Flush = FlushManual
|
|
|
| Convey("with autogenerated hostnames", func() {
|
| @@ -32,7 +37,39 @@ func TestInitializeFromFlags(t *testing.T) {
|
| s := GetState(c).S
|
| So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.NetworkDevice)(nil))
|
| target := s.DefaultTarget().(*target.NetworkDevice).AsProto()
|
| - So(target.GetHostname(), ShouldEqual, "autogen:test-m4")
|
| + So(target.GetHostname(), ShouldEqual, "autogen:host-sys")
|
| + So(target.GetMetro(), ShouldEqual, "region-sys")
|
| + })
|
| +
|
| + Convey("with predefined autogenerated hostnames (Device)", func() {
|
| + tsmonFlags.Target.AutoGenHostname = true
|
| + tsmonFlags.Target.DeviceHostname = "test-m5"
|
| + err := InitializeFromFlags(c, &tsmonFlags)
|
| + So(err, ShouldBeNil)
|
| + defer Shutdown(c)
|
| +
|
| + s := GetState(c).S
|
| + So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.NetworkDevice)(nil))
|
| + target := s.DefaultTarget().(*target.NetworkDevice).AsProto()
|
| + So(target.GetHostname(), ShouldEqual, "autogen:test-m5")
|
| + So(target.GetMetro(), ShouldEqual, "region-sys")
|
| + })
|
| +
|
| + Convey("with predefined autogenerated hostnames (Task)", func() {
|
| + tsmonFlags.Target.AutoGenHostname = true
|
| + tsmonFlags.Target.TaskHostname = "test-m5"
|
| + tsmonFlags.Target.TargetType = target.TaskType
|
| + tsmonFlags.Target.TaskServiceName = "test-service"
|
| + tsmonFlags.Target.TaskJobName = "test-job"
|
| + err := InitializeFromFlags(c, &tsmonFlags)
|
| + So(err, ShouldBeNil)
|
| + defer Shutdown(c)
|
| +
|
| + s := GetState(c).S
|
| + So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Task)(nil))
|
| + target := s.DefaultTarget().(*target.Task).AsProto()
|
| + So(target.GetHostName(), ShouldEqual, "autogen:test-m5")
|
| + So(target.GetDataCenter(), ShouldEqual, "region-sys")
|
| })
|
|
|
| Convey("with static hostnames", func() {
|
| @@ -43,7 +80,68 @@ func TestInitializeFromFlags(t *testing.T) {
|
| s := GetState(c).S
|
| So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.NetworkDevice)(nil))
|
| target := s.DefaultTarget().(*target.NetworkDevice).AsProto()
|
| - So(target.GetHostname(), ShouldEqual, "test-m4")
|
| + So(target.GetHostname(), ShouldEqual, "host-sys")
|
| + So(target.GetMetro(), ShouldEqual, "region-sys")
|
| + })
|
| +
|
| + Convey("with predefined static hostnames (Device)", func() {
|
| + tsmonFlags.Target.DeviceHostname = "host-flag"
|
| + tsmonFlags.Target.DeviceRegion = "region-flag"
|
| + err := InitializeFromFlags(c, &tsmonFlags)
|
| + So(err, ShouldBeNil)
|
| + defer Shutdown(c)
|
| +
|
| + s := GetState(c).S
|
| + So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.NetworkDevice)(nil))
|
| + target := s.DefaultTarget().(*target.NetworkDevice).AsProto()
|
| + So(target.GetHostname(), ShouldEqual, "host-flag")
|
| + So(target.GetMetro(), ShouldEqual, "region-flag")
|
| + })
|
| +
|
| + Convey("with predefined static hostnames (Task)", func() {
|
| + tsmonFlags.Target.TaskHostname = "host-flag"
|
| + tsmonFlags.Target.TaskRegion = "region-flag"
|
| + tsmonFlags.Target.TargetType = target.TaskType
|
| + tsmonFlags.Target.TaskServiceName = "test-service"
|
| + tsmonFlags.Target.TaskJobName = "test-job"
|
| + err := InitializeFromFlags(c, &tsmonFlags)
|
| + So(err, ShouldBeNil)
|
| + defer Shutdown(c)
|
| +
|
| + s := GetState(c).S
|
| + So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Task)(nil))
|
| + target := s.DefaultTarget().(*target.Task).AsProto()
|
| + So(target.GetHostName(), ShouldEqual, "host-flag")
|
| + So(target.GetDataCenter(), ShouldEqual, "region-flag")
|
| + })
|
| +
|
| + Convey("with region in config and hostname in a flag", func() {
|
| + tf, err := ioutil.TempFile("", "config_test")
|
| + if err != nil {
|
| + t.Fail()
|
| + }
|
| + defer tf.Close()
|
| + defer os.Remove(tf.Name())
|
| +
|
| + tf.WriteString(`
|
| + {"endpoint": "foo",
|
| + "credentials": "bar",
|
| + "autogen_hostname": true,
|
| + "hostname": "host-config",
|
| + "region": "region-config"
|
| + }`)
|
| + tf.Sync()
|
| + tsmonFlags.ConfigFile = tf.Name()
|
| + tsmonFlags.Target.DeviceHostname = "host-flag"
|
| + err = InitializeFromFlags(c, &tsmonFlags)
|
| + So(err, ShouldBeNil)
|
| + defer Shutdown(c)
|
| +
|
| + s := GetState(c).S
|
| + So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.NetworkDevice)(nil))
|
| + target := s.DefaultTarget().(*target.NetworkDevice).AsProto()
|
| + So(target.GetHostname(), ShouldEqual, "autogen:host-flag")
|
| + So(target.GetMetro(), ShouldEqual, "region-config")
|
| })
|
|
|
| })
|
|
|