def test_main__run_prediagnostics_metadata_fail(self,
verify_metadata_mock,
get_net_driver_mock,
get_distro_mock,
check_root_mock,
main_log_handler_mock,
debug_log_handler_mock,
mkdir_mock):
"""Test that _run_prediagnostics() raises MainPrediagnosticFailure when the metadata server is inaccessible."""
ec2rl_prediag_test = ec2rlcore.main.Main(debug=True, full_init=True)
module_path = os.path.join(self.callpath, "test/modules/pre.d")
ec2rl_prediag_test._prediags = ec2rlcore.moduledir.ModuleDir(module_path)
with self.assertRaises(ec2rlcore.main.MainPrediagnosticFailure):
with contextlib.redirect_stdout(self.output):
ec2rl_prediag_test._run_prediagnostics()
self.assertEqual(self.output.getvalue(), "prediagnostic/verify_metadata: cannot reach metadata server\n")
self.assertTrue(verify_metadata_mock.called)
self.assertTrue(get_net_driver_mock.called)
self.assertTrue(get_distro_mock.called)
self.assertTrue(check_root_mock.called)
self.assertTrue(main_log_handler_mock.called)
self.assertTrue(debug_log_handler_mock.called)
self.assertTrue(mkdir_mock.called)
评论列表
文章目录