mirror of
https://github.com/ansible-collections/community.routeros.git
synced 2025-06-21 01:25:49 +02:00
Improve tests (#348)
* Simplify filter error tests. * Convert set_module_args to context manager.
This commit is contained in:
parent
6aaead1d4a
commit
be9a7ed3ad
9 changed files with 234 additions and 231 deletions
|
@ -22,7 +22,7 @@
|
|||
assert:
|
||||
that:
|
||||
- >-
|
||||
result.msg == "Unexpected end of string during escaped parameter"
|
||||
"Unexpected end of string during escaped parameter" in result.msg
|
||||
|
||||
- name: "Test quote_argument filter"
|
||||
assert:
|
||||
|
|
|
@ -34,7 +34,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
|
||||
def test_module_fail_when_required_args_missing(self):
|
||||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
set_module_args({})
|
||||
with set_module_args({}):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -43,7 +43,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
@patch('ansible_collections.community.routeros.plugins.modules.api.ROS_api_module.api_add_path', new=fake_ros_api.path)
|
||||
def test_api_path(self):
|
||||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
set_module_args(self.config_module_args.copy())
|
||||
with set_module_args(self.config_module_args.copy()):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -54,7 +54,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['add'] = "name=unit_test_brige"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -65,7 +65,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['add'] = "name=unit_test_brige_exist"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -77,7 +77,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['remove'] = "*A1"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -88,7 +88,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['remove'] = "*A2"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -100,7 +100,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['cmd'] = "add name=unit_test_brige_arbitrary"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -111,7 +111,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['cmd'] = "add NONE_EXIST=unit_test_brige_arbitrary"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -123,7 +123,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['update'] = ".id=*A1 name=unit_test_brige"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -134,7 +134,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['update'] = ".id=*A2 name=unit_test_brige"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -146,7 +146,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['query'] = ".id name"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -162,7 +162,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['query'] = ".id other"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -174,7 +174,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['query'] = ".id name WHERE name == dummy_bridge_A2"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -188,7 +188,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['query'] = ".id name WHERE name != dummy_bridge_A2"
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -204,7 +204,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
module_args['extended_query'] = {
|
||||
'attributes': ['.id', 'name'],
|
||||
}
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -222,7 +222,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
module_args['extended_query'] = {
|
||||
'attributes': ['.id', 'other'],
|
||||
}
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -243,7 +243,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
}
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -266,7 +266,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
}
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -298,7 +298,7 @@ class TestRouterosApiModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
}
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
|
|
@ -437,7 +437,7 @@ class TestRouterosApiFactsModule(ModuleTestCase):
|
|||
|
||||
def test_module_fail_when_required_args_missing(self):
|
||||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
set_module_args({})
|
||||
with set_module_args({}):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -447,7 +447,7 @@ class TestRouterosApiFactsModule(ModuleTestCase):
|
|||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
module_args = self.config_module_args.copy()
|
||||
module_args['gather_subset'] = ['!foobar']
|
||||
set_module_args(module_args)
|
||||
with set_module_args(module_args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -456,7 +456,7 @@ class TestRouterosApiFactsModule(ModuleTestCase):
|
|||
|
||||
def test_full_run(self):
|
||||
with self.assertRaises(AnsibleExitJson) as exc:
|
||||
set_module_args(self.config_module_args.copy())
|
||||
with set_module_args(self.config_module_args.copy()):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
|
|
@ -117,7 +117,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
|
||||
def test_module_fail_when_required_args_missing(self):
|
||||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
set_module_args({})
|
||||
with set_module_args({}):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -136,7 +136,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'comment': 'bar',
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -155,7 +155,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'comment': 'bar',
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -173,7 +173,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'!comment': None,
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -190,7 +190,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'!comment': 'gone',
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -212,7 +212,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
},
|
||||
'require_matches_min': 10,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -234,7 +234,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
},
|
||||
'require_matches_min': 10,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -256,7 +256,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
},
|
||||
'require_matches_max': 1,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -277,7 +277,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'name': 'bam',
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -303,7 +303,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'require_matches_min': 2,
|
||||
'allow_no_matches': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -325,7 +325,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'values': {
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -349,7 +349,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'comment': None,
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -374,7 +374,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
},
|
||||
'_ansible_diff': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -450,7 +450,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'comment': None,
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -502,7 +502,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'comment': '',
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -553,7 +553,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'!comment': None,
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -606,7 +606,7 @@ class TestRouterosApiFindAndModifyModule(ModuleTestCase):
|
|||
'!connection-state': None,
|
||||
},
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
|
|
@ -41,7 +41,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
|
||||
def test_module_fail_when_required_args_missing(self):
|
||||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
set_module_args({})
|
||||
with set_module_args({}):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -53,7 +53,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
args.update({
|
||||
'path': 'something invalid'
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -68,7 +68,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
args.update({
|
||||
'path': 'ip dns static'
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -93,7 +93,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
args.update({
|
||||
'path': 'caps-man aaa',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -122,7 +122,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'path': 'caps-man aaa',
|
||||
'hide_defaults': False,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -155,7 +155,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'path': 'caps-man aaa',
|
||||
'unfiltered': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -189,7 +189,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'path': 'ip firewall filter',
|
||||
'handle_disabled': 'exclamation',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -278,7 +278,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'path': 'ip firewall filter',
|
||||
'handle_disabled': 'null-value',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -367,7 +367,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'path': 'ip firewall filter',
|
||||
'handle_disabled': 'omit',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -402,7 +402,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'handle_disabled': 'omit',
|
||||
'include_dynamic': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -460,7 +460,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'path': 'interface list',
|
||||
'handle_disabled': 'omit',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -513,7 +513,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'handle_disabled': 'omit',
|
||||
'include_builtin': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -605,7 +605,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'path': 'ip dhcp-server lease',
|
||||
'handle_disabled': 'omit',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -688,7 +688,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
args.update({
|
||||
'path': 'interface gre',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -776,7 +776,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'handle_disabled': 'omit',
|
||||
'hide_defaults': False,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -847,7 +847,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'handle_disabled': 'omit',
|
||||
'restrict': [],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -899,7 +899,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
'values': ['forward'],
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -970,7 +970,7 @@ class TestRouterosApiInfoModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
|
|
@ -318,7 +318,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
|
||||
def test_module_fail_when_required_args_missing(self):
|
||||
with self.assertRaises(AnsibleFailJson) as exc:
|
||||
set_module_args({})
|
||||
with set_module_args({}):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -331,7 +331,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'path': 'something invalid',
|
||||
'data': [],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -348,7 +348,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'foo': 'bar',
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -366,7 +366,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'!comment': None,
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -383,7 +383,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'!disabled': None,
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -400,7 +400,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'!comment': 'foo',
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -416,7 +416,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'name': None,
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -432,7 +432,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'interface': 'eth0',
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -448,7 +448,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'address': '192.168.88.1',
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -466,7 +466,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'address': '192.168.88.1',
|
||||
}],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -498,7 +498,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -533,7 +533,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -556,7 +556,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -591,7 +591,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -656,7 +656,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -722,7 +722,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
],
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -785,7 +785,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -844,7 +844,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -903,7 +903,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -963,7 +963,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1017,7 +1017,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1077,7 +1077,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1128,7 +1128,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1164,7 +1164,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1212,7 +1212,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'ensure_order': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1285,7 +1285,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'ensure_order': True,
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1340,7 +1340,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1363,7 +1363,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
],
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1386,7 +1386,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1426,7 +1426,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
],
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1466,7 +1466,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
],
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1507,7 +1507,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1551,7 +1551,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
},
|
||||
],
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1587,7 +1587,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1621,7 +1621,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'handle_entries_content': 'remove',
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1676,7 +1676,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1729,7 +1729,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'ensure_order': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1785,7 +1785,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'ensure_order': True,
|
||||
'_ansible_check_mode': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1847,7 +1847,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'ensure_order': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1879,7 +1879,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'ensure_order': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1911,7 +1911,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_entries_content': 'remove',
|
||||
'ensure_order': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -1969,7 +1969,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'ensure_order': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
@ -2005,7 +2005,7 @@ class TestRouterosApiModifyModule(ModuleTestCase):
|
|||
'handle_absent_entries': 'remove',
|
||||
'ensure_order': True,
|
||||
})
|
||||
set_module_args(args)
|
||||
with set_module_args(args):
|
||||
self.module.main()
|
||||
|
||||
result = exc.exception.args[0]
|
||||
|
|
|
@ -47,54 +47,54 @@ class TestRouterosCommandModule(TestRouterosModule):
|
|||
self.run_commands.side_effect = load_from_file
|
||||
|
||||
def test_command_simple(self):
|
||||
set_module_args(dict(commands=['/system resource print']))
|
||||
with set_module_args(dict(commands=['/system resource print'])):
|
||||
result = self.execute_module(changed=True)
|
||||
self.assertEqual(len(result['stdout']), 1)
|
||||
self.assertTrue('platform: "MikroTik"' in result['stdout'][0])
|
||||
|
||||
def test_command_multiple(self):
|
||||
set_module_args(dict(commands=['/system resource print', '/system resource print']))
|
||||
with set_module_args(dict(commands=['/system resource print', '/system resource print'])):
|
||||
result = self.execute_module(changed=True)
|
||||
self.assertEqual(len(result['stdout']), 2)
|
||||
self.assertTrue('platform: "MikroTik"' in result['stdout'][0])
|
||||
|
||||
def test_command_wait_for(self):
|
||||
wait_for = 'result[0] contains "MikroTik"'
|
||||
set_module_args(dict(commands=['/system resource print'], wait_for=wait_for))
|
||||
with set_module_args(dict(commands=['/system resource print'], wait_for=wait_for)):
|
||||
self.execute_module(changed=True)
|
||||
|
||||
def test_command_wait_for_fails(self):
|
||||
wait_for = 'result[0] contains "test string"'
|
||||
set_module_args(dict(commands=['/system resource print'], wait_for=wait_for))
|
||||
with set_module_args(dict(commands=['/system resource print'], wait_for=wait_for)):
|
||||
self.execute_module(failed=True)
|
||||
self.assertEqual(self.run_commands.call_count, 10)
|
||||
|
||||
def test_command_retries(self):
|
||||
wait_for = 'result[0] contains "test string"'
|
||||
set_module_args(dict(commands=['/system resource print'], wait_for=wait_for, retries=2))
|
||||
with set_module_args(dict(commands=['/system resource print'], wait_for=wait_for, retries=2)):
|
||||
self.execute_module(failed=True)
|
||||
self.assertEqual(self.run_commands.call_count, 2)
|
||||
|
||||
def test_command_match_any(self):
|
||||
wait_for = ['result[0] contains "MikroTik"',
|
||||
'result[0] contains "test string"']
|
||||
set_module_args(dict(commands=['/system resource print'], wait_for=wait_for, match='any'))
|
||||
with set_module_args(dict(commands=['/system resource print'], wait_for=wait_for, match='any')):
|
||||
self.execute_module(changed=True)
|
||||
|
||||
def test_command_match_all(self):
|
||||
wait_for = ['result[0] contains "MikroTik"',
|
||||
'result[0] contains "RB1100"']
|
||||
set_module_args(dict(commands=['/system resource print'], wait_for=wait_for, match='all'))
|
||||
with set_module_args(dict(commands=['/system resource print'], wait_for=wait_for, match='all')):
|
||||
self.execute_module(changed=True)
|
||||
|
||||
def test_command_match_all_failure(self):
|
||||
wait_for = ['result[0] contains "MikroTik"',
|
||||
'result[0] contains "test string"']
|
||||
commands = ['/system resource print', '/system resource print']
|
||||
set_module_args(dict(commands=commands, wait_for=wait_for, match='all'))
|
||||
with set_module_args(dict(commands=commands, wait_for=wait_for, match='all')):
|
||||
self.execute_module(failed=True)
|
||||
|
||||
def test_command_wait_for_2(self):
|
||||
wait_for = 'result[0] contains "wireless"'
|
||||
set_module_args(dict(commands=['/system package print'], wait_for=wait_for))
|
||||
with set_module_args(dict(commands=['/system package print'], wait_for=wait_for)):
|
||||
self.execute_module(changed=True)
|
||||
|
|
|
@ -39,7 +39,7 @@ class TestRouterosFactsModule(TestRouterosModule):
|
|||
self.run_commands.side_effect = load_from_file
|
||||
|
||||
def test_facts_default(self):
|
||||
set_module_args(dict(gather_subset='default'))
|
||||
with set_module_args(dict(gather_subset='default')):
|
||||
result = self.execute_module()
|
||||
self.assertEqual(
|
||||
result['ansible_facts']['ansible_net_hostname'], 'MikroTik'
|
||||
|
@ -61,7 +61,7 @@ class TestRouterosFactsModule(TestRouterosModule):
|
|||
)
|
||||
|
||||
def test_facts_hardware(self):
|
||||
set_module_args(dict(gather_subset='hardware'))
|
||||
with set_module_args(dict(gather_subset='hardware')):
|
||||
result = self.execute_module()
|
||||
self.assertEqual(
|
||||
result['ansible_facts']['ansible_net_spacefree_mb'], 64921.6
|
||||
|
@ -77,7 +77,7 @@ class TestRouterosFactsModule(TestRouterosModule):
|
|||
)
|
||||
|
||||
def test_facts_config(self):
|
||||
set_module_args(dict(gather_subset='config'))
|
||||
with set_module_args(dict(gather_subset='config')):
|
||||
result = self.execute_module()
|
||||
self.assertIsInstance(
|
||||
result['ansible_facts']['ansible_net_config'], str
|
||||
|
@ -88,7 +88,7 @@ class TestRouterosFactsModule(TestRouterosModule):
|
|||
)
|
||||
|
||||
def test_facts_interfaces(self):
|
||||
set_module_args(dict(gather_subset='interfaces'))
|
||||
with set_module_args(dict(gather_subset='interfaces')):
|
||||
result = self.execute_module()
|
||||
self.assertIn(
|
||||
result['ansible_facts']['ansible_net_all_ipv4_addresses'][0], ['10.37.129.3', '10.37.0.0', '192.168.88.1']
|
||||
|
@ -118,7 +118,7 @@ class TestRouterosFactsModule(TestRouterosModule):
|
|||
self.assertEqual(result, None)
|
||||
|
||||
def test_facts_routing(self):
|
||||
set_module_args(dict(gather_subset='routing'))
|
||||
with set_module_args(dict(gather_subset='routing')):
|
||||
result = self.execute_module()
|
||||
self.assertIn(
|
||||
result['ansible_facts']['ansible_net_bgp_peer']['iBGP_BRAS.TYRMA']['name'], ['iBGP_BRAS.TYRMA']
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
from __future__ import absolute_import, division, print_function
|
||||
__metaclass__ = type
|
||||
|
||||
import contextlib as _contextlib
|
||||
import json
|
||||
|
||||
from ansible_collections.community.routeros.tests.unit.compat import unittest
|
||||
|
@ -13,14 +14,16 @@ from ansible.module_utils import basic
|
|||
from ansible.module_utils.common.text.converters import to_bytes
|
||||
|
||||
|
||||
@_contextlib.contextmanager
|
||||
def set_module_args(args):
|
||||
if '_ansible_remote_tmp' not in args:
|
||||
args['_ansible_remote_tmp'] = '/tmp'
|
||||
if '_ansible_keep_remote_files' not in args:
|
||||
args['_ansible_keep_remote_files'] = False
|
||||
|
||||
args = json.dumps({'ANSIBLE_MODULE_ARGS': args})
|
||||
basic._ANSIBLE_ARGS = to_bytes(args)
|
||||
serialized_args = to_bytes(json.dumps({'ANSIBLE_MODULE_ARGS': args}))
|
||||
with patch.object(basic, '_ANSIBLE_ARGS', serialized_args):
|
||||
yield
|
||||
|
||||
|
||||
class AnsibleExitJson(Exception):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue