def test_register_without_registration_info(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() exit_code, output = dsc.register_automation('','','','','','') self.assertEqual(exit_code, 51)
def test_register(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() exit_code, output = dsc.register_automation('somekey','http://dummy','','','','') self.assertEqual(exit_code, 0)
def test_is_statusfile_update_idempotent(self): status_file = 'status/0.status' dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.update_statusfile(status_file, '123', '345') dsc.update_statusfile(status_file, '123', '345') self.verify_nodeid_vmuuid(status_file)
def test_apply_mof(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() config = dsc.apply_dsc_meta_configuration( 'mof/dscnode.nxFile.meta.mof') self.assertTrue('ReturnValue=0' in config)
def test_nodeid_with_dsc(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() config = dsc.apply_dsc_meta_configuration('mof/dscnode.nxFile.meta.push.mof') nodeid = dsc.get_nodeid('/etc/opt/omi/conf/omsconfig/agentid') self.assertTrue(nodeid is not None, "nodeid is none")
def test_register_invalid_configuration_mode(self): print "Register test case with invalid configuration mode" dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() exit_code, output = dsc.register_automation('somekey','http://dummy','','','','some') self.assertEqual(exit_code, 51)
def test_register(self): print "Register test case with valid parameters" dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() exit_code, output = dsc.register_automation('somekey','http://dummy','test.localhost.mof','15','30','applyandmonitor') self.assertEqual(exit_code, 0)
def test_is_statusfile_update_register(self): status_file = 'status/0.status' dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() exit_code, output = dsc.register_automation('somekey','http://dummy','','','','') self.verify_nodeid_vmuuid(status_file)
def test_statusfile_update(self): status_file = 'status/0.status' dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) class cresponse: deserialized_data= { "AccountName" : "test", "ResourceGroupName" : "rgName", "SubscriptionId" : "testsubid" } dsc.update_statusfile(status_file, '123','345', cresponse) self.verify_nodeid_vmuuid(status_file)
def test_apply_mof(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() config = dsc.apply_dsc_meta_configuration( 'mof/dscnode.nxFile.meta.push.mof') dsc.apply_dsc_configuration('mof/localhost.nxFile.mof') self.assertTrue(os.path.exists('/tmp/dsctest'))
def test_is_statusfile_update_pull(self): status_file = 'status/0.status' dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() config = dsc.apply_dsc_meta_configuration('mof/dscnode.nxFile.meta.mof') self.assertTrue('ReturnValue=0' in config) self.verify_nodeid_vmuuid(status_file)
def test_is_statusfile_update_push(self): status_file = 'status/0.status' dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() config = dsc.apply_dsc_meta_configuration('mof/dscnode.nxFile.meta.push.mof') dsc.apply_dsc_configuration('mof/localhost.nxFile.mof') self.assertTrue(os.path.exists('/tmp/dsctest')) self.verify_nodeid_vmuuid(status_file)
def test_windows_line_break(self): print "\nTest: Convert text files from DOS to Unix formats" hutil = MockUtil(self) files = [file for file in os.listdir('encoding') if 'dos' in file] for file in files: file_path = os.path.join('encoding', file) cs.preprocess_files(file_path, hutil) with open(file_path, 'r') as f: contents = f.read() self.assertFalse("\r\n" in contents)
def test_run_command(self): hutil = MockUtil(self) test_script = "mock.sh" os.chdir(os.path.join(env.root, "test")) exit_code = su.run_command(hutil, ["sh", test_script, "0"], os.getcwd(), 'RunScript-0', 'TestExtension', '1.0', True, 0.1) self.assertEquals(0, exit_code) self.assertEquals("do_exit", hutil.last) exit_code = su.run_command(hutil, ["sh", test_script, "75"], os.getcwd(), 'RunScript-1', 'TestExtension', '1.0', False, 0.1) self.assertEquals(75, exit_code) self.assertEquals("do_status_report", hutil.last)
def test_push_request_properties(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() config = dsc.apply_dsc_meta_configuration( 'mof/dscnode.nxFile.meta.push.mof') self.assertTrue('ReturnValue=0' in config) response = dsc.send_heart_beat_msg_to_agent_service() self.assertIsNone(response)
def test_send_request_to_pullserver(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() config = dsc.apply_dsc_meta_configuration( 'mof/azureautomation.df.meta.mof') self.assertTrue('ReturnValue=0' in config) response = dsc.send_heart_beat_msg_to_agent_service() self.assertEqual(response.status_code, 200)
def test_properties_for_pull(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) dsc.install_dsc_packages() dsc.start_omiservice() config = dsc.apply_dsc_meta_configuration( 'mof/dscnode.nxFile.meta.mof') self.assertTrue('ReturnValue=0' in config) content = dsc.construct_node_extension_properties(config) data = json.dumps(content) self.assertTrue('OMSCloudId' in data, "OMSCLoudID doesn't exist")
def test_bom(self): print "\nTest: Remove BOM" hutil = MockUtil(self) files = [file for file in os.listdir('encoding') if 'bom' in file] for file in files: file_path = os.path.join('encoding', file) cs.preprocess_files(file_path, hutil) with open(file_path, 'r') as f: contents = f.read() if "utf8" in file: self.assertFalse(contents.startswith(codecs.BOM_UTF8)) if "utf16_le" in file: self.assertFalse(contents.startswith(codecs.BOM_LE)) if "utf16_be" in file: self.assertFalse(contents.startswith(codecs.BOM_BE))
def test_install(self): hutil = MockUtil(self) oa.install(hutil)
def test_vmuuid(self): dsc.hutil = MockUtil(self) vmuuid = dsc.get_vmuuid() self.assertTrue(vmuuid is not None, "vm uuid is none")
def test_nodeid_without_dsc(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) nodeid = dsc.get_nodeid('/etc/opt/omi/conf/omsconfig/agentid1') self.assertTrue(nodeid is None, "nodeid is not none")
def test_log_or_exit(self): hutil = MockUtil(self) su.log_or_exit(hutil, True, 0, 'LogOrExit-0', 'Message1') self.assertEquals("do_exit", hutil.last) su.log_or_exit(hutil, False, 0, 'LogOrExit-1', 'Message2') self.assertEquals("do_status_report", hutil.last)
def test_update_node_properties(self): dsc.distro_category = dsc.get_distro_category() dsc.hutil = MockUtil(self) response = dsc.update() self.assertIsNone(response)
def test_run_script(self): hutil = MockUtil(self) test_script = "mock.sh" os.chdir(os.path.join(env.root, "test")) cs.run_script(hutil, ["sh", test_script, "0"], 0.1) cs.run_script(hutil, ["sh", test_script, "1"], 0.1)
def test_download_file(self): dsc.hutil = MockUtil(self) dsc.download_external_file( 'https://raw.githubusercontent.com/balukambala/azure-linux-extensions/master/DSC/test/mof/dscnode.nxFile.meta.mof', '/tmp')