376
376
cls.ping_unit = find_landscape_unit_with_service(
377
377
cls.juju_status, "pingserver")
379
def run_command_on_unit(self, cmd, unit):
380
output = check_output(["juju", "ssh", unit, cmd], stderr=PIPE)
381
return output.decode("utf-8").strip()
383
def stop_app_server(self):
384
stop_cmd = "sudo service landscape-appserver stop"
385
self.run_command_on_unit(stop_cmd, self.app_unit)
387
def stop_msg_server(self):
388
stop_cmd = "sudo service landscape-msgserver stop"
389
self.run_command_on_unit(stop_cmd, self.msg_unit)
391
def stop_ping_server(self):
392
stop_cmd = "sudo service landscape-pingserver stop"
393
self.run_command_on_unit(stop_cmd, self.ping_unit)
395
def start_app_server(self):
396
start_cmd = "sudo service landscape-appserver start"
397
self.run_command_on_unit(start_cmd, self.app_unit)
399
def start_msg_server(self):
400
start_cmd = "sudo service landscape-msgserver start"
401
self.run_command_on_unit(start_cmd, self.msg_unit)
403
def start_ping_server(self):
404
start_cmd = "sudo service landscape-pingserver start"
405
self.run_command_on_unit(start_cmd, self.ping_unit)
380
408
"""Take down the required landscape service."""
381
cmd = ["juju", "ssh"]
382
409
if self._testMethodName.startswith("test_app_unavailable"):
383
stop_cmd = "sudo service landscape-appserver stop"
384
cmd.extend([self.app_unit, stop_cmd])
410
self.stop_app_server()
385
411
elif self._testMethodName.startswith("test_msg_unavailable"):
386
stop_cmd = "sudo service landscape-msgserver stop"
387
cmd.extend([self.msg_unit, stop_cmd])
412
self.stop_msg_server()
388
413
elif self._testMethodName.startswith("test_ping_unavailable"):
389
stop_cmd = "sudo service landscape-pingserver stop"
390
cmd.extend([self.ping_unit, stop_cmd])
393
output = check_output(cmd, stderr=PIPE).decode("utf-8")
414
self.stop_ping_server()
395
416
def tearDown(self):
396
417
"""Bring back up the required landscape service."""
397
418
cmd = ["juju", "ssh"]
398
419
if self._testMethodName.startswith("test_app_unavailable"):
399
start_cmd = "sudo service landscape-appserver start"
400
cmd.extend([self.app_unit, start_cmd])
420
self.start_app_server()
401
421
elif self._testMethodName.startswith("test_msg_unavailable"):
402
start_cmd = "sudo service landscape-msgserver start"
403
cmd.extend([self.msg_unit, start_cmd])
422
self.start_msg_server()
404
423
elif self._testMethodName.startswith("test_ping_unavailable"):
405
start_cmd = "sudo service landscape-pingserver start"
406
cmd.extend([self.ping_unit, start_cmd])
409
output = check_output(cmd, stderr=PIPE).decode("utf-8")
424
self.start_ping_server()
411
426
def test_app_unavailable_page(self):