def test_ensure_feature_is_enabled_called(self):
        set_module_args(
            dict(
                nitro_user='******',
                nitro_pass='******',
                nsip='192.0.2.1',
                state='present',
            ))
        from ansible.modules.network.netscaler import netscaler_gslb_site

        gslb_site_proxy_mock = Mock()
        ensure_feature_is_enabled_mock = Mock()
        client_mock = Mock()

        with patch.multiple(
                'ansible.modules.network.netscaler.netscaler_gslb_site',
                get_nitro_client=Mock(return_value=client_mock),
                gslb_site_exists=Mock(side_effect=[False, True]),
                gslb_site_identical=Mock(side_effect=[True]),
                nitro_exception=self.MockException,
                ensure_feature_is_enabled=ensure_feature_is_enabled_mock,
                ConfigProxy=Mock(return_value=gslb_site_proxy_mock),
        ):
            self.module = netscaler_gslb_site
            self.exited()
            ensure_feature_is_enabled_mock.assert_called_with(
                client_mock, 'GSLB')
    def test_ensure_feature_is_enabled_called(self):
        set_module_args(dict(
            nitro_user='******',
            nitro_pass='******',
            nsip='1.1.1.1',
            state='present',
        ))
        from ansible.modules.network.netscaler import netscaler_gslb_site

        gslb_site_proxy_mock = Mock()
        ensure_feature_is_enabled_mock = Mock()
        client_mock = Mock()

        with patch.multiple(
            'ansible.modules.network.netscaler.netscaler_gslb_site',
            get_nitro_client=Mock(return_value=client_mock),
            gslb_site_exists=Mock(side_effect=[False, True]),
            gslb_site_identical=Mock(side_effect=[True]),
            nitro_exception=self.MockException,
            ensure_feature_is_enabled=ensure_feature_is_enabled_mock,
            ConfigProxy=Mock(return_value=gslb_site_proxy_mock),
        ):
            self.module = netscaler_gslb_site
            self.exited()
            ensure_feature_is_enabled_mock.assert_called_with(client_mock, 'GSLB')
    def test_add_host_key(self):

        # Copied
        args = json.dumps(dict(ANSIBLE_MODULE_ARGS={}))
        # unittest doesn't have a clean place to use a context manager, so we have to enter/exit manually

        with swap_stdin_and_argv(stdin_data=args):
            ansible.module_utils.basic._ANSIBLE_ARGS = None
            self.module = ansible.module_utils.basic.AnsibleModule(
                argument_spec=dict())

            get_bin_path = Mock()
            get_bin_path.return_value = keyscan_cmd = "/custom/path/ssh-keyscan"
            self.module.get_bin_path = get_bin_path

            run_command = Mock()
            run_command.return_value = (
                0, "Needs output, otherwise thinks ssh-keyscan timed out'", "")
            self.module.run_command = run_command

            append_to_file = Mock()
            append_to_file.return_value = (None, )
            self.module.append_to_file = append_to_file

            with patch('os.path.isdir', return_value=True):
                with patch('os.path.exists', return_value=True):
                    for u in self.urls:
                        if self.urls[u]['is_ssh_url']:
                            known_hosts.add_host_key(self.module,
                                                     self.urls[u]['get_fqdn'],
                                                     port=self.urls[u]['port'])
                            run_command.assert_called_with(
                                keyscan_cmd + self.urls[u]['add_host_key_cmd'])
Пример #4
0
    def test_ensure_feature_is_enabled_called(self):
        set_module_args(dict(
            nitro_user='******',
            nitro_pass='******',
            nsip='1.1.1.1',
            state='present',
            save_config=False,
        ))
        from ansible.modules.network.netscaler import netscaler_lb_vserver

        client_mock = Mock()

        lb_vserver_proxy_mock = Mock()
        feature_mock = Mock()

        with patch.multiple(
            'ansible.modules.network.netscaler.netscaler_lb_vserver',
            get_nitro_client=Mock(return_value=client_mock),
            lb_vserver_exists=Mock(side_effect=[True, True]),
            lb_vserver_identical=Mock(side_effect=[True, True]),
            servicegroup_bindings_identical=Mock(side_effect=[True, True]),
            service_bindings_identical=Mock(side_effect=[True, True]),

            ConfigProxy=Mock(return_value=lb_vserver_proxy_mock),
            ensure_feature_is_enabled=feature_mock,
            do_state_change=Mock(return_value=Mock(errorcode=0)),
        ):
            self.module = netscaler_lb_vserver
            self.exited()
            feature_mock.assert_called_with(client_mock, 'LB')
Пример #5
0
    def test_ensure_feature_is_enabled_called(self):
        set_module_args(
            dict(
                nitro_user='******',
                nitro_pass='******',
                nsip='192.0.2.1',
                state='present',
                save_config=False,
            ))
        from ansible.modules.network.netscaler import netscaler_lb_monitor

        client_mock = Mock()

        lb_monitor_proxy_mock = Mock(diff_object=Mock(return_value={}))
        feature_mock = Mock()

        with patch.multiple(
                'ansible.modules.network.netscaler.netscaler_lb_monitor',
                get_nitro_client=Mock(return_value=client_mock),
                lbmonitor_exists=Mock(side_effect=[True, True]),
                lbmonitor_identical=Mock(side_effect=[True, True]),
                ConfigProxy=Mock(return_value=lb_monitor_proxy_mock),
                ensure_feature_is_enabled=feature_mock,
        ):
            self.module = netscaler_lb_monitor
            self.exited()
            feature_mock.assert_called_with(client_mock, 'LB')
Пример #6
0
    def test_add_host_key(self):

        # Copied
        args = json.dumps(dict(ANSIBLE_MODULE_ARGS={}))
        # unittest doesn't have a clean place to use a context manager, so we have to enter/exit manually

        with swap_stdin_and_argv(stdin_data=args):
            ansible.module_utils.basic._ANSIBLE_ARGS = None
            self.module = ansible.module_utils.basic.AnsibleModule(argument_spec=dict())

            get_bin_path = Mock()
            get_bin_path.return_value = keyscan_cmd = "/custom/path/ssh-keyscan"
            self.module.get_bin_path = get_bin_path

            run_command = Mock()
            run_command.return_value = (0, "Needs output, otherwise thinks ssh-keyscan timed out'", "")
            self.module.run_command = run_command

            append_to_file = Mock()
            append_to_file.return_value = (None,)
            self.module.append_to_file = append_to_file

            with patch('os.path.isdir', return_value=True):
                with patch('os.path.exists', return_value=True):
                    for u in self.urls:
                        if self.urls[u]['is_ssh_url']:
                            known_hosts.add_host_key(self.module, self.urls[u]['get_fqdn'], port=self.urls[u]['port'])
                            run_command.assert_called_with(keyscan_cmd + self.urls[u]['add_host_key_cmd'])
    def test_ensure_feature_is_enabled_called(self):
        set_module_args(
            dict(
                nitro_user='******',
                nitro_pass='******',
                nsip='1.1.1.1',
                state='present',
                save_config=False,
            ))
        from ansible.modules.network.netscaler import netscaler_lb_vserver

        client_mock = Mock()

        lb_vserver_proxy_mock = Mock()
        feature_mock = Mock()

        with patch.multiple(
                'ansible.modules.network.netscaler.netscaler_lb_vserver',
                get_nitro_client=Mock(return_value=client_mock),
                lb_vserver_exists=Mock(side_effect=[True, True]),
                lb_vserver_identical=Mock(side_effect=[True, True]),
                servicegroup_bindings_identical=Mock(side_effect=[True, True]),
                service_bindings_identical=Mock(side_effect=[True, True]),
                ConfigProxy=Mock(return_value=lb_vserver_proxy_mock),
                ensure_feature_is_enabled=feature_mock,
                do_state_change=Mock(return_value=Mock(errorcode=0)),
        ):
            self.module = netscaler_lb_vserver
            self.exited()
            feature_mock.assert_called_with(client_mock, 'LB')