@@ -93,6 +93,130 @@ No readiness probe configured.
9393` , "output" )
9494}
9595
96+ func TestHealthchecksListNoHealthCheck (t * testing.T ) {
97+ t .Parallel ()
98+ cf , server , err := testutil .NewTestServerAndClient ()
99+ if err != nil {
100+ t .Fatal (err )
101+ }
102+ defer server .Close ()
103+ var b bytes.Buffer
104+ cmdr := DeisCmd {WOut : & b , ConfigFile : cf }
105+
106+ server .Mux .HandleFunc ("/v2/apps/foo/config/" , func (w http.ResponseWriter , r * http.Request ) {
107+ testutil .SetHeaders (w )
108+ fmt .Fprintf (w , `{
109+ "uuid": "c039a380-6068-4511-b35a-535a73b86ef5",
110+ "app": "foo",
111+ "owner": "bar",
112+ "values": {},
113+ "memory": {},
114+ "cpu": {},
115+ "tags": {},
116+ "registry": {},
117+ "healthcheck": {},
118+ "created": "2016-09-12T22:20:14Z",
119+ "updated": "2016-09-12T22:20:14Z"
120+ }` )
121+ })
122+
123+ err = cmdr .HealthchecksList ("foo" , "" )
124+ assert .NoErr (t , err )
125+
126+ assert .Equal (t , b .String (), `=== foo Healthchecks
127+ No health checks configured.
128+ ` , "output" )
129+ }
130+
131+ func TestHealthchecksListAllHealthChecks (t * testing.T ) {
132+ t .Parallel ()
133+ cf , server , err := testutil .NewTestServerAndClient ()
134+ if err != nil {
135+ t .Fatal (err )
136+ }
137+ defer server .Close ()
138+ var b bytes.Buffer
139+ cmdr := DeisCmd {WOut : & b , ConfigFile : cf }
140+
141+ server .Mux .HandleFunc ("/v2/apps/foo/config/" , func (w http.ResponseWriter , r * http.Request ) {
142+ testutil .SetHeaders (w )
143+ fmt .Fprintf (w , `{
144+ "uuid": "c039a380-6068-4511-b35a-535a73b86ef5",
145+ "app": "foo",
146+ "owner": "bar",
147+ "values": {},
148+ "memory": {},
149+ "cpu": {},
150+ "tags": {},
151+ "registry": {},
152+ "healthcheck": {
153+ "web/cmd": {
154+ "livenessProbe": {
155+ "initialDelaySeconds": 50,
156+ "timeoutSeconds": 50,
157+ "periodSeconds": 10,
158+ "failureThreshold": 3,
159+ "httpGet": {
160+ "port": 80,
161+ "path": "/"
162+ },
163+ "successThreshold": 1
164+ }
165+ },
166+ "web": {
167+ "livenessProbe": {
168+ "initialDelaySeconds": 50,
169+ "timeoutSeconds": 50,
170+ "periodSeconds": 10,
171+ "failureThreshold": 3,
172+ "httpGet": {
173+ "port": 80,
174+ "path": "/"
175+ },
176+ "successThreshold": 1
177+ }
178+ }
179+ },
180+ "created": "2016-09-12T22:20:14Z",
181+ "updated": "2016-09-12T22:20:14Z"
182+ }` )
183+ })
184+
185+ err = cmdr .HealthchecksList ("foo" , "" )
186+ assert .NoErr (t , err )
187+
188+ assert .Equal (t , b .String (), `=== foo Healthchecks
189+
190+ web:
191+ --- Liveness
192+ Initial Delay (seconds): 50
193+ Timeout (seconds): 50
194+ Period (seconds): 10
195+ Success Threshold: 1
196+ Failure Threshold: 3
197+ Exec Probe: N/A
198+ HTTP GET Probe: Path="/" Port=80 HTTPHeaders=[]
199+ TCP Socket Probe: N/A
200+
201+ --- Readiness
202+ No readiness probe configured.
203+
204+ web/cmd:
205+ --- Liveness
206+ Initial Delay (seconds): 50
207+ Timeout (seconds): 50
208+ Period (seconds): 10
209+ Success Threshold: 1
210+ Failure Threshold: 3
211+ Exec Probe: N/A
212+ HTTP GET Probe: Path="/" Port=80 HTTPHeaders=[]
213+ TCP Socket Probe: N/A
214+
215+ --- Readiness
216+ No readiness probe configured.
217+ ` , "output" )
218+ }
219+
96220func TestHealthchecksSet (t * testing.T ) {
97221 t .Parallel ()
98222 cf , server , err := testutil .NewTestServerAndClient ()
0 commit comments