mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-20 03:40:22 -07:00
Move modules and module_utils unit tests to correct place (#81)
* Move modules and module_utils unit tests to correct place. * Update ignore.txt * Fix imports. * Fix typos. * Fix more typos.
This commit is contained in:
parent
ab3c2120fb
commit
be191cce6c
1170 changed files with 732 additions and 751 deletions
51
tests/unit/plugins/module_utils/test_kubevirt.py
Normal file
51
tests/unit/plugins/module_utils/test_kubevirt.py
Normal file
|
@ -0,0 +1,51 @@
|
|||
import json
|
||||
import pytest
|
||||
|
||||
from ansible_collections.community.general.plugins.module_utils import kubevirt as mymodule
|
||||
|
||||
|
||||
def test_simple_merge_dicts():
|
||||
dict1 = {'labels': {'label1': 'value'}}
|
||||
dict2 = {'labels': {'label2': 'value'}}
|
||||
dict3 = json.dumps({'labels': {'label1': 'value', 'label2': 'value'}}, sort_keys=True)
|
||||
assert dict3 == json.dumps(dict(mymodule.KubeVirtRawModule.merge_dicts(dict1, dict2)), sort_keys=True)
|
||||
|
||||
|
||||
def test_simple_multi_merge_dicts():
|
||||
dict1 = {'labels': {'label1': 'value', 'label3': 'value'}}
|
||||
dict2 = {'labels': {'label2': 'value'}}
|
||||
dict3 = json.dumps({'labels': {'label1': 'value', 'label2': 'value', 'label3': 'value'}}, sort_keys=True)
|
||||
assert dict3 == json.dumps(dict(mymodule.KubeVirtRawModule.merge_dicts(dict1, dict2)), sort_keys=True)
|
||||
|
||||
|
||||
def test_double_nested_merge_dicts():
|
||||
dict1 = {'metadata': {'labels': {'label1': 'value', 'label3': 'value'}}}
|
||||
dict2 = {'metadata': {'labels': {'label2': 'value'}}}
|
||||
dict3 = json.dumps({'metadata': {'labels': {'label1': 'value', 'label2': 'value', 'label3': 'value'}}}, sort_keys=True)
|
||||
assert dict3 == json.dumps(dict(mymodule.KubeVirtRawModule.merge_dicts(dict1, dict2)), sort_keys=True)
|
||||
|
||||
|
||||
@pytest.mark.parametrize("lval, operations, rval, result", [
|
||||
('v1', ['<', '<='], 'v2', True),
|
||||
('v1', ['>', '>=', '=='], 'v2', False),
|
||||
('v1', ['>'], 'v1alpha1', True),
|
||||
('v1', ['==', '<', '<='], 'v1alpha1', False),
|
||||
('v1beta5', ['==', '<=', '>='], 'v1beta5', True),
|
||||
('v1beta5', ['<', '>', '!='], 'v1beta5', False),
|
||||
|
||||
])
|
||||
def test_kubeapiversion_comparisons(lval, operations, rval, result):
|
||||
KubeAPIVersion = mymodule.KubeAPIVersion
|
||||
for op in operations:
|
||||
test = '(KubeAPIVersion("{0}") {1} KubeAPIVersion("{2}")) == {3}'.format(lval, op, rval, result)
|
||||
assert eval(test)
|
||||
|
||||
|
||||
@pytest.mark.parametrize("ver", ('nope', 'v1delta7', '1.5', 'v1beta', 'v'))
|
||||
def test_kubeapiversion_unsupported_versions(ver):
|
||||
threw = False
|
||||
try:
|
||||
mymodule.KubeAPIVersion(ver)
|
||||
except ValueError:
|
||||
threw = True
|
||||
assert threw
|
Loading…
Add table
Add a link
Reference in a new issue