mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-22 12:50:22 -07:00
Various fixes (#34815)
This patch was primarily an effort to reduce traceback errors for work that sivel was doing. Part of (and in some cases in addition to) that, the following was done. * Removed re-def of cleanup_tokens. * Changed parameter args to be keywords. * Changed imports to include new module_util locations. * Imports also include developing (sideband) module_util locations. * Changed to using F5Client and plain AnsibleModule to prevent tracebacks caused by missing libraries. * Removed init and update methods from most Parameter classes (optimization) as its now included in module_utils. * Changed module and module param references to take into account the new self.module arg. * Minor bug fixes made during this refactor.
This commit is contained in:
parent
18d33eeb89
commit
44a5b3abb4
22 changed files with 838 additions and 998 deletions
|
@ -18,8 +18,7 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.f5_utils import F5ModuleError
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_asm_policy import V1Parameters
|
||||
|
@ -28,7 +27,8 @@ try:
|
|||
from library.bigip_asm_policy import V1Manager
|
||||
from library.bigip_asm_policy import V2Manager
|
||||
from library.bigip_asm_policy import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
|
@ -38,7 +38,8 @@ except ImportError:
|
|||
from ansible.modules.network.f5.bigip_asm_policy import V1Manager
|
||||
from ansible.modules.network.f5.bigip_asm_policy import V2Manager
|
||||
from ansible.modules.network.f5.bigip_asm_policy import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -66,7 +67,7 @@ class TestParameters(unittest.TestCase):
|
|||
file='/var/fake/fake.xml'
|
||||
)
|
||||
|
||||
p = V1Parameters(args)
|
||||
p = V1Parameters(params=args)
|
||||
assert p.name == 'fake_policy'
|
||||
assert p.state == 'present'
|
||||
assert p.file == '/var/fake/fake.xml'
|
||||
|
@ -78,14 +79,12 @@ class TestParameters(unittest.TestCase):
|
|||
template='LotusDomino 6.5 (http)'
|
||||
)
|
||||
|
||||
p = V1Parameters(args)
|
||||
p = V1Parameters(params=args)
|
||||
assert p.name == 'fake_policy'
|
||||
assert p.state == 'present'
|
||||
assert p.template == 'POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTP'
|
||||
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
class TestManager(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.spec = ArgumentSpec()
|
||||
|
@ -102,14 +101,13 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
)
|
||||
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=False)
|
||||
v1.import_to_device = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(side_effect=[True, True])
|
||||
|
@ -117,7 +115,7 @@ class TestManager(unittest.TestCase):
|
|||
v1.apply_on_device = Mock(return_value=True)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -139,14 +137,13 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=False)
|
||||
v1.import_to_device = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(side_effect=[True, True])
|
||||
|
@ -156,7 +153,7 @@ class TestManager(unittest.TestCase):
|
|||
v1._file_is_missing = Mock(return_value=False)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -177,14 +174,13 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=False)
|
||||
v1.import_to_device = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(side_effect=[True, True])
|
||||
|
@ -195,7 +191,7 @@ class TestManager(unittest.TestCase):
|
|||
v1._file_is_missing = Mock(return_value=False)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -215,14 +211,13 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=True)
|
||||
v1.update_on_device = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(side_effect=[True, True])
|
||||
|
@ -230,7 +225,7 @@ class TestManager(unittest.TestCase):
|
|||
v1.apply_on_device = Mock(return_value=True)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -249,20 +244,19 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_active.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_active.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=True)
|
||||
v1.read_current_from_device = Mock(return_value=current)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -280,21 +274,20 @@ class TestManager(unittest.TestCase):
|
|||
active='no'
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_active.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_active.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=True)
|
||||
v1.read_current_from_device = Mock(return_value=current)
|
||||
v1.update_on_device = Mock(return_value=True)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -313,20 +306,19 @@ class TestManager(unittest.TestCase):
|
|||
active='no'
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=True)
|
||||
v1.read_current_from_device = Mock(return_value=current)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -344,22 +336,21 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=False)
|
||||
v1.import_to_device = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(side_effect=[True, True])
|
||||
v1.read_current_from_device = Mock(return_value=current)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -380,15 +371,14 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=False)
|
||||
v1.create_from_template_on_device = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(side_effect=[True, True])
|
||||
|
@ -396,7 +386,7 @@ class TestManager(unittest.TestCase):
|
|||
v1._file_is_missing = Mock(return_value=False)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -416,14 +406,13 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=False)
|
||||
v1.import_to_device = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(side_effect=[True, True])
|
||||
|
@ -434,7 +423,7 @@ class TestManager(unittest.TestCase):
|
|||
v1._file_is_missing = Mock(return_value=False)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -453,19 +442,18 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(side_effect=[True, False])
|
||||
v1.remove_from_device = Mock(return_value=True)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -483,21 +471,20 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
msg = 'Import policy task failed.'
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=False)
|
||||
v1.import_to_device = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(return_value=False)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -515,16 +502,15 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
current = V1Parameters(load_fixture('load_asm_policy_inactive.json'))
|
||||
client = AnsibleF5Client(
|
||||
current = V1Parameters(params=load_fixture('load_asm_policy_inactive.json'))
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
msg = 'Apply policy task failed.'
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=True)
|
||||
v1.wait_for_task = Mock(return_value=False)
|
||||
v1.update_on_device = Mock(return_value=True)
|
||||
|
@ -532,7 +518,7 @@ class TestManager(unittest.TestCase):
|
|||
v1.apply_on_device = Mock(return_value=True)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -549,21 +535,20 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
msg = 'Failed to create ASM policy: fake_policy'
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(return_value=False)
|
||||
v1.create_on_device = Mock(return_value=False)
|
||||
v1._file_is_missing = Mock(return_value=False)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
@ -580,19 +565,18 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
msg = 'Failed to delete ASM policy: fake_policy'
|
||||
# Override methods to force specific logic in the module to happen
|
||||
v1 = V1Manager(client)
|
||||
v1 = V1Manager(module=module)
|
||||
v1.exists = Mock(side_effect=[True, True])
|
||||
v1.remove_from_device = Mock(return_value=True)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.version_is_less_than_13 = Mock(return_value=False)
|
||||
mm.get_manager = Mock(return_value=v1)
|
||||
|
||||
|
|
|
@ -17,20 +17,22 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_command import Parameters
|
||||
from library.bigip_command import ModuleManager
|
||||
from library.bigip_command import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
from ansible.modules.network.f5.bigip_command import Parameters
|
||||
from ansible.modules.network.f5.bigip_command import ModuleManager
|
||||
from ansible.modules.network.f5.bigip_command import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -61,12 +63,10 @@ class TestParameters(unittest.TestCase):
|
|||
user='admin',
|
||||
password='password'
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert len(p.commands) == 2
|
||||
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
class TestManager(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
@ -82,12 +82,12 @@ class TestManager(unittest.TestCase):
|
|||
password='password'
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
|
||||
mm = ModuleManager(module=module)
|
||||
mm._run_commands = Mock(return_value=[])
|
||||
mm.execute_on_device = Mock(return_value=[])
|
||||
|
||||
|
@ -107,12 +107,11 @@ class TestManager(unittest.TestCase):
|
|||
password='password'
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm._run_commands = Mock(return_value=[])
|
||||
mm.execute_on_device = Mock(return_value=[])
|
||||
|
||||
|
@ -132,12 +131,12 @@ class TestManager(unittest.TestCase):
|
|||
password='password',
|
||||
transport='cli'
|
||||
))
|
||||
client = AnsibleF5Client(
|
||||
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm._run_commands = Mock(return_value=[])
|
||||
mm.execute_on_device = Mock(return_value=[])
|
||||
|
||||
|
@ -159,12 +158,11 @@ class TestManager(unittest.TestCase):
|
|||
user='admin',
|
||||
password='password'
|
||||
))
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm._run_commands = Mock(return_value=[])
|
||||
mm.execute_on_device = Mock(return_value=[])
|
||||
|
||||
|
|
|
@ -17,20 +17,22 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_config import Parameters
|
||||
from library.bigip_config import ModuleManager
|
||||
from library.bigip_config import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
from ansible.modules.network.f5.bigip_config import Parameters
|
||||
from ansible.modules.network.f5.bigip_config import ModuleManager
|
||||
from ansible.modules.network.f5.bigip_config import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -68,14 +70,12 @@ class TestParameters(unittest.TestCase):
|
|||
user='admin',
|
||||
password='password'
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.save == 'yes'
|
||||
assert p.reset == 'yes'
|
||||
assert p.merge_content == 'asdasd'
|
||||
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
class TestManager(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
@ -92,12 +92,11 @@ class TestManager(unittest.TestCase):
|
|||
password='password'
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.exit_json = Mock(return_value=True)
|
||||
|
|
|
@ -17,20 +17,22 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_configsync_actions import Parameters
|
||||
from library.bigip_configsync_actions import ModuleManager
|
||||
from library.bigip_configsync_actions import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
from ansible.modules.network.f5.bigip_configsync_actions import Parameters
|
||||
from ansible.modules.network.f5.bigip_configsync_actions import ModuleManager
|
||||
from ansible.modules.network.f5.bigip_configsync_actions import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -65,7 +67,7 @@ class TestParameters(unittest.TestCase):
|
|||
overwrite_config=True,
|
||||
device_group="foo"
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.sync_device_to_group is True
|
||||
assert p.sync_group_to_device is True
|
||||
assert p.overwrite_config is True
|
||||
|
@ -78,15 +80,13 @@ class TestParameters(unittest.TestCase):
|
|||
overwrite_config='yes',
|
||||
device_group="foo"
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.sync_device_to_group is True
|
||||
assert p.sync_group_to_device is False
|
||||
assert p.overwrite_config is True
|
||||
assert p.device_group == 'foo'
|
||||
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
class TestManager(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
@ -101,12 +101,11 @@ class TestManager(unittest.TestCase):
|
|||
user='admin'
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm._device_group_exists = Mock(return_value=True)
|
||||
|
|
|
@ -18,21 +18,24 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.f5_utils import F5ModuleError
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_device_connectivity import Parameters
|
||||
from library.bigip_device_connectivity import ApiParameters
|
||||
from library.bigip_device_connectivity import ModuleParameters
|
||||
from library.bigip_device_connectivity import ModuleManager
|
||||
from library.bigip_device_connectivity import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
from ansible.modules.network.f5.bigip_device_connectivity import Parameters
|
||||
from ansible.modules.network.f5.bigip_device_connectivity import ApiParameters
|
||||
from ansible.modules.network.f5.bigip_device_connectivity import ModuleParameters
|
||||
from ansible.modules.network.f5.bigip_device_connectivity import ModuleManager
|
||||
from ansible.modules.network.f5.bigip_device_connectivity import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -80,7 +83,7 @@ class TestParameters(unittest.TestCase):
|
|||
user='admin',
|
||||
password='password'
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = ModuleParameters(params=args)
|
||||
assert p.multicast_port == 1010
|
||||
assert p.multicast_address == '10.10.10.10'
|
||||
assert p.multicast_interface == 'eth0'
|
||||
|
@ -100,7 +103,7 @@ class TestParameters(unittest.TestCase):
|
|||
|
||||
def test_api_parameters(self):
|
||||
params = load_fixture('load_tm_cm_device.json')
|
||||
p = Parameters(params)
|
||||
p = ApiParameters(params=params)
|
||||
assert p.multicast_port == 62960
|
||||
assert p.multicast_address == '224.0.0.245'
|
||||
assert p.multicast_interface == 'eth0'
|
||||
|
@ -118,8 +121,6 @@ class TestParameters(unittest.TestCase):
|
|||
assert p.unicast_failover[0]['effectivePort'] == 1026
|
||||
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
class TestManager(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
@ -141,14 +142,13 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(load_fixture('load_tm_cm_device_default.json'))
|
||||
current = ApiParameters(params=load_fixture('load_tm_cm_device_default.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -159,7 +159,7 @@ class TestManager(unittest.TestCase):
|
|||
assert results['changed'] is True
|
||||
assert results['config_sync_ip'] == '10.1.30.1'
|
||||
assert results['mirror_primary_address'] == '10.1.30.1'
|
||||
assert len(results.keys()) == 3
|
||||
assert len(results.keys()) == 4
|
||||
|
||||
def test_set_primary_mirror_address_none(self, *args):
|
||||
set_module_args(dict(
|
||||
|
@ -171,14 +171,13 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(load_fixture('load_tm_cm_device.json'))
|
||||
current = ApiParameters(params=load_fixture('load_tm_cm_device.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -200,14 +199,13 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(load_fixture('load_tm_cm_device.json'))
|
||||
current = ApiParameters(params=load_fixture('load_tm_cm_device.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -229,14 +227,13 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(load_fixture('load_tm_cm_device.json'))
|
||||
current = ApiParameters(params=load_fixture('load_tm_cm_device.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -258,14 +255,13 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(load_fixture('load_tm_cm_device.json'))
|
||||
current = ApiParameters(params=load_fixture('load_tm_cm_device.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -286,14 +282,13 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(load_fixture('load_tm_cm_device.json'))
|
||||
current = ApiParameters(params=load_fixture('load_tm_cm_device.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -315,14 +310,13 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(load_fixture('load_tm_cm_device.json'))
|
||||
current = ApiParameters(params=load_fixture('load_tm_cm_device.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -344,14 +338,13 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(load_fixture('load_tm_cm_device.json'))
|
||||
current = ApiParameters(params=load_fixture('load_tm_cm_device.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
|
|
@ -18,21 +18,22 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.f5_utils import F5ModuleError
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_device_dns import Parameters
|
||||
from library.bigip_device_dns import ModuleManager
|
||||
from library.bigip_device_dns import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
from ansible.modules.network.f5.bigip_device_dns import Parameters
|
||||
from ansible.modules.network.f5.bigip_device_dns import ModuleManager
|
||||
from ansible.modules.network.f5.bigip_device_dns import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -71,7 +72,7 @@ class TestParameters(unittest.TestCase):
|
|||
user='admin',
|
||||
password='password'
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.cache == 'disable'
|
||||
assert p.name_servers == ['10.10.10.10', '11.11.11.11']
|
||||
assert p.search == ['14.14.14.14', '15.15.15.15']
|
||||
|
@ -83,16 +84,16 @@ class TestParameters(unittest.TestCase):
|
|||
args = dict(
|
||||
ip_version=6
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.ip_version == 'options inet6'
|
||||
|
||||
def test_ensure_forwards_raises_exception(self):
|
||||
args = dict(
|
||||
forwarders=['12.12.12.12', '13.13.13.13'],
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
with pytest.raises(F5ModuleError) as ex:
|
||||
foo = p.forwarders
|
||||
p.forwarders
|
||||
assert 'The modifying of forwarders is not supported' in str(ex)
|
||||
|
||||
|
||||
|
@ -101,8 +102,6 @@ class TestManager(unittest.TestCase):
|
|||
def setUp(self):
|
||||
self.spec = ArgumentSpec()
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
def test_update_settings(self, *args):
|
||||
set_module_args(dict(
|
||||
cache='disable',
|
||||
|
@ -123,12 +122,11 @@ class TestManager(unittest.TestCase):
|
|||
)
|
||||
)
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
|
|
@ -17,20 +17,22 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_device_httpd import Parameters
|
||||
from library.bigip_device_httpd import ModuleManager
|
||||
from library.bigip_device_httpd import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
from ansible.modules.network.f5.bigip_device_httpd import Parameters
|
||||
from ansible.modules.network.f5.bigip_device_httpd import ModuleManager
|
||||
from ansible.modules.network.f5.bigip_device_httpd import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -65,20 +67,18 @@ class TestParameters(unittest.TestCase):
|
|||
auth_pam_validate_ip='on'
|
||||
)
|
||||
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.auth_name == 'BIG-IP'
|
||||
assert p.auth_pam_idle_timeout == 1200
|
||||
assert p.auth_pam_validate_ip == 'on'
|
||||
|
||||
def test_api_parameters(self):
|
||||
args = load_fixture('load_sys_httpd.json')
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.auth_name == 'BIG-IP'
|
||||
assert p.auth_pam_idle_timeout == 1200
|
||||
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
class TestModuleManager(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
@ -103,16 +103,13 @@ class TestModuleManager(unittest.TestCase):
|
|||
)
|
||||
)
|
||||
|
||||
current = Parameters(
|
||||
load_fixture('load_sys_httpd.json')
|
||||
)
|
||||
current = Parameters(params=load_fixture('load_sys_httpd.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
|
|
@ -17,20 +17,22 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_device_ntp import Parameters
|
||||
from library.bigip_device_ntp import ModuleManager
|
||||
from library.bigip_device_ntp import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
from ansible.modules.network.f5.bigip_device_ntp import Parameters
|
||||
from ansible.modules.network.f5.bigip_device_ntp import ModuleManager
|
||||
from ansible.modules.network.f5.bigip_device_ntp import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -65,7 +67,7 @@ class TestParameters(unittest.TestCase):
|
|||
timezone='Arctic/Longyearbyen'
|
||||
)
|
||||
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.ntp_servers == ntp
|
||||
assert p.timezone == 'Arctic/Longyearbyen'
|
||||
|
||||
|
@ -76,13 +78,11 @@ class TestParameters(unittest.TestCase):
|
|||
timezone='Arctic/Longyearbyen'
|
||||
)
|
||||
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.ntp_servers == ntp
|
||||
assert p.timezone == 'Arctic/Longyearbyen'
|
||||
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
class TestModuleManager(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
@ -101,16 +101,13 @@ class TestModuleManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(
|
||||
load_fixture('load_ntp.json')
|
||||
)
|
||||
current = Parameters(params=load_fixture('load_ntp.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -132,16 +129,13 @@ class TestModuleManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(
|
||||
load_fixture('load_ntp.json')
|
||||
)
|
||||
current = Parameters(params=load_fixture('load_ntp.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -165,16 +159,13 @@ class TestModuleManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(
|
||||
load_fixture('load_ntp.json')
|
||||
)
|
||||
current = Parameters(params=load_fixture('load_ntp.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
@ -200,16 +191,13 @@ class TestModuleManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(
|
||||
load_fixture('load_ntp.json')
|
||||
)
|
||||
current = Parameters(params=load_fixture('load_ntp.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.absent_on_device = Mock(return_value=True)
|
||||
|
@ -233,16 +221,13 @@ class TestModuleManager(unittest.TestCase):
|
|||
|
||||
# Configure the parameters that would be returned by querying the
|
||||
# remote device
|
||||
current = Parameters(
|
||||
load_fixture('load_ntp.json')
|
||||
)
|
||||
current = Parameters(params=load_fixture('load_ntp.json'))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.absent_on_device = Mock(return_value=True)
|
||||
|
|
|
@ -17,20 +17,22 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_device_sshd import Parameters
|
||||
from library.bigip_device_sshd import ModuleManager
|
||||
from library.bigip_device_sshd import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
from ansible.modules.network.f5.bigip_device_sshd import Parameters
|
||||
from ansible.modules.network.f5.bigip_device_sshd import ModuleManager
|
||||
from ansible.modules.network.f5.bigip_device_sshd import ArgumentSpec
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -71,7 +73,7 @@ class TestParameters(unittest.TestCase):
|
|||
user='admin',
|
||||
password='password'
|
||||
)
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.allow == ['all']
|
||||
assert p.banner == 'enabled'
|
||||
assert p.banner_text == 'asdf'
|
||||
|
@ -86,8 +88,6 @@ class TestManager(unittest.TestCase):
|
|||
def setUp(self):
|
||||
self.spec = ArgumentSpec()
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
def test_update_settings(self, *args):
|
||||
set_module_args(dict(
|
||||
allow=['all'],
|
||||
|
@ -110,12 +110,11 @@ class TestManager(unittest.TestCase):
|
|||
)
|
||||
)
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
|
||||
# Override methods to force specific logic in the module to happen
|
||||
mm.update_on_device = Mock(return_value=True)
|
||||
|
|
|
@ -17,7 +17,7 @@ if sys.version_info < (2, 7):
|
|||
from ansible.compat.tests import unittest
|
||||
from ansible.compat.tests.mock import Mock
|
||||
from ansible.compat.tests.mock import patch
|
||||
from ansible.module_utils.f5_utils import AnsibleF5Client
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
try:
|
||||
from library.bigip_device_trust import Parameters
|
||||
|
@ -25,7 +25,8 @@ try:
|
|||
from library.bigip_device_trust import ArgumentSpec
|
||||
from library.bigip_device_trust import HAS_F5SDK
|
||||
from library.bigip_device_trust import HAS_NETADDR
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from library.module_utils.network.f5.common import F5ModuleError
|
||||
from library.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from test.unit.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
try:
|
||||
|
@ -34,7 +35,8 @@ except ImportError:
|
|||
from ansible.modules.network.f5.bigip_device_trust import ArgumentSpec
|
||||
from ansible.modules.network.f5.bigip_device_trust import HAS_F5SDK
|
||||
from ansible.modules.network.f5.bigip_device_trust import HAS_NETADDR
|
||||
from ansible.module_utils.f5_utils import iControlUnexpectedHTTPError
|
||||
from ansible.module_utils.network.f5.common import F5ModuleError
|
||||
from ansible.module_utils.network.f5.common import iControlUnexpectedHTTPError
|
||||
from units.modules.utils import set_module_args
|
||||
except ImportError:
|
||||
raise SkipTest("F5 Ansible modules require the f5-sdk Python library")
|
||||
|
@ -74,7 +76,7 @@ class TestParameters(unittest.TestCase):
|
|||
peer_password='secret'
|
||||
)
|
||||
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.peer_server == '10.10.10.10'
|
||||
assert p.peer_hostname == 'foo.bar.baz'
|
||||
assert p.peer_user == 'admin'
|
||||
|
@ -89,7 +91,7 @@ class TestParameters(unittest.TestCase):
|
|||
type='peer'
|
||||
)
|
||||
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.peer_server == '10.10.10.10'
|
||||
assert p.peer_hostname == 'foo.bar.baz'
|
||||
assert p.peer_user == 'admin'
|
||||
|
@ -105,7 +107,7 @@ class TestParameters(unittest.TestCase):
|
|||
type='subordinate'
|
||||
)
|
||||
|
||||
p = Parameters(args)
|
||||
p = Parameters(params=args)
|
||||
assert p.peer_server == '10.10.10.10'
|
||||
assert p.peer_hostname == 'foo.bar.baz'
|
||||
assert p.peer_user == 'admin'
|
||||
|
@ -113,8 +115,6 @@ class TestParameters(unittest.TestCase):
|
|||
assert p.type is False
|
||||
|
||||
|
||||
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
|
||||
return_value=True)
|
||||
class TestManager(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
@ -131,15 +131,14 @@ class TestManager(unittest.TestCase):
|
|||
user='admin'
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
# Override methods in the specific type of manager
|
||||
mm = ModuleManager(client)
|
||||
mm.exists = Mock(side_effect=[False, True])
|
||||
mm = ModuleManager(module=module)
|
||||
mm.exists = Mock(return_value=False)
|
||||
mm.create_on_device = Mock(return_value=True)
|
||||
|
||||
results = mm.exec_module()
|
||||
|
@ -157,14 +156,13 @@ class TestManager(unittest.TestCase):
|
|||
user='admin'
|
||||
))
|
||||
|
||||
client = AnsibleF5Client(
|
||||
module = AnsibleModule(
|
||||
argument_spec=self.spec.argument_spec,
|
||||
supports_check_mode=self.spec.supports_check_mode,
|
||||
f5_product_name=self.spec.f5_product_name
|
||||
supports_check_mode=self.spec.supports_check_mode
|
||||
)
|
||||
|
||||
# Override methods in the specific type of manager
|
||||
mm = ModuleManager(client)
|
||||
mm = ModuleManager(module=module)
|
||||
mm.exists = Mock(return_value=True)
|
||||
|
||||
results = mm.exec_module()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue