Unit tests: share common code (#31456)

* move set_module_args to units.modules.utils
* unit tests: reuse set_module_args
* unit tests: mock exit/fail_json in module.utils.ModuleTestCase
* unit tests: use module.utils.ModuleTestCase
* unit tests: fix 'import shadowed by loop variable'
This commit is contained in:
Pilou 2017-11-17 18:17:07 +01:00 committed by Matt Clay
commit a5c9726502
154 changed files with 671 additions and 1113 deletions

View file

@ -23,10 +23,8 @@ from __future__ import (absolute_import, division, print_function)
from nose.plugins.skip import SkipTest
import pytest
import sys
import json
from ansible.module_utils._text import to_bytes
from ansible.module_utils import basic
from ansible.module_utils.ec2 import HAS_BOTO3
from units.modules.utils import set_module_args
if not HAS_BOTO3:
raise SkipTest("test_api_gateway.py requires the `boto3` and `botocore` modules")
@ -34,11 +32,6 @@ if not HAS_BOTO3:
import ansible.modules.cloud.amazon.aws_api_gateway as agw
def set_module_args(args):
args = json.dumps({'ANSIBLE_MODULE_ARGS': args})
basic._ANSIBLE_ARGS = to_bytes(args)
exit_return_dict = {}

View file

@ -20,12 +20,11 @@
from __future__ import (absolute_import, division, print_function)
import copy
import json
import pytest
from ansible.compat.tests.mock import MagicMock, Mock, patch
from ansible.module_utils import basic
from ansible.module_utils._text import to_bytes
from units.modules.utils import set_module_args
boto3 = pytest.importorskip("boto3")
@ -35,11 +34,6 @@ _temp = __import__("ansible.modules.cloud.amazon.lambda")
lda = getattr(_temp.modules.cloud.amazon, "lambda")
def set_module_args(args):
args = json.dumps({'ANSIBLE_MODULE_ARGS': args})
basic._ANSIBLE_ARGS = to_bytes(args)
base_lambda_config = {
'FunctionName': 'lambda_name',
'Role': 'arn:aws:iam::987654321012:role/lambda_basic_execution',

View file

@ -19,13 +19,12 @@
# Make coding more python3-ish
from __future__ import (absolute_import, division, print_function)
import copy
from nose.plugins.skip import SkipTest
from ansible.module_utils.aws.core import HAS_BOTO3
from ansible.module_utils import basic
from ansible.module_utils.basic import to_bytes
from ansible.compat.tests.mock import MagicMock
import json
import copy
from units.modules.utils import set_module_args
if not HAS_BOTO3:
raise SkipTest("test_api_gateway.py requires the `boto3` and `botocore` modules")
@ -45,11 +44,6 @@ base_module_args = {
}
def set_module_args(mod_args):
args = json.dumps({'ANSIBLE_MODULE_ARGS': mod_args})
basic._ANSIBLE_ARGS = to_bytes(args)
def test_module_is_created_sensibly():
set_module_args(base_module_args)
module = setup_module_object()