def test_reload_vms(self):
"""
Reboot VMs and check that uptime decreased.
"""
m = messier.Messier()
m.create_vms()
def get_uptime(vm):
"""
Return uptime in seconds for VM.
"""
# Hideous one-liner, but it works.
cmd = """vagrant ssh {} --command \"cut -d' ' -f 1 /proc/uptime\" """.format(vm.name)
cmd = shlex.split(cmd)
return subprocess.check_output(cmd, stderr=open('/dev/null', 'w'))
# Sleep to make sure the original boot has a higher uptime
time.sleep(10)
original_uptimes = { vm.name: get_uptime(vm) for vm in m.vms }
m.reload_vms()
new_uptimes = { vm.name: get_uptime(vm) for vm in m.vms }
for k, v in original_uptimes.iteritems():
assert new_uptimes[k] < v
评论列表
文章目录