コード例 #1
0
    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'])
コード例 #2
0
    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"}}}}}}
コード例 #3
0
    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)
コード例 #4
0
    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)
コード例 #5
0
    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)
コード例 #6
0
    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)
コード例 #7
0
    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)
コード例 #8
0
    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'])
コード例 #9
0
    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)