def test_update_configuration_delete_skip_fail(self):
        """Verify 422 and no force results in AnsibleJsonFail exception."""
        body = {
            "auditLogMaxRecords": 1000,
            "auditLogLevel": "writeOnly",
            "auditLogFullPolicy": "overWrite",
            "auditLogWarningThresholdPct": 90
        }
        initial = {
            "max_records": 2000,
            "log_level": "writeOnly",
            "full_policy": "overWrite",
            "threshold": 90,
            "force": False
        }

        self._set_args(**initial)
        with mock.patch(self.REQ_FUNC,
                        return_value=(200, {
                            "runningAsProxy": True
                        })):
            audit_log = AuditLog()

        with self.assertRaisesRegexp(
                AnsibleFailJson, r"Failed to update audit-log configuration!"):
            with mock.patch(self.REQ_FUNC,
                            side_effect=[(200, body),
                                         Exception(422,
                                                   {"errorMessage": "error"}),
                                         (200, None), (200, None)]):
                audit_log.update_configuration()
    def test_update_configuration_delete_pass(self):
        """Verify 422 and force successfully returns True."""
        body = {
            "auditLogMaxRecords": 1000,
            "auditLogLevel": "writeOnly",
            "auditLogFullPolicy": "overWrite",
            "auditLogWarningThresholdPct": 90
        }
        initial = {
            "max_records": 2000,
            "log_level": "writeOnly",
            "full_policy": "overWrite",
            "threshold": 90,
            "force": True
        }

        self._set_args(**initial)
        with mock.patch(self.REQ_FUNC,
                        return_value=(200, {
                            "runningAsProxy": True
                        })):
            audit_log = AuditLog()
            with mock.patch(self.REQ_FUNC,
                            side_effect=[(200, body),
                                         (422, {
                                             u"invalidFieldsIfKnown": None,
                                             u"errorMessage":
                                             u"Configuration change...",
                                             u"localizedMessage":
                                             u"Configuration change...",
                                             u"retcode":
                                             u"auditLogImmediateFullCondition",
                                             u"codeType": u"devicemgrerror"
                                         }), (200, None), (200, None)]):
                self.assertTrue(audit_log.update_configuration())
    def setUp(self):
        super(TestNxosVlansModule, self).setUp()

        self.mock_FACT_LEGACY_SUBSETS = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.nxos.facts.facts.FACT_LEGACY_SUBSETS'
        )
        self.FACT_LEGACY_SUBSETS = self.mock_FACT_LEGACY_SUBSETS.start()

        self.mock_get_resource_connection_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.common.cfg.base.get_resource_connection'
        )
        self.get_resource_connection_config = self.mock_get_resource_connection_config.start(
        )

        self.mock_get_resource_connection_facts = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.common.facts.facts.get_resource_connection'
        )
        self.get_resource_connection_facts = self.mock_get_resource_connection_facts.start(
        )

        self.mock_edit_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.nxos.config.vlans.vlans.Vlans.edit_config'
        )
        self.edit_config = self.mock_edit_config.start()

        self.mock_get_device_data = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.nxos.facts.vlans.vlans.VlansFacts.get_device_data'
        )
        self.get_device_data = self.mock_get_device_data.start()
Esempio n. 4
0
    def test_clear_single_configuration(self):
        self._set_args()

        # No changes are required if the domains are empty
        config = 'abc'

        ldap = self._make_ldap_instance()
        with mock.patch.object(ldap, 'get_configuration', return_value=config):
            with mock.patch(self.REQ_FUNC, return_value=(204, None)) as req:
                msg, result = ldap.clear_single_configuration()
                self.assertTrue(result)

                # Valid check_mode makes no changes
                req.reset_mock()
                ldap.check_mode = True
                msg, result = ldap.clear_single_configuration()
                self.assertTrue(result)
                self.assertFalse(req.called)

        # When domains exist, we need to clear
        ldap = self._make_ldap_instance()
        with mock.patch.object(ldap, 'get_configuration', return_value=None):
            with mock.patch(self.REQ_FUNC, return_value=(204, None)) as req:
                msg, result = ldap.clear_single_configuration()
                self.assertFalse(result)
                self.assertFalse(req.called)
Esempio n. 5
0
    def setUp(self):
        super(TestVyosStaticRoutesModule, self).setUp()
        self.mock_get_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.common.network.Config.get_config'
        )
        self.get_config = self.mock_get_config.start()

        self.mock_load_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.common.network.Config.load_config'
        )
        self.load_config = self.mock_load_config.start()

        self.mock_get_resource_connection_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.common.cfg.base.get_resource_connection'
        )
        self.get_resource_connection_config = self.mock_get_resource_connection_config.start(
        )

        self.mock_get_resource_connection_facts = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.common.facts.facts.get_resource_connection'
        )
        self.get_resource_connection_facts = self.mock_get_resource_connection_facts.start(
        )

        self.mock_execute_show_command = patch(
            'ansible.module_utils.network.vyos.facts.static_routes.static_routes.Static_routesFacts.get_device_data'
        )
        self.execute_show_command = self.mock_execute_show_command.start()
    def test_get_configuration_pass(self):
        """Validate get configuration does not throw exception when normal request is returned."""
        initial = {
            "max_records": 1000,
            "log_level": "writeOnly",
            "full_policy": "overWrite",
            "threshold": 90
        }
        expected = {
            "auditLogMaxRecords": 1000,
            "auditLogLevel": "writeOnly",
            "auditLogFullPolicy": "overWrite",
            "auditLogWarningThresholdPct": 90
        }

        self._set_args(**initial)
        with mock.patch(self.REQ_FUNC,
                        return_value=(200, {
                            "runningAsProxy": True
                        })):
            audit_log = AuditLog()

        with mock.patch(self.REQ_FUNC, return_value=(200, expected)):
            body = audit_log.get_configuration()
            self.assertTrue(body == expected)
    def setUp(self):
        super(TestNxosVlanModule, self).setUp()

        self.mock_run_commands = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules._nxos_vlan.run_commands'
        )
        self.run_commands = self.mock_run_commands.start()

        self.mock_load_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules._nxos_vlan.load_config'
        )
        self.load_config = self.mock_load_config.start()

        self.mock_get_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules._nxos_vlan.get_config'
        )
        self.get_config = self.mock_get_config.start()

        self.mock_get_capabilities = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules._nxos_vlan.get_capabilities'
        )
        self.get_capabilities = self.mock_get_capabilities.start()
        self.get_capabilities.return_value = {
            'device_info': {
                'network_os_platform': 'N9K-9000v'
            },
            'network_api': 'cliconf'
        }
Esempio n. 8
0
    def setUp(self):
        super(TestExosConfigModule, self).setUp()

        self.mock_get_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.exos_config.get_config'
        )
        self.get_config = self.mock_get_config.start()

        self.mock_load_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.exos_config.load_config'
        )
        self.load_config = self.mock_load_config.start()

        self.mock_run_commands = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.exos_config.run_commands'
        )
        self.run_commands = self.mock_run_commands.start()

        self.mock_get_startup_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.exos_config.get_startup_config'
        )
        self.get_startup_config = self.mock_get_startup_config.start()

        self.cliconf_obj = Cliconf(MagicMock())

        self.mock_get_diff = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.exos_config.get_diff'
        )
        self.get_diff = self.mock_get_diff.start()

        self.running_config = load_fixture('exos_config_config.cfg')
Esempio n. 9
0
    def setUp(self):
        super(TestEosConfigModule, self).setUp()
        self.mock_get_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.eos_config.get_config'
        )
        self.get_config = self.mock_get_config.start()

        self.mock_get_connection = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.eos_config.get_connection'
        )
        self.get_connection = self.mock_get_connection.start()

        self.mock_load_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.eos_config.load_config'
        )
        self.load_config = self.mock_load_config.start()
        self.mock_run_commands = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.eos_config.run_commands'
        )
        self.run_commands = self.mock_run_commands.start()

        self.mock_supports_sessions = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.cliconf.eos.Cliconf.supports_sessions'
        )
        self.supports_sessions = self.mock_supports_sessions.start()
        self.mock_supports_sessions.return_value = True

        self.conn = self.get_connection()
        self.conn.edit_config = MagicMock()

        self.cliconf_obj = Cliconf(MagicMock())
        self.running_config = load_fixture('eos_config_config.cfg')
Esempio n. 10
0
    def setUp(self):
        super(TestVyosFactsModule, self).setUp()
        self.mock_run_commands = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.vyos.facts.legacy.base.run_commands'
        )
        self.run_commands = self.mock_run_commands.start()

        self.mock_get_resource_connection = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.common.facts.facts.get_resource_connection'
        )
        self.get_resource_connection = self.mock_get_resource_connection.start(
        )

        self.mock_get_capabilities = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.vyos.facts.legacy.base.get_capabilities'
        )
        self.get_capabilities = self.mock_get_capabilities.start()
        self.get_capabilities.return_value = {
            'device_info': {
                'network_os': 'vyos',
                'network_os_hostname': 'vyos01',
                'network_os_model': 'VMware',
                'network_os_version': 'VyOS 1.1.7'
            },
            'network_api': 'cliconf'
        }
Esempio n. 11
0
    def test_graceful_nitro_error_on_login(self):
        set_module_args(
            dict(
                nitro_user='******',
                nitro_pass='******',
                nsip='192.0.2.1',
                state='present',
            ))
        from ansible_collections.notmintest.not_a_real_collection.plugins.modules import netscaler_gslb_vserver

        class MockException(Exception):
            def __init__(self, *args, **kwargs):
                self.errorcode = 0
                self.message = ''

        client_mock = Mock()
        client_mock.login = Mock(side_effect=MockException)
        m = Mock(return_value=client_mock)
        with patch(
                'ansible_collections.notmintest.not_a_real_collection.plugins.modules.netscaler_gslb_vserver.get_nitro_client',
                m):
            with patch(
                    'ansible_collections.notmintest.not_a_real_collection.plugins.modules.netscaler_gslb_vserver.nitro_exception',
                    MockException):
                self.module = netscaler_gslb_vserver
                result = self.failed()
                self.assertTrue(
                    result['msg'].startswith('nitro exception'),
                    msg='nitro exception during login not handled properly')
    def setUp(self):
        super(TestNxosConfigModule, self).setUp()

        self.mock_get_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.nxos_config.get_config'
        )
        self.get_config = self.mock_get_config.start()

        self.mock_load_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.nxos_config.load_config'
        )
        self.load_config = self.mock_load_config.start()

        self.mock_save_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.nxos_config.save_config'
        )
        self.save_config = self.mock_save_config.start()

        self.mock_get_connection = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.nxos_config.get_connection'
        )
        self.get_connection = self.mock_get_connection.start()

        self.conn = self.get_connection()
        self.conn.edit_config = MagicMock()

        self.mock_run_commands = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.nxos_config.run_commands'
        )
        self.run_commands = self.mock_run_commands.start()

        self.cliconf_obj = Cliconf(MagicMock())
        self.running_config = load_fixture('nxos_config', 'config.cfg')
    def setUp(self):
        super(TestIosFactsModule, self).setUp()
        self.mock_run_commands = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.ios.facts.legacy.base.run_commands'
        )
        self.run_commands = self.mock_run_commands.start()

        self.mock_get_resource_connection = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.common.facts.facts.get_resource_connection'
        )
        self.get_resource_connection = self.mock_get_resource_connection.start(
        )

        self.mock_get_capabilities = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.module_utils.network.ios.facts.legacy.base.get_capabilities'
        )
        self.get_capabilities = self.mock_get_capabilities.start()
        self.get_capabilities.return_value = {
            'device_info': {
                'network_os': 'ios',
                'network_os_hostname': 'an-ios-01',
                'network_os_image': 'flash0:/vios-adventerprisek9-m',
                'network_os_model': 'WS-C3750-24TS',
                'network_os_version': '15.6(3)M2'
            },
            'network_api': 'cliconf'
        }
Esempio n. 14
0
    def test_exception_unassign_member(self):
        set_module_args(args={
            'id': 'user-id',
            'type': 'User',
            'parent_id': 'group-id',
            'parent_type': 'Group',
            'state': 'absent'
        })

        def users_get(self, filter=None, order_by=None, group_by=None, page=None, page_size=None, query_parameters=None, commit=True,
                      callback=None, **kwargs):
            group_by = [] if group_by is None else group_by

            return [vsdk.NUUser(id='user-id'), vsdk.NUUser(id='user-id-2')]

        def group_assign(self, objects, nurest_object_type, callback=None, commit=True, **kwargs):
            raise BambouHTTPError(MockNuageConnection(status_code='500', reason='Server exception', errors={'description': 'Unable to remove member'}))

        with self.assertRaises(AnsibleFailJson) as exc:
            with patch('vspk.v5_0.fetchers.NUUsersFetcher.get', users_get):
                with patch('vspk.v5_0.NUGroup.assign', new=group_assign):
                    nuage_vspk.main()

        result = exc.exception.args[0]

        self.assertTrue(result['failed'])
        self.assertEqual(result['msg'], "Unable to remove entity as a member: [HTTP 500(Server exception)] {'description': 'Unable to remove member'}")
    def setUp(self):
        super(TestNxosInterfaceModule, self).setUp()
        self.mock_run_commands = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules._nxos_interface.run_commands')
        self.run_commands = self.mock_run_commands.start()

        self.mock_load_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules._nxos_interface.load_config')
        self.load_config = self.mock_load_config.start()
    def setUp(self):
        super(TestVyosSystemModule, self).setUp()

        self.mock_get_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.vyos_system.get_config')
        self.get_config = self.mock_get_config.start()

        self.mock_load_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.vyos_system.load_config')
        self.load_config = self.mock_load_config.start()
    def setUp(self):
        super(TestNxosBgpModule, self).setUp()

        self.mock_load_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.nxos_bgp.load_config')
        self.load_config = self.mock_load_config.start()

        self.mock_get_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.nxos_bgp.get_config')
        self.get_config = self.mock_get_config.start()
    def setUp(self):
        super(TestIosVlanModule, self).setUp()

        self.mock_run_commands = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules._ios_vlan.run_commands')
        self.run_commands = self.mock_run_commands.start()

        self.mock_load_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules._ios_vlan.load_config')
        self.load_config = self.mock_load_config.start()
Esempio n. 19
0
 def setUp(self):
     super(TestCnosUserModule, self).setUp()
     self.mock_get_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.cnos_user.get_config')
     self.get_config = self.mock_get_config.start()
     self.mock_load_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.cnos_user.load_config')
     self.load_config = self.mock_load_config.start()
     self.mock_run_commands = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.cnos_user.run_commands')
     self.run_commands = self.mock_run_commands.start()
 def setUp(self):
     self.patcher_get_config = patch(
         'ansible_collections.notmintest.not_a_real_collection.plugins.modules.enos_config.get_config'
     )
     self.mock_get_config = self.patcher_get_config.start()
     self.patcher_exec_command = patch(
         'ansible_collections.notmintest.not_a_real_collection.plugins.modules.enos_config.load_config'
     )
     self.mock_exec_command = self.patcher_exec_command.start()
    def setUp(self):
        super(TestCloudEngineLacpModule, self).setUp()

        self.mock_get_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.ce_is_is_instance.get_nc_config')
        self.get_nc_config = self.mock_get_config.start()

        self.mock_set_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.ce_is_is_instance.set_nc_config')
        self.set_nc_config = self.mock_set_config.start()
        self.set_nc_config.return_value = None
Esempio n. 22
0
    def setUp(self):
        super(TestOpenVSwitchPortModule, self).setUp()

        self.mock_run_command = (
            patch('ansible.module_utils.basic.AnsibleModule.run_command'))
        self.run_command = self.mock_run_command.start()
        self.mock_get_bin_path = (
            patch('ansible.module_utils.basic.AnsibleModule.get_bin_path'))
        self.get_bin_path = self.mock_get_bin_path.start()
Esempio n. 23
0
    def setUp(self):
        self.mock_run_nvos_commands = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.pn_user.run_cli'
        )
        self.run_nvos_commands = self.mock_run_nvos_commands.start()

        self.mock_run_check_cli = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.pn_user.check_cli'
        )
        self.run_check_cli = self.mock_run_check_cli.start()
Esempio n. 24
0
    def setUp(self):
        self.mock_run_nvos_commands = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.pn_ipv6security_raguard_vlan.run_cli'
        )
        self.run_nvos_commands = self.mock_run_nvos_commands.start()

        self.mock_run_check_cli = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.pn_ipv6security_raguard_vlan.check_cli'
        )
        self.run_check_cli = self.mock_run_check_cli.start()
 def setUp(self):
     super(TestNiosMemberModule, self).setUp()
     self.module = MagicMock(name='ansible_collections.notmintest.not_a_real_collection.plugins.modules.nios_member.WapiModule')
     self.module.check_mode = False
     self.module.params = {'provider': None}
     self.mock_wapi = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.nios_member.WapiModule')
     self.exec_command = self.mock_wapi.start()
     self.mock_wapi_run = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.nios_member.WapiModule.run')
     self.mock_wapi_run.start()
     self.load_config = self.mock_wapi_run.start()
Esempio n. 26
0
    def setUp(self):
        super(TestJunosScpModule, self).setUp()
        self.mock_get_device = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.junos_scp.get_device')
        self.get_device = self.mock_get_device.start()

        self.mock_scp = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.junos_scp.SCP')
        self.scp = self.mock_scp.start()

        self.scp_mock = MagicMock()
        self.scp().__enter__.return_value = self.scp_mock
Esempio n. 27
0
    def setUp(self):
        super(TestIosxrSystemModule, self).setUp()

        self.mock_get_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.iosxr_system.get_config')
        self.get_config = self.mock_get_config.start()

        self.mock_load_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.iosxr_system.load_config')
        self.load_config = self.mock_load_config.start()

        self.mock_is_cliconf = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.iosxr_system.is_cliconf')
        self.is_cliconf = self.mock_is_cliconf.start()
    def setUp(self):
        super(TestSlxosLldpModule, self).setUp()
        self._patch_get_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.slxos_lldp.get_config'
        )
        self._patch_load_config = patch(
            'ansible_collections.notmintest.not_a_real_collection.plugins.modules.slxos_lldp.load_config'
        )

        self._get_config = self._patch_get_config.start()
        self._load_config = self._patch_load_config.start()
    def setUp(self):
        super(TestUnitInformationModule, self).setUp()

        self.mock_make_request = patch('ansible.modules.network.ingate.'
                                       'ig_unit_information.make_request')
        self.make_request = self.mock_make_request.start()

        self.mock_is_ingatesdk_installed = patch(
            'ansible.modules.network.ingate.'
            'ig_unit_information.is_ingatesdk_installed')
        self.is_ingatesdk_installed = self.mock_is_ingatesdk_installed.start()
Esempio n. 30
0
    def setUp(self):
        super(TestDellos10ConfigModule, self).setUp()

        self.mock_get_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.dellos10_config.get_config')
        self.get_config = self.mock_get_config.start()

        self.mock_load_config = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.dellos10_config.load_config')
        self.load_config = self.mock_load_config.start()

        self.mock_run_commands = patch('ansible_collections.notmintest.not_a_real_collection.plugins.modules.dellos10_config.run_commands')
        self.run_commands = self.mock_run_commands.start()