Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(110)

Side by Side Diff: common/tsmon/iface_test.go

Issue 2225933003: tsmon: read hostname and region from config file (Closed) Base URL: https://chromium.googlesource.com/external/github.com/luci/luci-go@master
Patch Set: Fixed error in test Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « common/tsmon/iface.go ('k') | common/tsmon/target/flags.go » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The LUCI Authors. All rights reserved. 1 // Copyright 2016 The LUCI Authors. All rights reserved.
2 // Use of this source code is governed under the Apache License, Version 2.0 2 // Use of this source code is governed under the Apache License, Version 2.0
3 // that can be found in the LICENSE file. 3 // that can be found in the LICENSE file.
4 4
5 package tsmon 5 package tsmon
6 6
7 import ( 7 import (
8 "io/ioutil"
9 "os"
8 "testing" 10 "testing"
9 11
10 "golang.org/x/net/context" 12 "golang.org/x/net/context"
11 13
12 "github.com/luci/luci-go/common/tsmon/target" 14 "github.com/luci/luci-go/common/tsmon/target"
13 15
14 . "github.com/smartystreets/goconvey/convey" 16 . "github.com/smartystreets/goconvey/convey"
15 ) 17 )
16 18
17 func TestInitializeFromFlags(t *testing.T) { 19 func TestInitializeFromFlags(t *testing.T) {
18 c := context.Background() 20 c := context.Background()
19 Convey("Initialize tsmon", t, func() { 21 Convey("Initialize tsmon", t, func() {
20 tsmonFlags := NewFlags() 22 tsmonFlags := NewFlags()
21 tsmonFlags.Endpoint = "file://fake/path" 23 tsmonFlags.Endpoint = "file://fake/path"
22 tsmonFlags.Target.TargetType = target.DeviceType 24 tsmonFlags.Target.TargetType = target.DeviceType
23 » » tsmonFlags.Target.SysInfo = &target.SysInfo{Hostname: "test-m4", Region: "test-reg"} 25 » » tsmonFlags.Target.SysInfo = &target.SysInfo{
26 » » » Hostname: "host-sys",
27 » » » Region: "region-sys",
28 » » }
24 tsmonFlags.Flush = FlushManual 29 tsmonFlags.Flush = FlushManual
25 30
26 Convey("with autogenerated hostnames", func() { 31 Convey("with autogenerated hostnames", func() {
27 tsmonFlags.Target.AutoGenHostname = true 32 tsmonFlags.Target.AutoGenHostname = true
28 err := InitializeFromFlags(c, &tsmonFlags) 33 err := InitializeFromFlags(c, &tsmonFlags)
29 So(err, ShouldBeNil) 34 So(err, ShouldBeNil)
30 defer Shutdown(c) 35 defer Shutdown(c)
31 36
32 s := GetState(c).S 37 s := GetState(c).S
33 So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Net workDevice)(nil)) 38 So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Net workDevice)(nil))
34 target := s.DefaultTarget().(*target.NetworkDevice).AsPr oto() 39 target := s.DefaultTarget().(*target.NetworkDevice).AsPr oto()
35 » » » So(target.GetHostname(), ShouldEqual, "autogen:test-m4") 40 » » » So(target.GetHostname(), ShouldEqual, "autogen:host-sys" )
41 » » » So(target.GetMetro(), ShouldEqual, "region-sys")
42 » » })
43
44 » » Convey("with predefined autogenerated hostnames (Device)", func( ) {
45 » » » tsmonFlags.Target.AutoGenHostname = true
46 » » » tsmonFlags.Target.DeviceHostname = "test-m5"
47 » » » err := InitializeFromFlags(c, &tsmonFlags)
48 » » » So(err, ShouldBeNil)
49 » » » defer Shutdown(c)
50
51 » » » s := GetState(c).S
52 » » » So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Net workDevice)(nil))
53 » » » target := s.DefaultTarget().(*target.NetworkDevice).AsPr oto()
54 » » » So(target.GetHostname(), ShouldEqual, "autogen:test-m5")
55 » » » So(target.GetMetro(), ShouldEqual, "region-sys")
56 » » })
57
58 » » Convey("with predefined autogenerated hostnames (Task)", func() {
59 » » » tsmonFlags.Target.AutoGenHostname = true
60 » » » tsmonFlags.Target.TaskHostname = "test-m5"
61 » » » tsmonFlags.Target.TargetType = target.TaskType
62 » » » tsmonFlags.Target.TaskServiceName = "test-service"
63 » » » tsmonFlags.Target.TaskJobName = "test-job"
64 » » » err := InitializeFromFlags(c, &tsmonFlags)
65 » » » So(err, ShouldBeNil)
66 » » » defer Shutdown(c)
67
68 » » » s := GetState(c).S
69 » » » So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Tas k)(nil))
70 » » » target := s.DefaultTarget().(*target.Task).AsProto()
71 » » » So(target.GetHostName(), ShouldEqual, "autogen:test-m5")
72 » » » So(target.GetDataCenter(), ShouldEqual, "region-sys")
36 }) 73 })
37 74
38 Convey("with static hostnames", func() { 75 Convey("with static hostnames", func() {
39 err := InitializeFromFlags(c, &tsmonFlags) 76 err := InitializeFromFlags(c, &tsmonFlags)
40 So(err, ShouldBeNil) 77 So(err, ShouldBeNil)
41 defer Shutdown(c) 78 defer Shutdown(c)
42 79
43 s := GetState(c).S 80 s := GetState(c).S
44 So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Net workDevice)(nil)) 81 So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Net workDevice)(nil))
45 target := s.DefaultTarget().(*target.NetworkDevice).AsPr oto() 82 target := s.DefaultTarget().(*target.NetworkDevice).AsPr oto()
46 » » » So(target.GetHostname(), ShouldEqual, "test-m4") 83 » » » So(target.GetHostname(), ShouldEqual, "host-sys")
84 » » » So(target.GetMetro(), ShouldEqual, "region-sys")
85 » » })
86
87 » » Convey("with predefined static hostnames (Device)", func() {
88 » » » tsmonFlags.Target.DeviceHostname = "host-flag"
89 » » » tsmonFlags.Target.DeviceRegion = "region-flag"
90 » » » err := InitializeFromFlags(c, &tsmonFlags)
91 » » » So(err, ShouldBeNil)
92 » » » defer Shutdown(c)
93
94 » » » s := GetState(c).S
95 » » » So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Net workDevice)(nil))
96 » » » target := s.DefaultTarget().(*target.NetworkDevice).AsPr oto()
97 » » » So(target.GetHostname(), ShouldEqual, "host-flag")
98 » » » So(target.GetMetro(), ShouldEqual, "region-flag")
99 » » })
100
101 » » Convey("with predefined static hostnames (Task)", func() {
102 » » » tsmonFlags.Target.TaskHostname = "host-flag"
103 » » » tsmonFlags.Target.TaskRegion = "region-flag"
104 » » » tsmonFlags.Target.TargetType = target.TaskType
105 » » » tsmonFlags.Target.TaskServiceName = "test-service"
106 » » » tsmonFlags.Target.TaskJobName = "test-job"
107 » » » err := InitializeFromFlags(c, &tsmonFlags)
108 » » » So(err, ShouldBeNil)
109 » » » defer Shutdown(c)
110
111 » » » s := GetState(c).S
112 » » » So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Tas k)(nil))
113 » » » target := s.DefaultTarget().(*target.Task).AsProto()
114 » » » So(target.GetHostName(), ShouldEqual, "host-flag")
115 » » » So(target.GetDataCenter(), ShouldEqual, "region-flag")
116 » » })
117
118 » » Convey("with region in config and hostname in a flag", func() {
119 » » » tf, err := ioutil.TempFile("", "config_test")
120 » » » if err != nil {
121 » » » » t.Fail()
122 » » » }
123 » » » defer tf.Close()
124 » » » defer os.Remove(tf.Name())
125
126 » » » tf.WriteString(`
127 » » » {"endpoint": "foo",
128 » » » "credentials": "bar",
129 » » » "autogen_hostname": true,
130 » » » "hostname": "host-config",
131 » » » "region": "region-config"
132 » » » }`)
133 » » » tf.Sync()
134 » » » tsmonFlags.ConfigFile = tf.Name()
135 » » » tsmonFlags.Target.DeviceHostname = "host-flag"
136 » » » err = InitializeFromFlags(c, &tsmonFlags)
137 » » » So(err, ShouldBeNil)
138 » » » defer Shutdown(c)
139
140 » » » s := GetState(c).S
141 » » » So(s.DefaultTarget(), ShouldHaveSameTypeAs, (*target.Net workDevice)(nil))
142 » » » target := s.DefaultTarget().(*target.NetworkDevice).AsPr oto()
143 » » » So(target.GetHostname(), ShouldEqual, "autogen:host-flag ")
144 » » » So(target.GetMetro(), ShouldEqual, "region-config")
47 }) 145 })
48 146
49 }) 147 })
50 } 148 }
OLDNEW
« no previous file with comments | « common/tsmon/iface.go ('k') | common/tsmon/target/flags.go » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698