Beispiel #1
0
    def test_should_do_nothing_when_rack_not_exist(self):
        self.resource.get_by.return_value = []

        self.mock_ansible_module.params = PARAMS_FOR_ABSENT

        RackModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False, msg=RackModule.MSG_ALREADY_ABSENT)
Beispiel #2
0
    def test_should_remove_rack(self):
        self.resource.get_by.return_value = [DEFAULT_RACK_TEMPLATE]

        self.mock_ansible_module.params = PARAMS_FOR_ABSENT

        RackModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True, msg=RackModule.MSG_DELETED)
Beispiel #3
0
    def test_should_not_update_when_data_is_equals(self):
        self.resource.get_by.return_value = [DEFAULT_RACK_TEMPLATE]

        self.mock_ansible_module.params = PARAMS_FOR_PRESENT

        RackModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=False,
            msg=RackModule.MSG_ALREADY_PRESENT,
            ansible_facts=dict(rack=DEFAULT_RACK_TEMPLATE))
Beispiel #4
0
    def test_should_create_new_rack(self):
        self.resource.get_by.return_value = []
        self.resource.add.return_value = DEFAULT_RACK_TEMPLATE

        self.mock_ansible_module.params = PARAMS_FOR_PRESENT

        RackModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=RackModule.MSG_CREATED,
            ansible_facts=dict(rack=DEFAULT_RACK_TEMPLATE))
    def test_should_update(self):
        self.resource.get_by.return_value = [DEFAULT_RACK_TEMPLATE]
        self.resource.update.return_value = DEFAULT_RACK_TEMPLATE

        self.mock_ansible_module.params = PARAMS_WITH_CHANGES

        RackModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=RackModule.MSG_UPDATED,
            ansible_facts=dict(rack=DEFAULT_RACK_TEMPLATE))
    def test_should_create_new_rack_if_newName_not_exists(self):
        self.resource.get_by.return_value = []
        self.resource.add.return_value = RACK_TEMPLATE_WITH_NEWNAME

        self.mock_ansible_module.params = PARAMS_WITH_CHANGES

        RackModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=RackModule.MSG_ADDED,
            ansible_facts=dict(rack=RACK_TEMPLATE_WITH_NEWNAME))
Beispiel #7
0
    def test_update_when_data_has_modified_attributes(self):
        data_merged = DEFAULT_RACK_TEMPLATE.copy()

        data_merged['name'] = 'Rename Rack'

        self.resource.get_by.return_value = [DEFAULT_RACK_TEMPLATE]
        self.resource.update.return_value = data_merged

        self.mock_ansible_module.params = PARAMS_WITH_CHANGES

        RackModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=RackModule.MSG_UPDATED,
            ansible_facts=dict(rack=data_merged))
    def test_update_when_data_has_modified_attributes_with_same_mountUris(
            self):
        data_merged = DEFAULT_RACK_TEMPLATE.copy()
        DEFAULT_RACK_TEMPLATE['rackMounts'] = [{
            'mountUri':
            '/rest/server-hardware/31393736-3831-4753-569h-30335837524E',
            'topUSlot': 22
        }]
        data_merged['name'] = 'Rename Rack'

        self.resource.update.return_value = data_merged
        self.resource.data = DEFAULT_RACK_TEMPLATE
        self.mock_ansible_module.params = PARAMS_WITH_CHANGES
        self.resource.get_by.return_value = [
            UPDATED_RACK_TEMPLATE_WITH_DIFFERENT_MOUNTURIS
        ]

        RackModule().run()

        self.mock_ansible_module.exit_json.assert_called_once_with(
            changed=True,
            msg=RackModule.MSG_UPDATED,
            ansible_facts=dict(rack=data_merged))