def setUp(self): mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict(irmc_url="irmc_dns_or_ip", irmc_username="******", irmc_password="******", validate_certs=True, index=0, cabid=-1) mockdata = mock.Mock() mockdata.reason = "mockdata error reason" mockdata.content = "<xml><cmd/></xml>" mockdata.status_code = 200 scci_code_map = {"get_cs": "E001", "set_cs": "E002"} userdata = {"description": "", "enabled": ""} param_scci_map = [ ["description", "ConfBMCAcctUserDescription", 0x1455, None], # iRMC: Desciption [ "enabled", "ConfBMCAcctUserEnable", 0x1457, { "0": "False", "1": "True" } ], # iRMC: IPMI User Enabled ] # unittest.TestCase.setUp(self) self.mod = mod self.mockdata = mockdata self.scci_code_map = scci_code_map self.userdata = userdata self.param_scci_map = param_scci_map self.url = "http://{0}/config".format(mod.params['irmc_url'])
def setUp(self): mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict( irmc_url="irmc_dns_or_ip", irmc_username="******", irmc_password="******", validate_certs=True ) mockdata = mock.Mock() mockdata.reason = "mocked error reason" mockdata.bad_return = {'Data': 'mockdata', 'error': {'message': mockdata.reason}} mockdata.json.return_value = {'Data': 'mockdata'} mockdata.status_code = 200 # unittest.TestCase.setUp(self) self.mod = mod self.mockdata = mockdata self.url = "https://{0}/redfish_path".format(mod.params['irmc_url']) self.mockjson = {"Level0Key": "MockLevel0Data", "Level1": {"Level1Key": "MockLevel1Data", "Level2": {"Level2Key": "MockLevel2Data", "Level3": {"Level3Key": "MockLevel3Data", "Level4": {"Level4Key": "MockLevel4Data", "Level5": {"Level5Key": "MockLevel5Data"}}}}}}
def test__save_data__happy_path(self, fetch, write): # Setup mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict( url="https://www.google.com", dest="/tmp/firstmod.txt" ) # Exercise firstmod.save_data(mod) # Verify self.assertEqual(1, mod.exit_json.call_count) expected = call(msg="Data saved", changed=True) self.assertEqual(expected, mod.exit_json.call_args) self.assertEqual(1, fetch.call_count) expected = call(mod.params["url"]) self.assertEqual(expected, fetch.call_args) self.assertEqual(1, write.call_count) expected = call(fetch.return_value, mod.params["dest"]) self.assertEqual(expected, write.call_args)
def test__save_data__write_failure(self, fetch, write): # Setup mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict( url="https://www.google.com", dest="/tmp/firstmod.txt" ) write.side_effect = firstmod.WriteError # Exercise firstmod.save_data(mod) # Verify self.assertEqual(1, mod.fail_json.call_count) self.assertEqual(1, fetch.call_count) expected = call(mod.params["url"]) self.assertEqual(expected, fetch.call_args) self.assertEqual(1, write.call_count) expected = call(fetch.return_value, mod.params["dest"]) self.assertEqual(expected, write.call_args)
def test__primitive_resource__happy(self, has_type, primitive_resource_current_count): mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict(resource="openstack-cinder-volume", max_wait="5") has_type.return_value = pacemaker_is_active.Primitive( mod, "openstack-cinder-volume") primitive_resource_current_count.return_value = 1 pacemaker_is_active.is_resource_active(mod) self.assertEqual(0, mod.fail_json.call_count) self.assertEqual(1, mod.exit_json.call_count)
def test__master_resource__happy(self, has_type, master_resource_expected_count, master_resource_current_count): mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict(resource="galera", max_wait="5") has_type.return_value = pacemaker_is_active.Master(mod, 'galera') master_resource_expected_count.return_value = 3 master_resource_current_count.return_value = 3 pacemaker_is_active.is_resource_active(mod) self.assertEqual(0, mod.fail_json.call_count) self.assertEqual(1, mod.exit_json.call_count)
def test__clone_resource__happy(self, has_type, clone_resource_expected_count, clone_resource_current_count): mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict(resource="haproxy", max_wait="5") has_type.return_value = pacemaker_is_active.Clone(mod, 'haproxy') clone_resource_expected_count.return_value = 3 clone_resource_current_count.return_value = 3 pacemaker_is_active.is_resource_active(mod) self.assertEqual(0, mod.fail_json.call_count) self.assertEqual(1, mod.exit_json.call_count)
def setUp(self): mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict( irmc_url="irmc_dns_or_ip", irmc_username="******", irmc_password="******", validate_certs=True ) mockdata = mock.Mock() mockdata.reason = "mockdata error reason" mockdata.content = "<xml><cmd/></xml>" mockdata.status_code = 200 # unittest.TestCase.setUp(self) self.mod = mod self.mockdata = mockdata self.url = "http://{0}/config".format(mod.params['irmc_url'])
def test__save_data__happy_path(self, fetch, write): # Setup mod_cls = create_autospec(AnsibleModule) mod = mod_cls.return_value mod.params = dict(url='www.google.com', dest='/tmp/firstmod.txt') # Exercise wyfm.save_data(mod) # Verify self.assertEqual(1, fetch.call_count) expected = call(mod.params['url']) self.assertEqual(expected, fetch.call_args) self.assertEqual(1, write.call_count) expected = call(fetch.return_value, mod.params['dest']) self.assertEqual(expected, write.call_args) self.assertEqual(1, mod.exit_json.call_count) expected = call(msg='Data saved', changed=True) self.assertEqual(expected, mod.exit_json.call_args)