1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
community.general/tests/unit/plugins/module_utils
Alexei Znamensky 3e9a6acff7
Modhelper improvements (#1480)
* Improvements in module_helper

- added `ModuleHelperException` to handle problems specific to ModuleHelper
- updated `module_fails_on_exception` for `ModuleHelperException`
- `StateMixin`: composed names of state methods are now calculated instead of fixed.
- `CmdMixin`: added `run_command_fixed_options` to pass some parameters on every call

* Improvements in module_helper

- Named deprecations: ability to declare a `dict` of deprecations indexed by names, allowing module maintainer to trigger them by those names, and also allowing the module user to acknowledge them in a similar way.
  - Adding `ack_named_deprecations` to module's `argument_spec` when they exist.
  - Providing doc fragment for `ack_named_deprecations`.
- Added method `__quit_module__` providing a hook for code that needs to be run when quitting the module.
- Created convenience classes combining `ModuleHelper`, `StateMixin`, `CmdMixin`.

* fixed validation

* fixed validation

* changelog fragment

* Apply suggestions from code review

Co-authored-by: Felix Fontein <felix@fontein.de>

* Improvement on Named Deprecations

Per the comments in PR, we want to expose a call to a ``deprecate`` method on the module code, so that pylint can properly perform its static analysis on deprecations.

This prompted a revamp of the named deprecation feature.

* Use .get() instead of [] for the param to ack named deprecations.

* Changes from suggestions in the PR

* removed named deprecations

* Update changelogs/fragments/1480-module-helper-improvements.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update plugins/module_utils/module_helper.py

Co-authored-by: Felix Fontein <felix@fontein.de>
2021-01-15 21:29:23 +01:00
..
cloud sanity: Add future boilerplate (#573) 2020-06-24 21:50:36 +02:00
hwc sanity: Add future boilerplate (#573) 2020-06-24 21:50:36 +02:00
identity Move modules and module_utils unit tests to correct place (#81) 2020-03-31 10:42:38 +02:00
net_tools Move modules and module_utils unit tests to correct place (#81) 2020-03-31 10:42:38 +02:00
remote_management sanity: Add future boilerplate (#573) 2020-06-24 21:50:36 +02:00
xenserver sanity: Add future boilerplate (#573) 2020-06-24 21:50:36 +02:00
__init__.py Move modules and module_utils unit tests to correct place (#81) 2020-03-31 10:42:38 +02:00
conftest.py sanity: Add future boilerplate (#573) 2020-06-24 21:50:36 +02:00
test_database.py sanity: Add future boilerplate (#573) 2020-06-24 21:50:36 +02:00
test_known_hosts.py Move modules and module_utils unit tests to correct place (#81) 2020-03-31 10:42:38 +02:00
test_module_helper.py Modhelper improvements (#1480) 2021-01-15 21:29:23 +01:00
test_saslprep.py Move unit test to right place. (#365) 2020-05-19 11:15:43 +02:00
test_utm_utils.py sanity: Add future boilerplate (#573) 2020-06-24 21:50:36 +02:00